]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Account for the fact that Xlib expects format == 32 to be a long, even on
[~andy/gtk] / ChangeLog.pre-2-4
1 Sun Feb 21 15:59:55 1999  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/MwmUtil.h gdk/gdkwindow.c: Account for the
4         fact that Xlib expects format == 32 to be a long,
5         even on 64-bit architectures.
6         
7         [ patch from George Lebl (jirka@5z.com) ]
8
9 Sun Feb 21 14:46:02 1999  Owen Taylor  <otaylor@redhat.com>
10
11         * gtk/gtkmain.c (gtk_init_check):
12           gdk/gdk.c     (gdk_init_check):
13
14         Added initialization variants that return a status
15         instead of dying.
16
17 Sun Feb 21 14:21:46 1999  Owen Taylor  <otaylor@redhat.com>
18
19         * gtk/gtkwindow.c: removed debugging statements
20         about embedded XID's. They could have been
21         moved to the new PLUGSOCKET debug key, but they weren't
22         really useful anyways.
23
24         * gdk/gdk.h: Added gdk_error_trap_push/pop to provide
25         a clean interface to the gdk_error_code functionality
26         of trapping X errors.
27
28         * gtk/gtkplug.c gtk/gtksocket.c: Add error
29         traps around accesses to foreign windows.
30
31 Sun Feb 21 15:37:25 1999  Tim Janik  <timj@gtk.org>
32
33         * gtk/gtkwindow.h: marked gtk_window_set_focus, gtk_window_set_default,
34         gtk_window_remove_embedded_xid and gtk_window_add_embedded_xid as
35         internal functions.
36
37 Sun Feb 21 11:39:06 1999  Owen Taylor  <otaylor@redhat.com>
38
39         * gtk/gtktext.c (find_line_containing_point): Revise
40         algorithm for scrolling backwards. This one might actually 
41         work with one-line-high Text widgets.
42
43         * gtk/gtkmain.c: Removed a misplaced comment, a few 
44         formatting cleanups.
45
46 Sat Feb 20 20:59:25 1999  Tim Janik  <timj@gtk.org>
47
48         * gtk/gtkwindow.c: hm, set_modal doesn't really work with random
49         gtk_grab_add/gtk_grab_remove calls. either the window user uses
50         the set_modal interface or he places grab_add/grab_remove on his own.
51         (gtk_window_set_modal): enforce modality state either way.
52         (gtk_window_hide): revert previous change.
53
54 Sat Feb 20 20:04:48 1999  Tim Janik  <timj@gtk.org>
55
56         * gtk/gtkcalendar.c (gtk_calendar_button_press): increment years and
57         months by two not three on double clicks, patch provided by Nick Lamb
58         <njl98r@ecs.soton.ac.uk>.
59
60 Sat Feb 20 19:44:36 1999  Tim Janik  <timj@gtk.org>
61
62         * gtk/gtkwindow.c: added ::modal argument.
63         (gtk_window_hide): reset window->modal from the current grab state
64         (this is only relevant when grab_add/grab_remove is called on the
65         window by bypassing gtk_window_set_modal).
66         (gtk_window_remove_embedded_xid): 
67         (gtk_window_add_embedded_xid): don't use g_print() but g_message()
68         within #ifdef G_ENABLE_DEBUG. when the hack got these functions
69         added (ChangeLog doesn't know them)?
70
71 Fri Feb 19 14:59:45 EST 1999 Sergey Panov  <sipan@mit.edu>
72
73         * gtk/gtkrc,gtk/gtkrc.ja, gtk/gtkrc.ko,
74         gtk/gtkrc.ru: Collecttion of the locale dependent
75         gtkrc files and
76
77         * gtk/Makefile.am: patched to get that collection
78         installed in to $(prefix)/etc/gtk/
79
80 Fri Feb 19 17:52:28 1999  Tim Janik  <timj@gtk.org>
81
82         * gtk/gtksignal.h: grouped function names into application-level,
83         widget-level and non-public.
84
85         * gtk/gtktreeitem.c (gtk_tree_item_size_request): use auto
86         pix_requisition instead of item->pixmaps_box->requisition.
87
88 Thu Feb 18 17:26:09 1999  Owen Taylor  <otaylor@redhat.com>
89
90         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): 
91          When queueing clears relative to widget->window,
92          actually store widget->window so we know that
93          the coordinates are window-relative.
94
95 Thu Feb 18 11:46:57 1999  Owen Taylor  <otaylor@redhat.com>
96
97         * gtk.m4: Fix glib_config_args gtk_config_args
98           confusion. (pointed out by
99           Roland Dreier <droland@mail.math.okstate.edu>)
100
101         * gtk/gtksocket.c gtk/gtkmain.c gtk/gtkdebug.h
102           (gtk_socket_filter_func): Move the plug-socket
103           debugging code to a new "plugsocket" debug keys
104           from the previous hardcoded DPRINTF.
105
106 Thu Feb 18 00:54:46 1999  Tim Janik  <timj@gtk.org>
107
108         * gtk/gtkclist.c: added widget arg ::titles_active.
109
110 Thu Feb 18 00:27:46 1999  Tim Janik  <timj@gtk.org>
111
112         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): only translate widget
113         relative coordinates to window relative if the widget is not a toplevel
114         (i.e. it has ->parent != NULL), otherwise the area size gets screwed up
115         for toplevels.
116
117 Tue Feb 16 14:25:44 CST 1999 Shawn T. Amundson <amundson@gtk.org>
118
119         * INSTALL
120           README
121           configure.in
122           gtk+.spec
123           docs/gtk-config.1: version = 1.1.16
124
125         * Makefile.am: removed colorsel example since it
126           doesn't actually exist.
127
128         * Released GTK+ 1.1.16
129
130 Mon Feb 15 23:55:27 1999  Owen Taylor  <otaylor@redhat.com>
131
132         * gtk/testgtk.c (create_text): Use a ScrolledWindow
133          test how Text widgets work within ScrolledWindow.
134          (POLICY_AUTOMATIC drew very badly, so it uses
135           POLICY_ALWAYS for the vscrollbar)
136
137         * gtk/gtktext.c (gtk_text_unrealize): Free the cache
138          in the unrealize handler. Some code in gtktext.c
139          assumes that if text->line_start_cache is non-NULL,
140          the widget is realized. We'll recompute it again
141          anyways if we later re-realize.
142
143 Fri Feb 12 15:47:20 1999  Owen Taylor  <otaylor@redhat.com>
144
145         * gtk/gtkcalender.c gtk/gtkentry.c gtk/gtkhandlebox.c
146           gtk/gtknotebook.c gtk/gtktext.c  gtk/gtkviewport.c 
147           gtk/gtkwidget.c: 
148
149          When setting styles, remove unecessary explicits draws 
150          and clears.
151
152         * gtk/gtkrange.c: Ugly fix so the steps get the
153          correct background.
154          
155 Mon Feb 15 22:55:50 1999  Owen Taylor  <otaylor@redhat.com>
156
157         * NEWS: Updated for 1.1.16.
158
159 Mon Feb 15 19:36:57 1999  Owen Taylor  <otaylor@redhat.com>
160
161         * gtk/gtklabel.c (gtk_label_finalize): Free
162          label->label_wc.
163
164 Mon Feb 15 18:02:22 1999  Owen Taylor  <otaylor@redhat.com>
165
166         * gtk/gtkdnd.c: Some coding style fixups.
167
168         * gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set a flag
169          so that we destroy the icon window that we created
170          when the drag ends.
171
172 Thu Feb 11 18:43:12 1999  Owen Taylor  <otaylor@redhat.com>
173
174         * gtk/gtkbindings.c (gtk_binding_set_add_path): When
175           we find a match, stop searching. (Because we
176           assume pspec != NULL in the search).
177
178 Wed Feb 10 01:18:22 1999  Owen Taylor  <otaylor@redhat.com>
179
180         * gtk/gtkhandlebox.c (gtk_handle_box_draw_ghost): Fix
181           up painting of "ghosts".
182
183         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
184           Add double-click reattachment.
185
186         * gtk/gtkhandlebox.c: Grab on widget->window,
187           not on handlebox->bin_window. This means we don't 
188           have to worry about ungrabbing while reparenting.
189
190           Don't make a GTK+ grab - that wasn't necessary.
191
192         * gtk/gtkhandlebox.c: Only compute the root -> desk
193           offset once, when starting the drag, instead
194           of continuously. This should solve the *Bad Window*
195           errors that were occurring because of race conditions
196           with the WM.
197           
198         * gtk/gtkhandlebox.c: Completely reworked the 
199           the logic of reattachment. We introduce the 
200           concept of the "snap edge", which is an edge
201           that needs to be aligned for reattachmed.
202           We set a reasonable default from 
203           handlebox->handle_position, but an application
204           might want to change this in some circumstances.
205
206         * gtk/gtkhandlebox.[ch]: Add settors:
207             gtk_handle_box_set_handle_position  ();
208             gtk_handle_box_set_snap_edge        ();
209
210 Mon Feb 15 11:13:01 1999  Owen Taylor  <otaylor@redhat.com>
211
212         * gtk/gtkwindow.c (gtk_window_set_focus): 
213           gtk/gtkwidget.c (gtk_widget_real_grab_focus):
214
215         If the focus widget is the same, but does not currently
216         have the focus, call gtk_window_set_focus(). This is needed
217         so that click focusing with GtkPlug works correctly.
218
219 Mon Feb 15 07:45:28 1999  Tim Janik  <timj@gtk.org>
220
221         * configure.in (--enable-debug): default to yes for development trees.
222
223 Fri Feb 12 00:08:01 1999  Lars Hamann  <lars@gtk.org>
224
225         * gtk/gtklist.c (gtk_list_remove_items_internal): don't autoselect
226         focus_row in case of GTK_SELECTION_EXTENDED
227
228         * gtk/testgtk.c : few changes in list example.
229
230         * gtk/gtklistitem.c (gtk_list_item_class_init): 
231         * gtk/gtkctree.c (gtk_ctree_class_init): 
232         * gtk/gtkclist.c (gtk_clist_class_init): 
233         fixed indentation, removed unused key bindings
234         
235 Wed Feb 10 01:02:46 1999  Lars Hamann  <lars@gtk.org>
236
237         * gtk/gtkclist.c (real_remove_row): 
238         * gtk/gtkctree.c (gtk_ctree_remove_node): don't autoselect focus_row
239         in case of GTK_SELECTION_EXTENDED
240
241         * gtk/testgtk.c : few changes in clist/ctree examples.
242
243 Wed Feb 10 15:49:16 1999  Tim Janik  <timj@gtk.org>
244
245         * gtk/gtkwindow.c (gtk_window_class_init):
246         * gtk/gtkctree.c (gtk_ctree_class_init): applied patch from Paolo
247         Molaro to fix GTK_TYPE_POINTER args of ::tree_collapse and
248         ::set_focus signals.
249
250         * docs/gtk_tut.sgml: s/menufactory/itemfactory, minor fixups
251         to the item factory example.
252
253 Wed Feb 10 11:05:53 1999  Owen Taylor  <otaylor@redhat.com>
254
255         * gtk/gtkdnd.c: Reverted coding style "fixups"
256
257 Wed Feb 10 10:43:50 1999  Owen Taylor  <otaylor@redhat.com>
258
259         * gdk/gdkwindow.c (gdk_window_set_icon, gdk_window_set_group):
260          Supplement the existing WMNormalHints, don't 
261          overwrite them.
262
263 Wed Feb 10 08:35:36 1999  Tim Janik  <timj@gtk.org>
264
265         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar): asure that
266         ->value_buf always points to an allocated area.
267         (gtk_color_selection_drag_end): new function hooked up to drag_end to
268         destroy the drag_window.
269
270         * gtk/gtkdnd.c: some coding style fixups.
271
272 Wed Feb 10 06:47:17 1999  Tim Janik  <timj@gtk.org>
273
274         * gdk/gdkwindow.c: various indentation fixes.
275
276         * gdk/gdkevents.c: coding style fixups.
277         NULL initialize event_func, event_notify and event_chunk.
278         (expose_predicate): made this function static.
279         (gdk_event_handler_set): perform destroy notification even if no
280         event_func is set.
281
282         * gdk/gdkrectangle.c (gdk_rectangle_union): added g_return_if_fail
283         statements.
284
285 Sun Feb  7 19:49:21 1999  Owen Taylor  <otaylor@redhat.com>
286
287         * gtk/gtkwindow.c (gtk_window_move_resize): Fixed some
288           bugs with set_default_size.
289
290 Sat Feb  6 13:23:51 1999  Owen Taylor  <otaylor@redhat.com>
291
292         * docs/Changes-1.2.txt: Added information about
293          the change to gtk_widget_size_request().
294
295         * gtk/gtkentry.c: Call gtk_widget_get_child_requisition
296          explicitely since we differentiate between the usize
297          set by the user and what we got. (Ugh)
298
299         * gtk/gtkwidget.[ch] (gtk_widget_get_child_requisition):
300          New function to return the effective size of a widget
301          as it looks to its parent.
302
303         * gtk/gtkwidget.c (gtk_widget_size_request): Leave
304          widget->requisition set to exactly what the widget
305          asked for, and then make a copy of that into
306          the requisition argument. Allow a NULL requisition
307          argument, and, if G_ENABLE_DEBUG, warn if
308          requisition == &widget->requisition.
309
310         * gtkalignment.c gtkaspectframe.c gtkbutton.c gtkclist.c
311           gtkcontainer.c gtkentry.c gtkeventbox.c gtkfixed.c
312           gtkframe.c gtkhandlebox.c gtkhbox.c gtkhpaned.c 
313           gtklayout.c gtklist.c gtklistitem.c gtkmenu.c
314           gtkmenubar.c gtkmenuitem.c gtknotebook.c
315           gtkoptionmenu.c gtkpacker.c gtkscrolledwindow.c
316           gtktable.c gtktoolbar.c gtktree.c gtktreeitem.c
317           gtkvbox.c gtkviewport.c gtkvpaned.c gtkwindow.c
318
319          Avoid calling gtk_widget_size_request with
320          requisition == widget->requisition; use 
321          gtk_widget_get_child_requisition to get the
322          size of children.
323
324 Tue Feb  9 19:49:46 1999  Owen Taylor  <otaylor@redhat.com>
325
326         * configure.in (LDFLAGS): Removed extraneous line
327           that crept in in previous commit.
328
329 Tue Feb  9 19:39:32 1999  Owen Taylor  <otaylor@redhat.com>
330
331         * gtk/gtkentry.[ch] gtk/gtkeditable.h: Moved
332           entry->visible into editable class. (Leave it
333           behind deprecated for compatibility)
334          
335         * gtk/gtkeditable.c: If not editable->visible,
336           return *'s for clipboard and selection.
337
338 Tue Feb  9 19:11:43 1999  Owen Taylor  <otaylor@redhat.com>
339
340         * gtk/gtkstyle.c (gtk_style_new): If we can't find
341           helvetica, fall back to "fixed". If we can't
342           find "fixed", exit cleanly.
343
344 Tue Feb  9 16:03:44 1999  Owen Taylor  <otaylor@redhat.com>
345
346         * acconfig.h configure.in: Rename 
347           XIM_INST_IS_MISSING_OR_STRANGE to USE_X11R6_XIM
348
349         * Conditionalize destroy callbacks with USE_X11R6_XIM.
350
351 Tue Feb  9 15:35:13 1999  Owen Taylor  <otaylor@redhat.com>
352
353         * gtk/gtklabel.c (gtk_label_style_set): Added
354           a style_set() function so that word lengths get
355           recomputed on style change.
356
357 Mon Feb  8 21:00:20 1999  Lars Hamann  <lars@gtk.org>
358
359         * gtk/gtkclist.c (CLIST_OPTIMUM_SIZE): changed to 64
360         (gtk_clist_draw_focus) (hadjustment_value_changed) (draw_row):
361         few fixes to respect GTK_CAN_FOCUS flag.
362
363         * gtk/gtkctree.c (draw_row): 
364         respect GTK_CAN_FOCUS flag.
365
366 Mon Feb  8 19:22:27 GMT 1999 Tony Gale  <gale@gtk.org>
367
368         * example/colorsel/*: missing from the CVS for some reason
369
370 Mon Feb  8 13:08:51 GMT 1999 Tony Gale  <gale@gtk.org>
371
372         * examples/Makefile: add SpinButton example
373
374 Mon Feb  8 12:50:06 GMT 1999 Tony Gale  <gale@gtk.org>
375
376         * docs/gtk_tut.sgml:
377           - Heavily edited GtkCombo section initially from
378             Christopher T. Lansdown <lansdoct@screech.cs.alfred.edu>.
379
380           - Cleanups and some glib stuff from
381             David Wheeler <wheeler@ida.org>
382
383         * Makefile.am: update to include the latest Tutorial examples.
384
385 Sat Feb  6 11:20:16 1999  Owen Taylor  <otaylor@redhat.com>
386
387         * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the
388         entire draw_data_list back to the free list, not
389         just the last element.
390
391 Sat Feb  6 00:21:14 1999  Lars Hamann  <lars@gtk.org>
392
393         * gtk/gtkctree.c (draw_row): 
394         * gtk/gtkclist.c (draw_row) (new_column_width) (scroll_horizontal)
395         (title_focus): search last visible column instead of
396         using clist->columns.
397
398 Fri Feb  5 13:23:50 1999  Owen Taylor  <otaylor@redhat.com>
399
400         * gdk/gdkwindow.c (gdk_window_move_resize): Adjust
401         saved positions of children when resizing a 
402         guffaw_gravity = TRUE window.
403
404         * gtk/gtkdnd.c (gtk_drag_highlight): Rework the
405          highlighting so that it is done in callbacks for
406          draw and expose. This should solve problems with
407          multiple highlights for the same GdkWindow.
408
409         * gtk/gtkdnd.c (gtk_drag_highlight): Fix bug where
410         the highlight was being drawn with an incorrect
411         width/height for !NO_WINDOW widgets.
412
413 Tue Feb  2 11:06:02 1999  Owen Taylor  <otaylor@redhat.com>
414
415         * gtk/gtkrange.c (gtk_range_style_set): Fixes
416          to account for the changed structure of the windows
417          of range widgets.
418
419 1999-02-05  Owen Taylor  <otaylor@gtk.org>
420
421         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): 
422         Don't assume any more that the gtkwidget.c code
423         will queue a redraw on us during a size_allocate -
424         queue clear/draws as appropriate for our groove.
425
426 1999-02-04  Christopher Blizzard  <blizzard@redhat.com>
427
428         * gtk+.spec (Packager): Change my email address.
429
430 Thu Feb  4 05:42:34 CST 1999 Shawn T. Amundson <amundson@gtk.org>
431
432         * INSTALL
433           NEWS
434           README
435           configure.in
436           gtk+.spec
437           docs/gtk-config.1: version=1.1.15
438
439         * Makefile.am: example files where incorrect for
440           menu directory.
441
442         * Released GTK+ 1.1.15
443
444 Wed Feb  3 17:29:57 PST 1999 Manish Singh <yosh@gimp.org>
445
446         * gtk/gtkclist.h: spelling fix in comment from
447         joey@kuolema.Infodrom.North.DE (Martin Schulze)
448
449 Tue Feb  2 12:39:42 1999  Owen Taylor  <otaylor@redhat.com>
450
451         * gtk/gtkdnd.c: Make sure we set the icon window position 
452          before it is shown to prevent annoying flicking to 0,0.
453          Make it consistent that info->cur_x/y do not include
454          info->hot_x/y displacement.
455
456 Tue Feb  2 08:59:16 GMT 1999 Tony Gale  <gale@gtk.org>
457
458         * docs/gtk_tut.sgml: new sections on Layout and
459           SpinButton [nice widget]
460
461         * examples/spinbutton/*: example code
462
463 Mon Feb  1 19:25:54 1999  Owen Taylor  <otaylor@redhat.com>
464
465         * docs/gtk-config.txt (testinput_SOURCES): Put
466         in some information about 'gtk-config --libs gthread'.
467
468         * docs/Changes-1.2.txt: Updated section on threads.
469
470 Tue Feb  2 00:28:44 1999  Lars Hamann  <lars@gtk.org>
471
472         * gtk/gtkctree.c (gtk_ctree_insert_node): in case of
473         GTK_SELECTION_BROWSE select first inserted row.
474         (resync_selection): select rows in correct order.
475
476         * gtk/gtkclist.c (real_insert_row): in case of GTK_SELECTION_BROWSE
477         select first inserted row.
478         (resync_selection): select rows in correct order.
479
480         * gtk/gtklist.c (gtk_list_end_selection): select rows in correct order.
481
482 Mon Feb  1 16:47:55 1999  Owen Taylor  <otaylor@redhat.com>
483
484         * gtk.m4: Pass gthread on to gtk-config.
485
486         * configure.in gtk-config.in: Support gthread flag to 
487           add thread cflags/libraries into the output of 
488           gtk-config.
489
490 Mon Feb  1 15:14:56 1999  Owen Taylor  <otaylor@redhat.com>
491
492         * gtk/gtkoptionmenu.c (gtk_option_menu_size_allocate): 
493          Fixed problem with uints resulting in huge child
494          allocations.
495
496 Mon Feb  1 14:54:28 1999  Owen Taylor  <otaylor@redhat.com>
497
498         * gtk/gtklabel.c (gtk_label_expose): Cast uints
499          to ints in geometry calculations. This should
500          prevent FP exceptions on FreeBSD when quantities
501          become negative. [ Actually, this is probably
502          a workaround with a gcc bug with handling of
503          bitfields, according to Ben Jackson <ben@ben.com> ]
504
505 Mon Feb  1 13:35:14 GMT 1999 Tony Gale  <gale@gtk.org>
506
507         * examples/Makefile: update to new examples
508
509         * examples/menu/itemfactory.c: I must have forgotten to
510           'cvs add' this file
511
512 Mon Feb  1 09:16:03 GMT 1999 Tony Gale  <gale@gtk.org>
513
514         * docs/gtk_tut.sgml:
515           - Complete documentation of Label widget API
516           - New sections for the following:
517                 * Arrows
518                 * Alignment
519                 * Button Boxes
520                 * Viewports
521
522         * examples/arrow/*, examples/buttonbox/*, examples/label/*
523           - New code examples
524
525 Fri Jan 29 09:44:37 GMT 1999 Tony Gale  <gale@gtk.org>
526
527         * examples/fixed/*, examples/frame/*
528           - Examples from the Tutorial
529
530 Fri Jan 29 09:18:41 GMT 1999 Tony Gale  <gale@gtk.org>
531
532         * docs/gtk_tut.sgml:
533           - New sections on the Fixed and Frame containers
534           - Rearrange the Containers section so the easier ones
535             are first
536           - Move the List widget section to an appendix
537
538 Thu Jan 28 12:14:12 GMT 1999 Tony Gale  <gale@gtk.org>
539
540         * docs/package_tutorial.sh: script to convert and
541           package up the tutorial - stick it here so I don't lose
542           it when I accidentally delete it again.
543  
544 Thu Jan 28 10:16:28 GMT 1999 Tony Gale  <gale@gtk.org>
545
546         * docs/gtk_tut.sgml:
547           - Replace all uses of deprecated functions.
548           - Replace menufactory example with itemfactory example
549             from Nick Scott <mendigo@geocities.com>
550           - Minor bug fixes in the examples.
551
552 1999-01-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
553
554         * gdk/gdkim.c:
555         s/XIM_INSTANTIATE_IS_MISSING_OR_STRANGE/XIM_INST_IS_MISSING_OR_STRANGE/
556
557 Thu Jan 28 01:57:06 CST 1999 Shawn T. Amundson <amundson@gtk.org>
558
559         * INSTALL
560           NEWS
561           README
562           configure.in
563           gtk+.spec
564           docs/gtk-config.1: version=1.1.14
565
566         * Released GTK+ 1.1.14
567
568 Thu Jan 28 01:34:29 1999  Owen Taylor  <otaylor@redhat.com>
569
570         * gtkfontsel.c gtkcolorsel.c: When translating
571         N_() strings, use _(), not gettext(), since we
572         really need to call dgettext().
573
574 Wed Jan 27 20:51:25 PST 1999 Manish Singh <yosh@gimp.org>
575
576         * acinclude.m4: Xsed isn't valid here, don't use it
577
578         * ltmain.sh
579         * ltconfig: better file magic regexp for Linux libs
580
581 Wed Jan 27 23:05:55 1999  Owen Taylor  <otaylor@redhat.com>
582
583         * gtk/gtklayout.[ch] (gtk_layout_realize): Move 
584         gravity_works back to a static global variable,
585         since it is a global constant, and this way we
586         keep structure sizes uniform.
587
588 Wed Jan 27 22:59:07 1999  Owen Taylor  <otaylor@redhat.com>
589
590         * gtk/Makefile.am (static_SOURCES): Move gtkintl.h
591         from $source_headers to $static_sources since
592         it should not be installed.
593
594 Wed Jan 27 22:51:23 1999  Owen Taylor  <otaylor@redhat.com>
595
596         * gdk/gdkevents.c (expose_predicate): Allow exposure
597          compression across GravityNotify events to improve
598          the appearance of a GTK+ window unshading.
599
600 Wed Jan 27 21:56:07 1999  Owen Taylor  <otaylor@redhat.com>
601
602         [ patch from Takashi Matsuda <matsu@arch.comp.kyutech.ac.jp> ]
603         
604         * acconfig.h configure.in gdk/gdkim.c: Add configure 
605         flag for disabling XRegisterIMInstantiateCallback(), default
606         it to off for Solaris. Always try to open the
607         input method immediately, and only if that fails,
608         register than instantiate callback.
609
610         * gtk/gtkentry.c: Some tweaks to make sure that we
611         only get and set the IC attributes when appropriate.
612         
613 Wed Jan 27 20:08:54 1999  Owen Taylor  <otaylor@redhat.com>
614
615         * gtk/gtkfilesel.c (open_user_dir): Patch from
616         Sebastian Wilhelmi  <wilhelmi@ira.uka.de> to
617         use g_get_home_dir() instead of calling getpwuid() 
618         ourselves.
619
620 Wed Jan 27 20:06:06 1999  Owen Taylor  <otaylor@redhat.com>
621
622         * gtk/gtklayout.c (gtk_layout_adjustment_changed):
623         Removed some g_print()'s
624
625 Wed Jan 27 18:57:57 1999  Owen Taylor  <otaylor@redhat.com>
626
627         * gdk/gdk.h gdk/gdkdnd.c: Change signatures for 
628         gdk_drag_begin() and gdk_drag_motion() so that the set 
629         of possible actions is passed on each motion, not just at
630         the beginning of the drag. We do this so that
631         we can restrict the set of possible drag events
632         when the user presses a modifier key during a 
633         drag.
634
635         * gdk/gdkdnd.c: Send a motif Operation-changed
636         message when the set of possible actions change,
637         as well as when the suggested action change.
638
639         * gdk/gdkdnd.c: Change the XdndActionList whenever
640         the set of actions change.
641
642         * gdk/gdkdnd.c: Add a filter to catch changes to
643         the XdndActionList property for the source widget.
644
645         * gtk/gtkdnd.c: Change the set of possible actions
646         when the user presses Control, Shift, or Control-Shift,
647         to only include the corresponding action.
648         
649         * gtk/gtkdnd.c (gtk_drag_button_release_cb):
650         Disconnect button signals before we possibly
651         free info structure.
652
653 Wed Jan 27 18:40:50 1999  Owen Taylor  <otaylor@redhat.com>
654
655         * gtk/gtkmain.c (gtk_main_do_event): Hack scrollwheel
656         support into the eventloop, by treating button 4-5
657         presses on scrolled windows and scrollbars specially. 
658         Put it here to keep the ugliness small and confined.
659         (We need to intercept the normal propagation in any case
660         to have this work reliably right now, since some
661         subwidgets will trap the button presses)
662         
663         * gtk/gtkviewport.c (gtk_viewport_realize): Select for 
664         BUTTON_PRESS to support the above hack.
665         
666 Tue Jan 26 14:02:50 1999  Owen Taylor  <otaylor@redhat.com>
667
668         * gdk/gdkwindow.c (gdk_window_show/hide): Remove TimJ's
669         checks for already being mapped or hidden. See
670         the ICCCM's section on state changes for why this
671         is a bad idea.
672
673 Wed Jan 27 17:05:40 1999  Owen Taylor  <otaylor@redhat.com>
674
675         * Separate out GLIB_LIBS and GLIB_DEPLIBS. This
676         may fix the --with-glib option. GLIB_LIBS are
677         the libs to link example programs against, while
678         GLIB_DEPLIBS are dependency libraries.
679
680 Wed Jan 20 11:19:00 1999  Owen Taylor  <otaylor@redhat.com>
681
682         * gtk/gtklabel.c: Use floor() instead of truncating
683         to integer values so we get translation invariance.
684
685         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
686         and lower values for adjustments in size_allocate().
687
688         * gdk/gdkwindow.c gdk/gdk.h gdk/gdkprivate.h: New
689         function gdk_window_set_static_gravities() to set
690         up a window for guffaw scrolling.
691         
692         * gdk/gdkwindow.c (gdk_window_internal_destroy): Set flags
693         indicating destroyed state before cleanup.
694
695         * gtk/gtkprivate.h gtk/gtkwidget.c: Add a new
696         private flag IS_OFFSCREEN. If set, this indicates
697         to GTK+ that the widget is not to be considered
698         viewable regardless of its map state. Queued draws
699         on offscreen widgets are suppressed.
700
701         Added new function static gtk_widget_is_offscreen() to
702         check this flag on a widget and its ancestors.
703
704         * gtk/gtklayout.[ch]: Major revisions.
705
706         - Use gdk_window_set_static_gravities to set static gravity 
707         on all child windows, and thus avoid having to create a window
708         for NO_WINDOW children.
709
710         - Adjust allocations of children as we scroll them
711         so queued draws work correctly.
712
713         - Don't allocate our children directly in a put()
714         or move(); just queue a resize() like every other
715         widget.
716
717         * gtk/testgtk.c: Make the arrows on the scrollbars
718         work, create a larger and more demanding test.
719         
720 Wed Jan 27 09:19:07 1999  Tim Janik  <timj@gtk.org>
721
722         * gdk/gdkcolor.c (gdk_colormap_unref): assert ref_count>0.
723
724 Mon Jan 25 20:05:22 1999  Owen Taylor  <otaylor@redhat.com>
725
726         * gtk/gtkwidget.c (gtk_widget_set_{visual,colormap}): 
727         New functions to set the colormap or visual
728         of an existing widget. These functions should not
729         be called on a widget that has previosly been
730         realized.
731
732         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init):
733         Set the visual and colormap on the toplevel dialog,
734         then push them for the child widgets. As opposed
735         to push/pop in _new(), this way, things will work
736         properly with gtk_widget_new().
737         
738 Mon Jan 25 19:41:56 1999  Owen Taylor  <otaylor@redhat.com>
739
740         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Queue
741         a redraw on the tab area when a tab changes size.
742         (Includes improvements from Lars Hamann)
743
744 Mon Jan 25 19:00:13 1999  Owen Taylor  <otaylor@redhat.com>
745
746         * gtk/gtkcolorsel.c (gtk_color_selection_value_events): 
747          Back out the last solution to updating problem. And
748          try a different one that is less dependent on
749          the state of the widget. Just redraw the value_marker
750          when it gets mapped. Somebody needs to analyze
751          this widget more carefully and figure out when
752          it should be setting the contents of the previews
753          with more care.
754
755 Mon Jan 25 17:48:03 1999  Owen Taylor  <otaylor@redhat.com>
756
757         * gtk/gtkcolorsel.c: Removed some GTK_WIDGET_DRAWABLE()
758         tests - we need to update the value bar's contents
759         even when the widget is unmapped.
760
761 Mon Jan 25 15:47:46 1999  Owen Taylor  <otaylor@redhat.com>
762
763         * acinclude.m4 (ac_result): Don't define ENABLE_NLS
764          unless we have a working NLS. (This should keep
765          libintl.h from being included when it doesn't
766          exist).
767
768 Mon Jan 25 11:05:10 1999  George Lebl  <jirka@5z.com>
769
770         * gtk/gtkbutton.c: set RECEIVES_DEFAULT on init, and a
771           button press on the widget doesn't grab default anymore
772
773         * gtk/gtkcheckbutton.c,gtk/gtkoptionmenu.c,gtk/gtkradiobutton.c:
774           unset RECEIVES_DEFAULT on init
775
776         * gtk/gtkwidget.[ch]: add a RECEIVES_DEFAULT flag to widget
777           flags
778
779         * gtk/gtkwindow.c,gtk/gtkplug.c: on pressing <enter>, activate
780           the focused widget if it is a RECEIVES_DEFAULT widget,
781           no matter what the current default_widget is
782
783         * gtk/gtkwindow.c: on focus change, migrate the HAS_DEFAULT
784           flag to CAN_DEFAULT widgets if they RECEIVE_DEFAULT as well
785           or migrate it back to the default_widget if the focus widget
786           doesn't "RECEIVE_DEFAULT"
787
788 Sun Jan 24 18:09:24 1999  Owen Taylor  <otaylor@redhat.com>
789
790         * gdk/gdkdnd.c (motif_read_initiator_info): Byteswap
791         the MotifInitiatorInfo structure _before_ using it.
792
793 Sun Jan 24 12:17:39 1999  Owen Taylor  <otaylor@redhat.com>
794
795         * gdk/gdkcolor.c (gdk_colormap_real_destroy): Fix 
796          reversed assertion. 
797          (Pointed out by Austin Donnelly <austin@greenend.org.uk>)
798
799         * gtk/gtkruler.c (gtk_ruler_expose): Remove unecessary
800          and harmful call to gtk_paint_box(). We are going
801          to paint onto the backing store later anyways.
802
803 Sat Jan 23 11:15:39 1999  Owen Taylor  <otaylor@gtk.org>
804
805         * gdk/gdkdnd.c (gdk_window_register_dnd): X expects
806          longs, not uint32 for XChangeProperty, when 
807          format == 32.
808
809         * gdk/gdkdnd.c (motif_read_initiator_info): Byte-swap
810          the MotifInitiatorInfo structure if necessary.
811
812         * gdk/gdkdnd.c: When extracting and constructing
813          Motif DND messages, don't use data.s[], data.l[]
814          since on 64bit architectures, these won't necessarily
815          be in the same place with data.b[]. 
816
817         * gtk/testdnd.c (target_drag_drop): Return TRUE for
818          drag_drop within the drop zone.
819  
820         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Only send
821          a XmTRANSFER_FAILURE if no drop site is found, not
822          on every drop!
823
824 Fri Jan 22 19:22:39 1999  Owen Taylor  <otaylor@redhat.com>
825
826         * gtk/gtkeditable.c: Add flags field to 
827          GtkTargetEntry table.
828         
829         * gdk/gdkwindow.c (gdk_window_is_viewable): Treat foreign
830          windows as always viewable, since we can't track their
831          map-state reliably without speed problems. (Fixes
832          problem where updating didn't occur properly within
833          GtkPlug)
834
835 Sat Jan 23 13:41:00 1999  Jeff Garzik  <jgarzik@pobox.com>
836
837         * gtk/gtkctree.c
838         (tree_delete): Don't search selection list twice.
839         (real_select_row): Remove extra ';', add default for clarity.
840
841 Sat Jan 23 01:44:43 1999  Lars Hamann  <lars@gtk.org>
842
843         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
844         (gtk_spin_button_get_value_as_float): removed extra
845         gtk_spin_button_update calls again.
846         * gtk/gtkclist.c (gtk_clist_unmap): unblock dnd signal handler if
847         neccessary
848         * gtk/gtknotebook.c (gtk_notebook_button_press): grab_focus before
849         switch_page
850         (gtk_notebook_set_shape): don't use cur_page if it's NULL.
851
852 Fri Jan 22 12:20:54 1999  Jeff Garzik  <jgarzik@pobox.com>
853
854         * gtk/gtktooltips.c:
855         Fix recent change to match existing coding style.
856
857 Fri Jan 22 07:33:44 1999  Tim Janik  <timj@gtk.org>
858
859         * gtk/gtkvscale.c (gtk_vscale_pos_trough): take value_spacing into
860         account for GTK_POS_LEFT.
861
862         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): use
863         gtk_toggle_button_set_active () to set the new state.
864         (gtk_radio_button_new): only _set_group if group != NULL.
865         (gtk_radio_button_clicked): reference the widget.
866         (gtk_radio_button_init): make radio buttons active upon
867         startup.
868
869 Thu Jan 21 17:13:12 1999  Jeff Garzik  <jgarzik@pobox.com>
870
871         * gtk/gtkselection.c:
872         (gtk_selection_property_notify): Check args for NULL.
873         (gtk_selection_default_handler):
874         Replace manual list count with call to g_list_length.
875         Remove signedness of temp var 'count' to agree with usage.
876         Slight spacing adjustment for readability.
877
878         * gtk/gtkbox.c, gtk/gtklayout.c, gtk/gtkselection.c:
879         Init a few ptrs to NULL, to quiet warnings.
880
881 Thu Jan 21 16:03:02 1999  Owen Taylor  <otaylor@redhat.com>
882
883         * gtk/gtkbutton.c (gtk_button_expose): Code cleanup.
884
885         * gtk/gtktreeitem.c: Add a paint routine, fix up bugs
886         in drawing where if the expose area was contained
887         completely in the right side of the tree the background
888         wasn't redraw, etc.
889
890         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fix a bug
891         in clipping draw regions while propagating them
892         upwards.
893
894 Thu Jan 21 12:20:51 1999  Owen Taylor  <otaylor@redhat.com>
895
896         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_new): 
897         Pushing and popping the visual/cmap in the init() 
898         function does no good, because the window itself needs
899         to be create with that visual/cmap.
900
901         So do it in the new() function instead. 
902
903         This will require people doing gtk_widget_new() to do 
904         the push/pop themselves, but I don't see any way around
905         it other than digging in and tweaking the window
906         widget's colormap and visual ourselves, which
907         is highly non-kosher, but would be safe...
908
909 Thu Jan 21 16:04:35 1999  Timur Bakeyev <mc@bat.ru>
910
911         * gtk/gtkrc.c (gtk_rc_init): It was reported by Owen Taylor 
912         <otaylor@redhat.com>, that LC_ALL produce unparsable garbage
913         on some glibc'ed systems and HP/UX. So, falling to LC_CTYPE.
914
915 Thu Jan 21 02:11:44 1999  Owen Taylor  <otaylor@redhat.com>
916
917         * Set and read the XdndActionList property defined
918         in the Xdnd spec. We do this always, not just for
919         XdndActionAsk like the spec says, but if we don't
920         find it, we fall back to actions = suggested_action,
921         which is compatible with the language of the spec.
922
923 Thu Jan 21 01:15:28 1999  Jeff Garzik  <jgarzik@pobox.com>
924
925         * gdk/gdkdnd.c (gdk_drag_context_unref):
926         Move not-null assertion before pointer de-ref.
927
928         * gdk/gdkevents.c (gdk_event_queue_find_first):
929         Fix infinite loop bug.  Someone should look at this further to
930         make sure the events_pending tests are correct.
931
932 Thu Jan 21 00:44:47 1999  Owen Taylor  <otaylor@redhat.com>
933
934         * gtk/gtkdnd.c (gtk_drag_dest_drop): Default handling
935         for drops should be keyed on GTK_DRAG_DEFAULT_DROP
936         not GTK_DRAG_DEFAULT_MOTION.
937
938 Wed Jan 20 21:52:51 1999  Jeff Garzik  <jgarzik@pobox.com>
939
940         * gtk/gtkclist.c (real_remove_row):
941         Don't search entire row list twice for element being removed.
942
943         * gtk/gtkmenushell.c (gtk_menu_shell_insert):
944         Replaced hand-coded implementation of g_list_insert with
945         call to g_list_insert.
946
947         * gtk/gtktooltips.c
948           (gtk_tooltips_destroy_data, gtk_tooltips_layout_text):
949         tooltipsdata->row test not-null test now properly encompasses
950         both g_list_* calls.
951
952 Thu Jan 21 02:47:36 1999  Lars Hamann  <lars@gtk.org>
953
954         * gtk/gtknotebook.c (gtk_notebook_focus): few cleanups.
955         (gtk_notebook_key_press): call select page function for
956         GDK_DOWN key in case of tab_pos == TOP. Changed other
957         positions accordingly.
958
959 Wed Jan 20 19:57:14 1999  Owen Taylor  <otaylor@redhat.com>
960
961         * gtk/gtkdnd.c (gtk_drag_begin): Start off with the
962         cursor for "no drop" since if we'll get a status
963         if we are over a drag window, but none if we aren't
964         over one. 
965
966 1999-01-20  Jeff Garzik  <jgarzik@pobox.com>
967
968         * gtk/gtkcombo.c (gtk_combo_entry_key_press):
969         Free 'nprefix', closing a memory leak.
970         Spaced out the code a bit to make it more readable.
971
972         * gtk/gtkhbox.[ch] (gtk_hbox_new),
973           gtk/gtkvbox.[ch] (gtk_vbox_new):
974         Change 'homogenous' arg from gint to gboolean.
975
976         * gtk/gtktogglebutton.[ch]:
977         New function gtk_toggle_button_get_active().
978
979 1999-01-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
980
981         * gtk/gtkdnd.c (gtk_drag_get_event_action): Allow button 2 to act
982         as GDK_ACTION_ASK.  Also, allow MOD1 to specify GDK_ACTION_ASK
983         only if that action is enabled in the actions argument.
984
985 1999-01-20  Raja R Harinath  <harinath@cs.umn.edu>
986
987         * configure.in (gtklocaledir): New variable.  Define to
988         $prefix/$DATADIRNAME/locale.  This will point to the directory
989         where po/Makefile actually installs the message translation
990         tables. 
991         * gtk/Makefile.am (INCLUDES): Define GTK_LOCALEDIR to
992         $(gtklocaledir) rather than $prefix/share/locale.
993
994 Wed Jan 20 21:07:45 1999  Timur Bakeyev <mc@bat.ru>
995
996         * gtk/gtkrc.c (gtk_rc_init): There are some systems, that lacks of
997         LC_MESSAGES in locale.h. As a last resort for such systems, set locale
998         according to LC_ALL.
999
1000 Wed Jan 20 13:06:51 1999  Owen Taylor  <otaylor@redhat.com>
1001
1002         * gtk/gtktext.[ch] (clear_[focus_]area): Instead of drawing
1003         a background pixmap in with gdk_draw_pixmap(), set
1004         it as a tile pixmap for a GC. This should speed
1005         up things considerably and also will hide a bug
1006         where text->first_onscreen_ver_pixel is being
1007         corrupted, causing the bg pixmap drawing code to generate
1008         graphics exposes.
1009
1010 Tue Jan 19 22:15:10 1999  Lars Hamann  <lars@gtk.org>
1011
1012         * gtk/gtklist.c
1013         (gtk_list_button_press):  only call grab_add if pointer_grab succeeds.
1014         (gtk_list_unmap): remove pointer/widget grabs if needed.
1015         (gtk_list_signal_focus_lost): removed.
1016         (gtk_list_focus) (gtk_list_set_focus_child): set last_focus_child.
1017         (gtk_list_remove_items_internal) (gtk_list_clear_items): unset
1018         undo_focus_child if neccessary. In case of SELECTION_BROWSE/EXTENDED
1019         select a new item if selection is empty.
1020
1021 Tue Jan 19 00:21:15 1999  Tim Janik  <timj@gtk.org>
1022
1023         * gtk/gtkcompat.h: add compatibility define for
1024         gtk_ctree_set_reorderable.
1025
1026 Tue Jan 19 00:02:10 1999  Lars Hamann  <lars@gtk.org>
1027
1028         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
1029         add a sanity check [from Todd Dukes <todddukes@netscape.net>]
1030         
1031 Mon Jan 18 22:54:11 1999  Lars Hamann  <lars@gtk.org>
1032
1033         * gtk/gtkclist.c (gtk_clist_button_press): only call grab_add
1034         if pointer_grab succeeds.
1035         (gtk_clist_unmap): remove pointer/widget grabs if needed.
1036
1037 Mon Jan 18 15:46:14 1999  Owen Taylor  <otaylor@redhat.com>
1038
1039         * gtk/gtklabel.c (gtk_label_init): Initialize
1040         label->label_wc. (We allocate labels from
1041         a memchunk)
1042
1043 Mon Jan 18 18:53:08 1999  Tim Janik  <timj@gtk.org>
1044
1045         * gtk/gtkscale.c (gtk_scale_set_digits): CLAMP digits into a
1046         meaningfull range (we need to stay below a certain limit anyways
1047         to avoid string buffer overflows).
1048
1049         * gtk/gtkvscale.c (gtk_vscale_pos_background): fixed up background
1050         area calculations for GTK_POS_RIGHT and GTK_POS_BOTTOM.
1051         * gtk/gtkhscale.c (gtk_hscale_pos_background): likewise.
1052         (gtk_hscale_draw_value): safety CLAMP the value's x position for
1053         GTK_POS_TOP and GTK_POS_BOTTOM, so we don't paint strings outside of
1054         our allocation.
1055
1056         * gtk/gtkscale.c: implemented GtkScale::digits, GtkScale::draw_value
1057         and GtkScale::value_pos arguments.
1058
1059 Mon Jan 18 14:26:17 1999  Owen Taylor  <otaylor@redhat.com>
1060
1061         * docs/Changes-1.2.txt: Some editing, a little more
1062         detail.
1063
1064 Mon Jan 18 13:25:14 1999  Owen Taylor  <otaylor@redhat.com>
1065
1066         * gtk/gtkmenu.[ch]: Added gtk_menu_set_title() to
1067         set the title of a menu in the torn-off state.
1068
1069         * gtk/gtkthemes.c (gtk_theme_engine_get): When loading
1070         of theme engine fails, just warn and do without -
1071         don't error out.
1072
1073         * gtk/gtkmain.c (gtk_check_version): s/to/too/.
1074
1075 Mon Jan 18 01:21:03 1999  Lars Hamann  <lars@gtk.org>
1076
1077         * gtk/gtkctree.c (draw_row): fixed auto resize bug.
1078
1079 Sun Jan 17 17:35:28 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1080
1081         * Released GTK+ 1.1.13
1082
1083         * README:
1084           INSTALL:
1085           docs/gtk-config.1: ver=1.1.13
1086
1087 Mon Jan 18 00:22:54 1999  Lars Hamann  <lars@gtk.org>
1088
1089         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release):
1090         block drag source signal handler during column resizes.
1091         (gtk_clist_set_column_visibility): resize clist if needed.
1092         (gtk_clist_map): raise resize windows to make resize
1093         cursor visible again.
1094
1095 Sun Jan 17 22:47:15 1999  Tim Janik  <timj@gtk.org>
1096
1097         * gtk/gtkwidget.[hc]: 
1098         * gtk/gtkspinbutton.[hc]: 
1099         * gtk/gtkscrolledwindow.[hc]:
1100         * gtk/gtkprogressbar.[hc]:
1101         * gtk/gtkpreview.[hc]: 
1102         * gtk/gtkobject.[hc]:
1103         * gtk/gtkentry.[hc]: 
1104         * gtk/gtkctree.[hc]:
1105         * gtk/gtkcontainer.[hc]:
1106         * gtk/gtkclist.[hc]:
1107         removed deprecated functions: gtk_clist_set_border,
1108         gtk_container_block_resize, gtk_container_unblock_resize,
1109         gtk_container_need_resize, gtk_ctree_set_reorderable,
1110         gtk_ctree_show_stub, gtk_ctree_set_use_drag_icons,
1111         gtk_entry_adjust_scroll, gtk_object_class_add_user_signal,
1112         gtk_preview_put_row, gtk_progress_bar_construct,
1113         gtk_scrolled_window_construct, gtk_spin_button_construct,
1114         gtk_widget_freeze_accelerators, gtk_widget_thaw_accelerators.
1115
1116         * gtk/gtkcheckmenuitem.c: removed binary variant of
1117         gtk_check_menu_item_set_state, this is still defined in gtkcompat.h
1118         though.
1119
1120         * docs/Changes-1.2.txt:
1121         removed section about gtk_idle_remove_by_data vs.
1122         gtk_timeout_remove_by_data, we actually don't even provide a
1123         gtk_timeout_remove_by_data() function.
1124         added a table with removed functions and their replacements.
1125         
1126         * NEWS: updates for 1.1.13.
1127
1128 Sun Jan 17 17:56:33 1999  Owen Taylor  <otaylor@redhat.com>
1129
1130         Patch from Felix Bellaby <felix@pooh.u-net.com>
1131
1132         * gdk/gdk.c: Use XmbSetWMProperties to set
1133         the class/command on the loader window so that the
1134         client machine is also set in the same place.
1135         (For X11R5 sesssion management compatibility)
1136
1137         * gdk/gdk.c: (gdk_set_sm_client_id) Implementation
1138         of function to set the session manager client ID.
1139
1140         * gdk/gdkwindow.c (gdk_window_new): Set 
1141         WM_CLIENT_LEADER propertiy on all windows pointing
1142         back to GDK's leader window.
1143
1144 Sun Jan 17 12:01:57 1999  Owen Taylor  <otaylor@gtk.org>
1145
1146         * gtk/gtkrc.c (gtk_rc_style_init): Allow a bg_pixmap
1147         of "<none>", as there was no way to set the background
1148         on all widget but some widgets. This is important
1149         because Text widgets with background images are
1150         slow and possibly ugly.
1151
1152 1999-01-17  Nat Friedman  <nat@nat.org>
1153
1154         * gtk/gtkscrolledwindow.c (DEFAULT_SCROLLBAR_SPACING): New macro.
1155         Changed the spacing from 5 to 3.
1156
1157         * gtk/gtkmenubar.c (BORDER_SPACING): Changed the extra spacing on
1158         the menubar from 2 to 0.
1159
1160 Sun Jan 17 11:51:17 1999  Owen Taylor  <otaylor@gtk.org>
1161
1162         * gtk/gtktext.c (gtk_text_move_cursor): Fix typo
1163         [ gtk-mailund-990116-0: Thomas Mailund Jensen <mailund@daimi.au.dk> ]
1164
1165 Sun Jan 17 11:15:05 1999 Christopher Blizzard  <blizzard@appliedtheory.com>
1166
1167         * gtk+.spec: Update to version 1.1.13, change packager address.
1168
1169 Sun Jan 17 14:52:29 1999  Tim Janik  <timj@gtk.org>
1170
1171         * gtk/gtkcompat.h:
1172         * gtk/gtkcheckmenuitem.[hc]:
1173         deprecated gtk_check_menu_item_set_state, people should use
1174         gtk_check_menu_item_set_active instead.
1175         
1176         * gtk/testgtk.c:
1177          s/gtk_check_menu_item_set_state/gtk_check_menu_item_set_active/.
1178
1179 Sun Jan 17 05:19:14 1999  Tim Janik  <timj@gtk.org>
1180
1181         * configure.in: incremented version number to 1.1.13, bin age 0,
1182         interface age 0.
1183
1184         * gtk/gtkmain.c (gtk_idle_remove_by_data): use g_idle_remove_by_data to
1185         remove idles, so `data' cannot conflict with other sources.
1186
1187         * gtk/gtkcompat.h: define gtk_style_apply_default_pixmap here.
1188
1189         * gtk/gtkstyle.[hc]: removed gtk_style_apply_default_pixmap.
1190         (struct _GtkStyle): reordered GtkStyleClass*klass; member.
1191
1192 Sat Jan 16 19:42:48 1999  George Lebl  <jirka@5z.com>
1193
1194         * gtk/gtktooltips.c: for NO_WINDOW widgets, add their allocation.y
1195           to the position of the tooltip. This fixes tooltip positioning
1196           problems with some widgets such as a checkbox.
1197
1198 Sat Jan 16 14:01:53 1999  Stuart Parmenter <pavlov@gtk.org>
1199
1200         * gtk/gtklayout.c (gtk_layout_put): check for child widget being NULL
1201
1202 Sat Jan 16 05:02:22 1999  Lars Hamann  <lars@gtk.org>
1203
1204         * gtk/gtkclist.c (gtk_clist_button_press): fixed double click bug.
1205
1206 Fri Jan 15 19:16:42 1999  Tim Janik  <timj@gtk.org>
1207
1208         * gtk/Makefile.am: define GTK_DISABLE_COMPAT_H for compilation of gtk
1209         code.
1210
1211         * gtk/gtkrc.c (gtk_rc_style_unref): added an assertment.
1212
1213         * gtk/gtkcompat.h:
1214         * gtk/gtklabel.h: 
1215         don't provide compatibility defines if GTK_DISABLE_COMPAT_H is defined.
1216
1217         * gtk/gtkstyle.h:
1218         * gtk/gtkstyle.c: coding style, indentation and alignment fixups.
1219         (gtk_draw_string): 
1220         (gtk_paint_string): 
1221         (gtk_draw_polygon):
1222         (gtk_style_set_background): fixed assertments.
1223         (gtk_default_draw_ramp): 
1224         (gtk_default_draw_cross): 
1225         (gtk_default_draw_oval): issue warnings since these functions aren't
1226         yet implemented.
1227
1228         * gdk/gdkwindow.c:
1229         (gdk_window_hide): only unmap window if already mapped.
1230         (gdk_window_show): only map window if !mapped.
1231         (gdk_window_internal_destroy): destroyed windows can't be mapped.
1232
1233         * gtk/gtkwidget.c (gtk_widget_event): don't ignore expose events just
1234         because a resize is queued on a widget, we rely on the expose events
1235         now.
1236
1237 Fri Jan 15 10:22:21 1999  Owen Taylor  <otaylor@redhat.com>
1238
1239         * gtk/gtkwidget.c (gtk_widget_class_init): 
1240         nparams for selection_get should be 3, not 2.
1241         [ From Damon Chaplin <damon@karuna.freeserve.co.uk> ]
1242
1243         * gtk/gtkeventbox.c (gtk_event_box_paint): Add a paint
1244         routine so queued redraws work inside event boxes.
1245
1246 Thu Jan 14 17:47:37 1999  Owen Taylor  <otaylor@redhat.com>
1247
1248         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Only
1249          redraw character under cursor when not displaying 
1250         highlighted selection.
1251
1252         * gdk/gdkrgb.c (gdk_rgb_init): Add in a cast to
1253         gpointer to make IRIX cc happy.
1254
1255 Thu Jan 14 12:29:50 1999  Owen Taylor  <otaylor@redhat.com>
1256
1257         * gtk/gtkcheckbutton.c (gtk_check_button_draw): Restructure
1258         the drawing code to remove a bit of duplication - 
1259         and to remove a call to gtk_widget_draw_focus()
1260         that queues a redraw when an expose occurs.
1261
1262         * gtk/gtklabel.c (gtk_label_expose): Fix up handling
1263           of ypadding.
1264
1265         * gtk/gtknotebook.c (gtk_notebook_draw): If we redraw
1266           the whole widget, also redraw the corresponding
1267           areas of the child widget. (have_visible_child 
1268           still has some problems)
1269
1270         * gdk/gdkpixmap.c: Change some g_new's to g_new0 so
1271           that fields unused for pixmaps get initialzized
1272           sanely.
1273
1274         * gdk/gdk.h gdk/gdkwindow.c gdk/gdkprivate.h: Add new calls
1275           gdk_window_is_visible() and gdk_window_is_viewable()
1276           and a mapped flag to the window private structure.
1277         
1278         * gtk/gtkbin.c gtk/gtkclist.c gtk/gtkfixed.c gtk/gtkitem.c
1279           gtk/gtklayout.c gtk/gtklist.c gtk/gtkmenushell.c
1280           gtk/gtknotebook.c gtk/gtkpaned.c gtk/gtktree.c
1281           gtk/gtktreeitem.c gtk/gtkviewport.c: 
1282         Map windows after mapping children.
1283         
1284         * gtk/gtkwidget.c (gtk_widget_clip_rect): Handle 
1285         rectangles completely clipped away correctly.
1286
1287         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
1288         call gtk_widget_draw if width or height is 0.
1289
1290         * gtk/gtkwidget.c (gtk_widget_idle_draw): Don't
1291         rely on GTK_REDRAW_PENDING after we've cleared
1292         it. (This was causing draw-combining to not
1293         happen at all).
1294
1295         * gtk/gtkbin.c gtk/gtkscale.c: Remove uneccessary calls
1296         to gtk_widget_queue_draw() when mapping.
1297
1298 Thu Jan 14 11:29:53 1999  Owen Taylor  <otaylor@redhat.com>
1299
1300         * gtk/gtkdnd.c (gtk_drag_get_event_action): Make
1301         MOD1-drag also do action ask.
1302
1303         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Send the
1304         button-release event we simulate to get grabs released,
1305         with a window of GDK_ROOT_PARENT instead of the actual 
1306         widget. This is a bad hack in some sense, but seems
1307         to work nicely. (It's sort of like what you would
1308         if you grabbed on button press, then the user 
1309         released outside of the widget.)
1310
1311 Thu Jan 14 20:29:16 1999  Owen Taylor  <otaylor@redhat.com>
1312
1313         * gtk/gtkstyle.[ch] (gtk_style_apply_default_background): 
1314         Change copy_area => !set_bg. Use tile instead of 
1315         gdk_window_copy_area when drawing without !set_bg.
1316         
1317         This does mess up timj's neat check-button example,
1318         but is consistent with how we interpret background
1319         pixmaps everywhere else in the default scheme.
1320
1321         Restructure code for clarity.
1322
1323 Thu Jan 14 19:19:51 1999  Owen Taylor  <otaylor@redhat.com>
1324
1325         * gdk/gdkevents.c: Do all event processing in
1326         dispatch() instead of prepare() and check().
1327
1328 Wed Jan 13 22:34:29 1999  Owen Taylor  <otaylor@redhat.com>
1329
1330         * gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkhandlebox.c
1331         gtk/gtkframe.c gtk/gtk[hv]box.c gtk[hv]paned.c gtk/gtklist.c
1332         gtkmenu.c gtkmenuitem.c gtkmenubar.c gtknotebook.c
1333         gtk/gtkscrolledwindow.c gtk/gtktable.c gtk/gtktree.c
1334         gtk/gtktreeeitem.c gtk/gtkviewport.c
1335         
1336         Fix up comparisons of signed and unsigned ints to avoid 
1337         assigning negative widths/heigths.
1338
1339 Wed Jan 13 21:18:41 1999  Owen Taylor  <otaylor@redhat.com>
1340
1341         * acinclude.m4 (ac_result): Unset CATOBJEXT so
1342         that the macros and Makefiles correctly handle
1343         disabling NLS when no gettext is found.
1344
1345 Wed Jan 13 20:14:32 1999  Tim Janik  <timj@gtk.org>
1346
1347         * gtk/gtkarg.c (gtk_arg_copy): in comparisions with GTK_TYPE_STRING, use
1348         the fundamental type to catch GTK_TYPE_IDENTIFIER as well.
1349
1350         * gtk/gtkmenushell.c:
1351         (gtk_real_menu_shell_activate_current):
1352         (gtk_menu_shell_button_release): asure that we only activate sensitive
1353         menu items, reported by Dave Cole <dave@dccs.com.au>.
1354
1355 Wed Jan 13 13:28:00 1999  Tim Janik  <timj@gtk.org>
1356
1357         * gtk/gtkwidget.c: eliminate queue_clears or queue_draws where we know
1358         that expose events will be generated.
1359         (gtk_widget_map): only queue_draw for NO_WINDOW widgets.
1360         (gtk_widget_unmap): only queue_clear_child for NO_WINDOW widgets.
1361         (gtk_widget_size_allocate): we don't need a queue_clear on changing
1362         allocations of !NO_WINDOW widgets, we do still need a full redraw for
1363         them though.
1364
1365         * gtk/gtklabel.c (gtk_label_set_text): check whether the new string
1366         actually differs from the original.
1367
1368 Tue Jan 12 22:50:44 PST 1999 Manish Singh <yosh@gimp.org>
1369
1370         * acinclude.m4
1371         * ltconfig
1372         * ltmain.sh: upgrade to libtool 1.2d (with fixes for irix6 and osf)
1373
1374 Tue Jan 12 18:30:51 1999  Owen Taylor  <otaylor@redhat.com>
1375
1376         * gtk/testdnd.c (label_drag_data_received): Add 
1377         a drag_data_received handler for the label.
1378
1379 Tue Jan 12 15:01:50 1999  Owen Taylor  <otaylor@redhat.com>
1380
1381         * gdk/gdkevents.c: Removed the putback_events queue, 
1382         since it was causing problems with event ordering -
1383         just keep a single queue. If we need it, we can
1384         add priorities to events.
1385
1386         * gdk/gdkevents.c: Annotate events with flags - we allocate
1387         a GdkEventPrivate structure in gdk_event_new() and use these
1388         flags to mark an event being translated as "pending" -
1389         I.e., not yet ready to be dequeued. So we can put
1390         the event on the queue and get the order of the
1391         events right. (This solves the double-click problems)
1392         
1393         * gdk/gdk.h gdk/gdkevents.h: Add gdk_event_peek() to get a copy
1394         of the next event on the event queue.
1395         
1396         * gtk/gtkmain.c (gtk_main_do_event): Use gdk_event_peek()
1397         to check the next event without causing event queue
1398         reordering.
1399
1400 Tue Jan 12 15:41:20 1999  Owen Taylor  <otaylor@redhat.com>
1401
1402         * gtk/gtklabel.c (gtk_label_expose): Minor fix
1403         to handling of misc->[x/y]pad
1404
1405 Tue Jan 12 14:31:43 1999  Owen Taylor  <otaylor@redhat.com>
1406
1407         * gtk/gtkstyle.[ch] (gtk_style_apply_default_pixmap): 
1408         Add back as wrapper function to restore source/binary 
1409         compatibility. grrrr.
1410
1411 Tue Jan 12 13:47:07 1999  Tim Janik  <timj@gtk.org>
1412
1413         * reworked the redrawing heuristics somewhat, this fixed a bunch of
1414         existing redrawing problems and majorly reduces overall redrawing needs
1415         during normal operation. basically we now only queue redraws when
1416         neccessary and much rely on the draw_area coalescing code in gtkwidget.c
1417         to optimize the queued portions. widgets will now upon reallocation only
1418         get redrawed if their allocation has changed. upon hide/show only the
1419         area allocated by the child will be queued for the parent, this has the
1420         side effect that parents which change their appearance in dependance on
1421         the numer of visible children have to keep track of their children's
1422         visiblity and eventually fully redraw themselves. this is a minor
1423         constrain with great benefits in terms of redraw reduction, and only got
1424         triggered by the notebook widget.
1425
1426         * gtk/gtkwidget.c:
1427         (gtk_widget_queue_clear): don't bother if width and height == 0.
1428         (gtk_widget_queue_clear_child): new static function to queue a redraw of
1429         the area obscured by a child on a parent.
1430         (gtk_widget_queue_resize): queue_clear the widget if it is drawable.
1431         (gtk_widget_show): queue resize on the widget before showing.
1432         (gtk_widget_hide): queue resize on the widget after hiding.
1433         (gtk_widget_map): queue_draw the widget after mapping.
1434         (gtk_widget_unmap): queue_clear_child the widget.
1435         (gtk_widget_size_allocate): queue_clear_child and queue_draw if the
1436         widget's allocation changed.
1437         (gtk_widget_unparent): queue_clear_child so the parent redraws obscured
1438         portions.
1439         (gtk_widget_real_show):
1440         (gtk_widget_real_hide):
1441         (gtk_widget_real_map):
1442         (gtk_widget_real_unmap):
1443         (gtk_widget_real_size_allocate): don't bother with redraw queueing,
1444         descendants that override these functions don't do either and we handle
1445         all redrawing/resizing related stuff before or after the signal emission
1446         now.
1447
1448         * gtk/gtkcontainer.c:
1449         (gtk_container_resize_children): don't bother about redrawing anymore
1450         since gtk_widget_size_allocate handles that for us now.
1451
1452         * gtk/gtknotebook.h:
1453         * gtk/gtknotebook.c:
1454         added a flag have_visible_child to indicate whether we need to draw
1455         non child related portions at all, e.g. shadows etc.
1456         (gtk_notebook_draw): if have_visible_child changed, do a full paint
1457         instead of updating a small area only.
1458
1459 Mon Jan 11 20:44:35 1999  Tim Janik  <timj@gtk.org>
1460
1461         * gtk/gtkstyle.c: changed gtk_style_apply_default_pixmap to
1462         gtk_style_apply_default_background which takes an extra argument
1463         copy_area to determine NO_WINDOW widget pixmap copying.
1464         changed callers accordingly.
1465
1466         * gtk/gtktogglebutton.c:
1467         (gtk_toggle_size_allocate): 
1468         (gtk_toggle_button_expose): 
1469         (gtk_toggle_button_paint): avoid messing with our parent's window if
1470         toggle_button->draw_indicator == TRUE and we are a NO_WINDOW widget.
1471
1472         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): draw
1473         the draw_indicator with GTK_STATE_ACTIVE if the toggle button is active.
1474
1475         * gtk/check-n.xpm:
1476         * gtk/check-y.xpm:
1477         * gtk/testgtkrc: set pixmaps for ACTIVE and NORMAL check button
1478         bg_pixmaps.
1479
1480 Mon Jan 11 23:52:58 1999  Lars Hamann  <lars@gtk.org>
1481
1482         * gtk/gtklist.c (gtk_list_signal_drag_begin)
1483         (gtk_list_drag_begin): end drag selections if necessary.
1484
1485         * gtk/gtkspinbutton.c/h (gtk_spin_button_update): made function
1486         public. Manually force synchronization of spin button text and
1487         adjustment value.
1488
1489 Mon Jan 11 15:23:32 1999  Tim Janik  <timj@gtk.org>
1490
1491         * gtk/gtktogglebutton.c: eliminated some queue_draws when invoking
1492         gtk_widget_set_state, since that cares about redrawing already.
1493         some code cleanups.
1494
1495         * gtk/gtktogglebutton.[hc]:
1496         * gtk/gtkfontsel.c:
1497         * gtkgamma.c:
1498         s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/ since
1499         set_state is already taken by gtkwidget.h.
1500
1501         * gtk/gtkcompat.h: #define gtk_toggle_button_set_state
1502         gtk_toggle_button_set_active.
1503         
1504         * gtk/gtkstyle.c: some indentation cleanups.
1505
1506 Mon Jan 11 15:12:33 1999  Tim Janik  <timj@gtk.org>
1507
1508         * gtk/gtktogglebutton.c (gtk_toggle_button_set_mode): take previous
1509         visibility state into account when unrealizing.
1510
1511 Mon Jan 11 10:45:28 1999  Owen Taylor  <otaylor@redhat.com>
1512
1513         * gtk/gtkdnd.c: Only remove handlers for motion/button_release
1514         at drop, remove "selection_get" handler later.
1515
1516 Mon Jan 11 13:31:49 1999  Tim Janik  <timj@gtk.org>
1517
1518         * gtk/gtktypeutils.[hc]: removed Paolo Molaro's type creation hooks
1519         again, since they 1) don't care about infinite recursion (likely
1520         to achive), 2) we are in feature freeze for 1.2. this definitely
1521         deserves a sane implementation in 1.3 though (but without a hook
1522         return value, without seq_id hackery and with recursion checks).
1523
1524 Mon Jan 11 13:18:37 1999  Tim Janik  <timj@gtk.org>
1525
1526         * gtk/gtkwindow.c:
1527         (gtk_window_key_release_event): 
1528         (gtk_window_key_press_event): only pass key events to the focus widget
1529         if it is sensitive.
1530
1531         * gtk/gtkmenuitem.c (gtk_menu_item_select_timeout): don't popup the
1532         submenu if it isn't sensitive.
1533         (gtk_menu_item_paint): state_type doesn't need to be reset to
1534         GTK_STATE_INSENSITIVE if the widget is insensitive anyways.
1535
1536         * gtk/gtkcontainer.c (gtk_container_real_focus): 
1537         * gtk/gtklist.c (gtk_list_focus): 
1538         * gtk/gtkmenushell.c (gtk_menu_shell_move_selected): 
1539         * gtk/gtknotebook.c (gtk_notebook_focus): 
1540         s/GTK_WIDGET_SENSITIVE/GTK_WIDGET_IS_SENSITIVE/ since a widgets
1541         sensitivity is determined through the parent as well,
1542         GTK_WIDGET_SENSITIVE is only of interest inside gtkwidget.c, everywhere
1543         else GTK_WIDGET_IS_SENSITIVE (widget) needs to be used to check for
1544         sensitivity.
1545
1546         * gtk/gtkaccelgroup.c (gtk_accel_group_activate): don't activate
1547         object if it is an insensitive widget.
1548
1549 Mon, 11 Jan 1999 08:09:08 +0100 Paolo Molaro <lupus@debian.org>
1550
1551         * gtk/gtktypeutils.[ch]: add gtk_type_{add,remove}_creation_hook().
1552         You can have a notification when a type is created.
1553
1554 1999-01-11  Tim Janik  <timj@gtk.org>
1555
1556         * gtk/gtkmain.c (gtk_propagate_event): added an assertement.
1557
1558 Sun Jan 10 14:45:37 1999  Owen Taylor  <otaylor@gtk.org>
1559
1560         * gtk/gtktext.c (text_properties_equal): Fixed
1561         cut and paste bug when comparing text property
1562         bg colors.
1563         [ Matt Aubury <Matt.Aubury@comlab.ox.ac.uk> ]
1564
1565 1999-01-10  Tim Janik  <timj@gtk.org>
1566
1567         * gtk/gtksignal.c (gtk_signal_lookup): if the lookup failed, try
1568         to initialize the object class and reattempt the lookup, reported
1569         by Paolo Molaro <lupus@lettere.unipd.it>.
1570
1571 Sat Jan  9 17:36:20 1999  Owen Taylor  <otaylor@redhat.com>
1572
1573         * configure.in (ALL_LINGUAS): Added cs to ALL_LINGUAS.
1574
1575 Sat Jan  9 17:27:49 1999  Owen Taylor  <otaylor@redhat.com>
1576
1577         * gtk/gtkfilesel.c (gtk_file_selection_populate):
1578         Mark another string for internationalization.
1579         [ Stanislav Brabec <utx@k332.feld.cvut.cz> ]
1580
1581 Sat Jan  9 14:02:08 1999  Owen Taylor  <otaylor@redhat.com>
1582
1583         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set
1584         name "gtk-tooltips" on tip window so that a style
1585         can be set for tooltips.
1586
1587 Fri Jan  8 19:00:17 1999  Owen Taylor  <otaylor@redhat.com>
1588
1589         * gdk/gdkdnd.c (gdk_window_cache_filter): Fixed
1590         some list-manipulation breakage.
1591
1592         * gdk/gdkdnd.c (gdk_window_cache_destroy): Free 
1593         window cache structure.
1594
1595         * gtk/gtkdnd.c (gtk_drag_set_icon_pixmap): Set an
1596         event mask on the drag window so clicking on it
1597         doesn't pop up root menus, etc.
1598
1599         * gtk/gtkdnd.c (gtk_drag_button_release_cb): Remove
1600         signal handlers at button release.
1601
1602 Fri Jan  8 00:42:00 1999  Lars Hamann  <lars@gtk.org>
1603
1604         * gtk/gtkspinbutton.c (gtk_spin_button_get_value_as_int)
1605         (gtk_spin_button_get_value_as_float): call gtk_spin_button_update
1606         before returning a value
1607
1608         * gtk/gtkclist.c (gtk_clist_motion): don't allow 'drag selections'
1609         if clist is a drag source.
1610         (gtk_clist_drag_begin): remove pointer grabs, end ongoing selections.
1611
1612         * gtk/gtkctree.c (remove_grab): copy of clist function.
1613         (gtk_ctree_drag_begin): let clists drag_begin method set the
1614         source info struct.
1615
1616 Thu Jan  7 19:10:21 1999  Owen Taylor  <otaylor@redhat.com>
1617
1618         * gtk/gtkviewport.c (gtk_viewport_style_set): Fixes
1619         to drawing the background of the bin window 
1620         so that clearing and redrawing of child
1621         widgets work properly.
1622
1623         * gtk/gtkwidget.c (gtk_widget_idle_draw): Juggle around
1624         data so that if somebody triggers more redraw queuing
1625         from a expose_event handler, it doesn't confuse the
1626         heck out of GTK+. (But is highly liable to cause 
1627         an infinite loop...)
1628
1629 Thu Jan  7 12:31:41 1999  Owen Taylor  <otaylor@redhat.com>
1630
1631         * gtk/gtkselection.c (gtk_target_list_unref): Fix some
1632         more memory leaks.
1633
1634 Wed Jan  6 23:14:19 1999  Lars Hamann  <lars@gtk.org>
1635
1636         * gtk/gtkctree.c (gtk_ctree_drag_motion): fix for dnd bug reported
1637         by Bertrand Guiheneuf. Don't return FALSE if source widget != dest.
1638         widget.
1639
1640 Wed Jan 06 10:04:12 1999  Tristan Tarrant  <ttarrant@etnoteam.it>
1641
1642         * configure.in,po/it.po: added Italian translations
1643
1644 Tue Jan 05 21:18:00 1999  George Lebl  <jirka@5z.com>
1645
1646         * gtk/gtkmenu.c,gtk/gtkmenuitem.c,gtk/gtkeditable.c: free the
1647           event that was returned to us by gtk_get_current_event
1648
1649 Tue Jan  5 19:01:18 1999  Owen Taylor  <otaylor@redhat.com>
1650
1651         * gtk/gtkcolorsel.c (gtk_color_selection_dialog_init): Push
1652         GdkRGB's visual and colormap around the color selection
1653         dialog so that the window and the previews have the
1654         same colormap. If an app adds things to the colorsel
1655         dialog, it will have to take care of them itself.
1656
1657 Tue Jan  5 15:03:47 1999  Owen Taylor  <otaylor@redhat.com>
1658
1659         * gtk/gtkmain.c (gtk_propagate_event): Make 
1660         gtk_propagate_event() non-static, we need it in gtkdnd.c 
1661         so that the button-release we synthesize gets propagated
1662         correctly.
1663
1664         * gtk/gtkdnd.c: Use gtk_propagate_event() so
1665         release gets to a GtkList. But we can't really
1666         get this right without access to the windows
1667         event masks and doing X-style propagation ourselves.
1668
1669 Tue Jan  5 12:40:57 1999  Owen Taylor  <otaylor@redhat.com>
1670
1671         * gtk/gtkpreview.c: Add a size_allocate() routine 
1672         and set the size of the preview window equal
1673         to the area we are going to draw on, instead 
1674         of the entire allocation. Do this to avoid having 
1675         to set a parent-relative background.
1676         
1677 Tue Jan  5 11:51:32 1999  Owen Taylor  <otaylor@redhat.com>
1678
1679         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
1680         When redrawing the under-cursor character, don't
1681         redraw the terminating NULL.
1682         [ From: dov@imagic.weizmann.ac.il (Dov Grobgeld) ]
1683
1684 Tue Jan  5 11:31:55 1999  Owen Taylor  <otaylor@redhat.com>
1685          
1686         * gtk/gtkselection.c (gtk_target_list_unref): Free
1687         memory allocated for target lists.
1688
1689         * gtk/gtkdnd.c (gtk_drag_drop_finished): Release
1690         selections before destroying info structure.
1691
1692         * gdk/gdkdnd.c gdktypes.h (gdk_drag_get_protocol): Add
1693         new value GDK_DRAG_PROTO_NONE, use it for non-drag
1694         targets, to quiet Purify.
1695
1696         * gdk/gdkdnd.c (gdk_window_register_dnd): Set size
1697         of property properly.
1698
1699 Mon Jan  4 03:45:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1700
1701         * Released GTK+ 1.1.12
1702
1703         * INSTALL:
1704           NEWS:
1705           README:
1706           configure.in:
1707           gtk+.spec:
1708           docs/gtk-config.1:
1709           gtk/gtkfeatures.h.in: version=1.1.12
1710
1711 1999-01-04  Sung-Hyun Nam  <namsh@lgic.co.kr>
1712
1713         * configure.in (ALL_LINGUAS): Added 'ko'.
1714
1715 Sun Jan  3 17:41:22 1999  Lars Hamann  <lars@gtk.org>
1716
1717         * gtk/gtkctree.c (real_tree_expand): fixed auto_resize bug
1718
1719 Sat Jan  2 03:54:30 1999  Tim Janik  <timj@gtk.org>
1720
1721         * gdk/gdk.h (GDK_PRIORITY_EVENTS): make this G_PRIORITY_DEFAULT.
1722
1723         * gdk/gdkevents.c (gdk_events_init): add the source and the poll fd with
1724         a priority of GDK_PRIORITY_EVENTS.
1725
1726 1999-01-02  Jeff Garzik  <jgarzik@pobox.com>
1727
1728         * configure.in, config.h.in, gdk/gdkimage.c:
1729         Removed features.h test.
1730
1731         * gdk/gdkdnd.c:
1732         Guard public functions against NULL pointer derefs.
1733
1734 Fri Jan  1 18:41:09 PST 1999 Manish Singh <yosh@gimp.org>
1735
1736         * gdk/gdk.c
1737         * gdk/gdkinputnone.h
1738         * gtk/gtkruler.c: casts to get rid of const warnings
1739
1740         * gtk/Makefile.am: fix gtktypebuiltins.h dependencies, and do a
1741         cmp so people don't whine about rebuilds
1742
1743         * gtk/gtknotebook.c: use g_snprintf on translated strings, so we
1744         don't get buffer overflows
1745
1746         * gtk/gtkrc.c: use g_strdup_printf instead of g_malloc/sprintf
1747         Plug some memleaks.
1748
1749 1999-01-01  Jeff Garzik  <jgarzik@pobox.com>
1750
1751         * configure.in, config.h.in:
1752         Check for features.h.
1753
1754         * gdk/gdkevents.c (gdk_event_put, gdk_events_queue):
1755         Fixed bug in linked list append logic by replacing hand-coded
1756         logic with a call to g_list_append.  Bug found by tml.
1757
1758         * gdk/gdkimage.c:
1759         'gcc -ansi -pedantic' on GNU/Linux spews warnings and errors
1760         in sys/ipc.h, including one specific admonishment to use
1761         _SVID_SOURCE or _XOPEN_SOURCE.  Manually defined the latter, and
1762         included features.h if present to obtain the necessary
1763         side-effects.
1764
1765         * gtk/gtkclist.c, gtk/gtkeditable.c:
1766         Eliminates comma-after-final-element warnings.
1767
1768         * gtk/gtkfontsel.c (gtk_font_selection_init):
1769         Fixed bug where an intl string was declared as _("x") in
1770         local var initializer.
1771
1772 1998-12-31  Jeff Garzik  <jgarzik@pobox.com>
1773
1774         * gtk/gtklabel.c (gtk_label_split_text_wrapped):
1775         word->space is now initialized correctly.
1776         Reported by Chi-Deok Hwang <cdhwang@sr.hei.co.kr>.
1777
1778 1998-12-30  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1779
1780         * gtk/gtkmain.c (gtk_main_do_event): Fix memory leak.
1781         gdk_event_put would make a copy of next_event, and next_event was
1782         not being freed.
1783
1784 Wed Dec 30 18:39:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1785
1786         * Released GTK+ 1.1.11
1787
1788         * INSTALL:
1789           NEWS:
1790           README:
1791           configure.in:
1792           gtk+.spec:
1793           docs/gtk-config.1:
1794           gtk/gtkfeatures.h.in: version=1.1.11
1795         
1796 1998-12-29  Owen Taylor  <otaylor@srv-19-29.roc.ny.frontiernet.net>
1797
1798         * gdk/gdkim.c (gdk_wcstombs): Fixed off-by-one
1799         error when computing length.
1800
1801 Thu Dec 24 14:35:48 1998  Jeff Garzik  <jgarzik@pobox.com>
1802
1803         * gdk/gdkevents.c, gdk/gdkim.c, gdk/gdkrgb.c, gdk/gdkwindow.c,
1804           gtk/gtkprogressbar.c:
1805         Pull in string.h for various mem*() and str*() functions,
1806         in an autoconf-friendly way.
1807
1808 Thu Dec 24 12:40:45 1998  Jeff Garzik  <jgarzik@pobox.com>
1809
1810         * gdk/gdkfont.c: removed unused var
1811         * gdk/gdkim.c: 64-bit cast
1812         * gtk/gtkaccelgroup.c: point to const data
1813         * gtk/gtkdnd.[ch]: (gtk_drag_dest_set, gtk_drag_source_set):
1814           Made const-correct.
1815         * gtk/gtkfontsel.c: kill uninitialized var warning
1816         * gtk/gtkselection.[ch]: (gtk_target_list_new,
1817           gtk_target_list_add_table, gtk_selection_add_targets):
1818           Made const-correct.
1819         * gtk/testgtk.c: 64-bit cast
1820
1821 Thu Dec 24 03:16:52 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1822
1823         * INSTALL:
1824           NEWS:
1825           README:
1826           configure.in:
1827           gtk+.spec:
1828           docs/gtk-config.1:
1829           gtk/gtkfeatures.h.in: version=1.1.10
1830
1831 Wed Dec 23 20:31:40 1998  Owen Taylor  <otaylor@redhat.com>
1832
1833         * gtk/gtklabel.c: Fix problem where empty labels were 
1834         getting a requisition height of zero, and trailing 
1835         newlines were being ignored.
1836
1837 Wed Dec 23 13:58:14 1998  Owen Taylor  <otaylor@redhat.com>
1838
1839         * gtk/gtklabel.c (gtk_label_parse_uline):
1840         label->label should be the mb text _after_ removing
1841         the underlines, not before.
1842
1843         * gtk/gtkmenu.c: Reverted Elliot's tearoff-menu-item
1844         title hack. If it deserves being done, it deserves
1845         being done right.
1846         
1847 1998-12-23  Elliot Lee  <sopwith@redhat.com>
1848
1849         * gtk/gtkmenu.c: Allow programmer to gtk_object_set_data(obj,
1850         "GtkTearoffMenuItem_window_title", ..) on a GtkMenuItem and have
1851         it be recognized. If we're getting the title out of the GtkLabel,
1852         then remove all underscores.
1853
1854 Tue Dec 22 17:01:43 1998  Owen Taylor  <otaylor@redhat.com>
1855
1856         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): 
1857         Request XmTRANFER_FAILURE on Motif drops not within
1858         a drop zone. I don't know why this is necessary,
1859         but it is.
1860
1861         * gdk/gdkdnd.c (gdk_drop_reply): Fixed error where
1862         Motif flag field in response was getting wrong
1863         values.
1864
1865 Tue Dec 22 15:55:39 1998  Owen Taylor  <otaylor@redhat.com>
1866
1867         * gtk/gtkoptionmenu.c (gtk_option_menu_button_press): 
1868         Return TRUE for button press events we handle.
1869         (Allows option menus in radio buttons to work...)
1870
1871 Tue Dec 22 14:50:25 1998  Owen Taylor  <otaylor@redhat.com>
1872
1873         * gtk/gtkdnd.c (gtk_drag_find_widget): Optimization -
1874         when we've already found a widget, skip all checks
1875         for subsequent children.
1876
1877         * gtk/gtkdnd.c (gtk_drag_find_widget): Checked for
1878         !MAPPED, not !VISIBLE, since a widget (like a notebook
1879         page), can be VISIBLE, but !REALIZED or !MAPPED.
1880
1881         * gtk/gtkdnd.c (gtk_drag_find_widget): Use forall(),
1882         not foreach().
1883
1884 Mon Dec 21 22:01:49 1998  Lars Hamann  <lars@gtk.org>
1885
1886         * gtk/gtkclist.c (gtk_clist_motion): fixed column resize bug
1887
1888 Sun Dec 20 04:48:59 1998  Tim Janik  <timj@gtk.org>
1889
1890         * gdk/gdk.h (GDK_PRIORITY_EVENTS): export the priority at which
1891         events are processed.
1892
1893         * gtk/gtk[main|signal|container].[ch]: removed deprecated _interp
1894         variants: gtk_container_foreach_interp, gtk_idle_add_interp,
1895         gtk_timeout_add_interp, gtk_signal_connect_interp.
1896
1897 Sat Dec 19 18:45:30 PST 1998 Shawn T. Amundson <amundson@gtk.org>
1898
1899         * configure.in: added sv to ALL_LIGNUAS
1900
1901 Sat Dec 19 22:49:40 1998  Tim Janik  <timj@gtk.org>
1902
1903         * gtk/gtktypeutils.c (gtk_type_query): eek, fixed an embarrasing bug
1904         that caused this function to always return NULL (noticed by marius
1905         vollmer).
1906
1907 Sat Dec 19 17:28:30 1998  Owen Taylor  <otaylor@redhat.com>
1908
1909         * configure.in: Don't add the gthread libs to 
1910         GLIB_LIBS either, or -lgthread -lpthread will get 
1911         pulled into all applications because of shlib deps.
1912
1913         * gtk/gtkmain.h gtk/gtkwidget.c gtk/gtk gdk/gdk: 
1914         Use GLIB's priority #define. Revise scale of 
1915         priorities.
1916
1917 Sat Dec 19 03:44:29 PST 1998 Manish Singh <yosh@gimp.org>
1918
1919         * gtk/gtkmain.c: always run a g_main_iteration, even if
1920         there are no active main loops. This fixes the gimp splash
1921         screen.
1922
1923 Sat Dec 19 05:37:51 1998  Tim Janik  <timj@gtk.org>
1924
1925         * gtk/gtklabel.c (gtk_label_expose): removed return_if_fail
1926         (label->words != NULL) since that's a valid case when the label
1927         is empty, or just default constructed.
1928         fixed indentation prototype arguments and braces in some places.
1929         also, pointer comparisions and initializations are done with NULL
1930         not 0, there's a reason GLib defines NULL.
1931
1932         * gdk/gdkevents.c (gdk_events_pending): return (queued_events ||
1933         putback_events) so this again returns whether events are pending,
1934         not whether other sources like idles are pending.
1935
1936         * gtk/gtkmain.c (gtk_main_iteration_do): 
1937         (gtk_main_iteration): return whether the loop is done, not whether
1938         something got dispatch to restore the original behaviour (yosh: this
1939         fixes code like in GleSelector).
1940
1941 Fri Dec 18 19:20:45 PST 1998 Manish Singh <yosh@gimp.org>
1942
1943         * gtkbutton.[ch]
1944         * gtktogglebutton.c: s/(enter|leave)_button/$1/g, since pthreads.h
1945         no longer conflicts
1946         
1947 Sat Dec 19 01:56:13 1998  Lars Hamann  <lars@gtk.org>
1948
1949         * gtk/gtkclist.c (gtk_clist_button_press): fixed GDK_2BUTTON_PRESS
1950         bug.
1951
1952 Fri Dec 18 15:30:43 PST 1998 Manish Singh <yosh@gimp.org>
1953
1954         * configure.in: add ja to ALL_LINGUAS
1955
1956 Fri Dec 18 15:19:54 1998  Owen Taylor  <otaylor@redhat.com>
1957
1958         * gtk/gtksocket.c (gtk_socket_filter_func): Marked
1959         plug window as destroyed before destroying the 
1960         window.
1961
1962 Fri Dec 18 14:17:14 1998  Owen Taylor  <otaylor@redhat.com>
1963
1964         * gtk/gtkmenu.c (gtk_menu_popup): Set the usize on the
1965         tearoff window so when we reparent the window out,
1966         the window doesn't shrink down.
1967
1968 1998-12-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1969
1970         * configure.in: do not export the glib flags for thread support to
1971         gtk-config.
1972
1973 Fri Dec 18 01:32:59 1998  Tim Janik  <timj@gtk.org>
1974
1975         * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
1976         get the original behaviour back, i.e. the event queue needs to be flushed
1977         after a main loop has been quitted.
1978         (gtk_main): add/remove the current main loop to/from the main loop
1979         before/after init/quit functions have been exected to preserve the
1980         original gtk_main_quit() behaviour.
1981
1982 Thu Dec 17 23:48:29 1998  Tim Janik  <timj@gtk.org>
1983
1984         * gdk/gdkevents.c (gdk_events_init): changed argument order in call
1985         to g_main_add_poll() to match recent glib changes.
1986
1987 Thu Dec 17 20:33:28 1998  Owen Taylor  <otaylor@redhat.com>
1988
1989         * gtk-config.in: Add @INTLLIBS@. 
1990         gtk-scier-981116-0.patch  Sean Cier <scier@PostHorizon.com>) ]
1991
1992         * gtk/gtkcolorsel.c gtk/gtkfilesel.c gtk/gtkfontsel.c
1993           gtk/gtkgamma.c gtk/gtkinputdialog.c 
1994           gtk/gtknotebook.c gtk/gtkrc.c gtk/gtkthemes.c
1995           gtk/gtktipsquery.c: 
1996         
1997         Applied parts of gtk-egger-981215-1 [ Daniel Egger
1998         <Daniel.Egger@t-online.de> ] marking additional strings for
1999         internationalization.
2000         
2001         * po/nl.po: Added Dutch translation from 
2002         Paul Siegmann <pauls@euronet.nl>.
2003         
2004 Thu Dec 17 18:25:52 1998  Owen Taylor  <otaylor@redhat.com>
2005
2006         * gtk/gtkdnd.c (gtk_drag_drop_finished): Remove the
2007         info tag from the context so if the source unexpectedly
2008         responds in the future, we do nothing properly.
2009
2010 Thu Dec 17 18:24:41 1998  Owen Taylor  <otaylor@redhat.com>
2011
2012         * gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): Handle
2013         the case where one side of the the pane is empty.
2014
2015         * gtk/gtkfilesel.c (gtk_file_selection_init): Set
2016         dir_title before using it. (Pointed out by
2017         Lavoie Philippe <lavoie@zeus.genie.uottawa.ca>)
2018         
2019 Thu Dec 17 10:53:20 1998  Owen Taylor  <otaylor@redhat.com>
2020
2021         * gtk/gtklabel.c (gtk_label_set_text): Free 
2022         previous label->label_wc.
2023
2024         * gtk/testgtkrc: Leave font, not fontset commented
2025         in by default.
2026
2027 1998-12-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2028
2029         * gdk/gdkim.c: Define gdk_use_mb outside USE_XIM guard. Removed
2030         unnecessary USE_XIM guard inside another. Made gdk_use_mb
2031         static. Compile gdk_set_locale also if not USE_XIM.     
2032
2033 Thu Dec 17 00:26:01 1998 Shawn T. Amundson <amundson@gtk.org>
2034
2035         * Released GTK+ 1.1.9
2036
2037         * INSTALL:
2038           NEWS:
2039           README:
2040           configure.in:
2041           gtk+.spec:
2042           gtk/gtkfeatures.h.in:
2043           docs/gtk-config.1: version=1.1.9
2044
2045 Wed Dec 16 21:20:00 PST 1998 Manish Singh <yosh@gimp.org>
2046
2047         * autogen.sh: rm -rf intl breaks --disable-nls, put it back
2048
2049         * gtkbutton.[ch]
2050         * gtktogglebutton.c: s/(enter|leave)/$1_button/g.
2051         Digital: 1 GTK+: 0 (for now)
2052
2053 Wed Dec 16 22:38:22 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2054
2055         * gdk/gdkevents.c: updated call to g_main_add_poll
2056           instead of g_main_poll_add
2057
2058 Wed Dec 16 23:32:05 1998  Owen Taylor  <otaylor@redhat.com>
2059
2060         * gtk/gtklabel.c (gtk_label_expose): Remove 
2061         unnecessary cast.
2062
2063 Wed Dec 16 22:50:52 1998  Owen Taylor  <otaylor@redhat.com>
2064
2065         * gdk/gdk.c gdk/gdkim.c: Check for broken glibc 2.0 
2066         mb functions, and avoid them.
2067
2068 Wed Dec 16 16:57:55 1998  Owen Taylor  <otaylor@redhat.com>
2069
2070         * gdk/gdkevents.c (gdk_events_queue): Don't
2071         call XPending() if we have putback events.
2072
2073 Wed Dec 16 16:04:41 1998  Owen Taylor  <otaylor@redhat.com>
2074
2075         * gtk/gtklabel.c (gtk_label_expose): Do nothing
2076         on empty string, quietly.
2077
2078 Wed Dec 16 15:36:19 1998  Owen Taylor  <otaylor@redhat.com>
2079
2080         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
2081         Redraw the character under the cursor when removing
2082         the cursor.
2083
2084 Wed Dec 16 13:06:17 1998  Owen Taylor  <otaylor@redhat.com>
2085
2086         * gdk/gdk.[ch] gtk/gtkmain.[ch] gtk/gtkprivate.h: Move main
2087         thread lock back to GDK - we need it there for locking
2088         when translating events. Rename things appropriately.
2089
2090 Wed Dec 16 11:44:21 1998  Owen Taylor  <otaylor@redhat.com>
2091
2092         * gtk/gtkrange.c (gtk_range_expose): Fix a x/y typo.
2093
2094 Wed Dec 16 10:20:27 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2095
2096         * Released GTK+ 1.1.8
2097
2098         * ChangeLog:
2099           INSTALL:
2100           README:
2101           gtk+.spec:
2102           docs/gtk-config.1: version=1.1.8
2103
2104 1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2105
2106         * gdk/gdkglobals.c: Define gdk_xim_ic only, if USE_XIM is defined.
2107
2108 Wed Dec 16 07:03:32 1998  Tim Janik  <timj@gtk.org>
2109
2110         * gtk/gtkwidget.h: 
2111         * gtk/gtkwidget.c: s/USER_DRAW/APP_PAINTABLE/. provided
2112         gtk_widget_set_app_paintable() which users can use to make
2113         a widget paintable for the application. changed other files accordingly.
2114
2115 Wed Dec 16 05:26:32 1998  Tim Janik  <timj@gtk.org>
2116
2117         * configure.in: version bump to 1.1.8, binary age 0, interface age 0,
2118         depend on GLib 1.1.8.
2119
2120         * gdk/gdkprivate.h:
2121         * gdk/gdkglobals.c: removed last Gdk threads specific bits.
2122
2123         * gtk/gtkmain.c (gtk_init): s/g_thread_supported/g_thread_supported()/.
2124
2125         * gtk/gtkprivate.h: changed GTK_THREADS_ENTER and GTK_THREADS_LEAVE
2126         to function macros GTK_THREADS_ENTER() and GTK_THREADS_LEAVE().
2127         honour G_THREADS_ENABLED in the definition of GTK_THREADS_ENTER()
2128         and GTK_THREADS_LEAVE(). changed callers accordingly.
2129
2130 Tue Dec 15 21:26:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2131
2132         * autogen.sh: warn if glib.m4 or gettext.m4 are not found 
2133           in aclocal's directory.
2134
2135 Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>
2136
2137         * gtk/testgtk.c (create_layout): Create buttons,
2138         not combos again.
2139
2140 1998-12-15  Joel Becker  <jlbec@ocala.cs.miami.edu>
2141
2142         * autogen.sh: reordered gettextize and aclocal, because
2143         gettextize was messing up aclocal.m4.
2144
2145 Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>
2146
2147         * gtk/gtkclist.h : 
2148         removed clist flag : GTK_CLIST_DRAG_SELECTION
2149         added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
2150         GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
2151         (GtkCListDragPos) : new enum for DND
2152         (GtkButtonAction) : new enum of possible mouse button actions
2153         (struct _GtkCList): added button_actions array.
2154         Added drag_button and click_cell struct, to store cell and
2155         mouse button of last button_press_event
2156         
2157         (struct _GtkCListClass): new class method draw_drag_highlight.
2158         (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
2159         new functions. Moved from gtkctree.h. Now clist is reorderable
2160         as well.
2161         (gtk_clist_set_button_actions) new function to customize mouse
2162         button actions.
2163
2164         * gtk/gtkclist.c:
2165         (gtk_clist_drag_begin)
2166         (gtk_clist_drag_motion)
2167         (gtk_clist_drag_leave)
2168         (gtk_clist_drag_end)
2169         (gtk_clist_drag_drop)
2170         (gtk_clist_drag_data_get)
2171         (gtk_clist_drag_data_received) : new dnd widget methods to
2172         implement clists reorderability via DND
2173
2174         (remove_grab) : new function. remove mouse grab if necessary.
2175         (draw_drag_highlight) : new method. Draw dnd highlight depending
2176         on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
2177
2178         (gtk_clist_class_init): added object args "reorderable" and
2179         "use_drag_icons"
2180
2181         (gtk_clist_button_press) (gtk_clist_button_release) :
2182         use button_actions array to decide which action to perform.
2183         (gtk_clist_motion) : start reorder operation if necessary.
2184
2185         * gtk/gtkctree.h :
2186         (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
2187         drag_row, drag_source, drag_target, reorderable, use_icons,
2188         in_drag, drag_rect
2189         (gtk_ctree_set_reorderable) :  deprecated function.
2190         use gtk_clist_set_reorderable instead.
2191         (gtk_ctree_set_use_drag_icons) : deprecated function.
2192         use gtk_clist_set_use_drag_icons instead.
2193
2194         * gtk/gtkctree.c :
2195         (gtk_ctree_class_init): removed object args "reorderable" and
2196         and "use_drag_icons"
2197
2198         (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
2199         (tree_toggle_selection) (set_mouse_cursor) : removed
2200         
2201         (draw_drag_highlight) : new clist method. replacement for
2202         draw_xor_line and draw_xor_rect functions
2203         (check_drag) renamed check_cursor function
2204
2205         (gtk_ctree_drag_begin)
2206         (gtk_ctree_drag_motion)
2207         (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
2208         reorderability via DND
2209
2210         (gtk_ctree_button_release)
2211         (gtk_ctree_button_motion) : removed.
2212
2213         * gtk/testgtk.c:
2214         (create_clist) : added new reorderable toggle button
2215         
2216 Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>
2217
2218         * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use 
2219         base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
2220         used in detergent commercials.
2221
2222 Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>
2223
2224         * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
2225         define from <gtkcompat.h> to <gtklabel.h> for
2226         compatibility.
2227
2228 1998-12-15  Jeff Garzik  <jgarzik@pobox.com>
2229
2230         * configure.in, gdk/Makefile.am, gtk/Makefile.am:
2231         Removed last remaining thread-related configure bits 
2232         that have been moved into GLib.
2233
2234 1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>
2235
2236         * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
2237         as the mask for checking for GDK_INPUT_EXCEPTION events.
2238
2239 1998-12-15  Martin Baulig  <martin@home-of-linux.org>
2240
2241         * acinclude.m4: Make the gettext check for for libc5 systems.
2242
2243         * autogen.sh: Not running gettextize fails on a fresh CVS checkout
2244         and we'll get a lot of bug reports tomorrow, so I add it back.
2245
2246         * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
2247         AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
2248         warnings.
2249
2250 Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>
2251
2252         * acinclude.m4: Provide a hacked version of the
2253           gettext macros that never use the included gettext.
2254          
2255         * Makefile.am configure.in: Remove references
2256           to intl/
2257         
2258         * autogen.sh: Don't run gettextize.
2259
2260 Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>
2261
2262         * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
2263
2264         * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
2265           to label. (Based on patch from Jeff Dairiki
2266           <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
2267
2268         - Adds new function gtk_label_set_line_wrap()
2269         - implement GTK_JUSTIFY_FILL.
2270         - rename gtk_label_set to gtk_label_set_text() add
2271            gtk_label_set() to gtkcompat.h.
2272
2273         * Use an internal wc representation in the label, so
2274           that we handle underlining and line breaks correctly
2275           for multi-byte strings.
2276
2277 Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>
2278
2279         * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
2280
2281         * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
2282
2283         * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed 
2284         GtkDrawWindow, which GTK_USER_DRAW obsoletes.
2285
2286 Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>
2287
2288         * gtk/gtkmain.c: Fixed up some warnings.
2289
2290 Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>
2291
2292         * gtk/gtk{h,v,}paned.{c,h}: Add new functions 
2293         gtk_paned_set_position(),
2294         gtk_paned_pack1/2(). The latter take a
2295         shrink and resize parameters, that allows setting
2296         minimum sizes and getting 'relative' resizing.
2297
2298 Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>
2299
2300         * gdk/gdkevents.c: Keep separate putback_events and 
2301         queued_events queues so that we get both FIFO and 
2302         preemptive behavior for gdk_event_put().
2303
2304 Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>
2305
2306         * gtk/gtkrc.c (gtk_rc_init): Removed unused 
2307         variable, fixed minor memory leak.
2308
2309         * gdk/gdk.c: Fixed another merge problem.
2310
2311 Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>
2312
2313         * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
2314         which crept back in in last commit.
2315
2316 Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
2317
2318         * gtk/Makefile.am: Commented out testthreads from
2319         the build process, since we won't have any idea
2320         how to create a thread.
2321
2322         * configure.in (LIBS): use glib-config ... gthread
2323         so we always build a thread-compatible library.
2324
2325         * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
2326           gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
2327           gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
2328           gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
2329           gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
2330         
2331         Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
2332         and idles to account for the fact that they are no
2333         longer called within the GTK+ lock.
2334
2335         * gtk/gtkprivate.h: Added definitions for locking
2336         the main GTK+ mutex.
2337         
2338         * gtk/gtkmain.c: Re-implement the main loop 
2339         in terms of the GLib main loop.
2340
2341         * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading 
2342         functionality, as it seems better to subsume GDK within the 
2343         GTK+ lock than vice-versa.
2344
2345         * gdk/gdkevents.c: New file, containing event handling bits 
2346         from gdk.c.
2347
2348         * gdk/gdkevents.c: Implement event source for GDK
2349         events.
2350         
2351         * configure.in gdk/gdkevents.c: Removed attempts to 
2352         subtract base_id, which were already non-functional.
2353
2354 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
2355
2356         * acconfig.h
2357         * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
2358
2359         * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
2360         after XShmAttach, and nobody complained
2361
2362 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
2363
2364         * po/de.po: Replaced the crappy german po-file with a valid one.
2365
2366 Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>
2367
2368         * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
2369         suffixes to default rc file names, and look these
2370         up in addition to the base filename, to facilitate
2371         having the correct fontset per-locale.
2372
2373         move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
2374
2375         * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
2376         New function to set a function to translate menu paths.
2377
2378         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
2379         results of g_strsplit().
2380
2381 1998-12-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
2382
2383         * configure.in (ALL_LINGUAS): Added 'pt'.
2384
2385         * po/pt.po: Added Portuguese translation.
2386
2387 Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>
2388
2389         * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
2390         the spinbutton is editable.
2391
2392 Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>
2393
2394         * HACKING: Added gettext-10.35
2395
2396         * autogen.sh: Run gettextize.
2397
2398 Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>
2399
2400         Applied gtk-egger-981010-[12] 
2401         [ Daniel.Egger@t-online.de (Daniel Egger) ]
2402
2403         * gtk/gtkintl.h: New file - defines for localization.
2404
2405         * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
2406         for internationalization.
2407
2408         * gtk/gtkmain.c: call bindtextdomain
2409
2410         * po/ - directory for translations. Initially includes
2411         German translation.
2412
2413 Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>
2414
2415         * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
2416         RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
2417         gtk_widget_real_grab_focus() so a signal is always emitted
2418         if the focus is grabbed on a widget.
2419
2420 Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>
2421
2422         * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
2423         not to delay the submenu popup from a menu item deselection time stamp.
2424         the code looks even more hackish than before, but in practice "feels"
2425         very well.
2426
2427 1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2428
2429         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
2430         signal for widgets.  When the signal is emitted, the widget will
2431         grab the focus.  This is needed to let the user press an
2432         accelerator key in a dialog box and have the corresponding widget
2433         be focused.
2434
2435         * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
2436         signal.  The default handler is simply gtk_widget_grab_focus().
2437
2438 Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>
2439
2440         * docs/gtk_tut.sgml: Update the following sections to the
2441           current API:
2442             - Container Widgets
2443             - CList Widget
2444             - List Widget
2445             - Tree Widget
2446
2447 Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>
2448
2449         * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
2450
2451         * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
2452
2453         * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
2454
2455 Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>
2456
2457         * gtk/gtklayout.c (gtk_layout_unrealize): Mark
2458         child->window as destroyed so we don't destroy
2459         it again.
2460
2461 Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>
2462
2463         * gdk/gdkfont.c (gdk_text_extents): Corrections
2464         to computation of extents of text from a font set.
2465         (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
2466          and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
2467         
2468 Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>
2469
2470         * gtk/gtklistitem.c (gtk_list_item_style_set):
2471         * gtk/gtklist.c     (gtk_list_style_set):
2472         Added "style_set" handlers.
2473
2474 Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>
2475
2476         * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
2477         handler so that the background of the clist changes
2478         with the theme.
2479
2480 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2481
2482         * Released GTK+ 1.1.7
2483
2484         * INSTALL:
2485           NEWS:
2486           README:
2487           configure.in:
2488           gtk+.spec:
2489           gtk/gtkfeatures.h.in: 
2490           docs/gtk-config.1: Version to 1.1.7
2491
2492 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
2493
2494         * gtk/gtkclist.c: avoid void pointer math
2495
2496         * gtk/gtkhscale.c
2497         * gtk/gtkhscrollbar.c
2498         * gtk/gtkvscale.c
2499         * gtk/gtkvscrollbar.c: removed trailing , from enums
2500
2501         * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
2502
2503         * gtk/testgtk.c: removed C++ comment added by owenpoo
2504
2505 Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
2508
2509 Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>
2510
2511         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use 
2512         gdk_window_get_origin() instead of gdk_window_get_position,
2513         because get_position is unreliable for plugs. 
2514
2515         This is a bad hack, maybe we need GDK_WINDOW_PLUG?
2516
2517 Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>
2518
2519         * docs/gtk_tut.sgml:
2520           - re-write the GtkProgressBar section to the 1.1 API.
2521           - add an Appendix listing all the signals
2522             (apologies to TimJ for taking so long in using his hard work
2523              in automating the extraction - thanx Tim). 
2524         * examples/*: bring them all upto the tutorial versions
2525
2526 Thu Dec 10 02:21:16 1998  Jeff Garzik  <jgarzik@pobox.com>
2527
2528         * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
2529         * gtk/testrgb.c: include string.h, for strlen
2530
2531 Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>
2532
2533         * configure.in: Add a case for success in 
2534         test for XUnregisterIMInstantiate, to prevent
2535         screwing up $LIBS.
2536
2537 Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2538  
2539         * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
2540         list and return type for non-XIM fallback.
2541  
2542         * configure.in: Only build XIM-support if available.
2543  
2544 Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>
2545         
2546         * gtk/testselection.c (main): Add in missing 'flags'
2547         field to target list.
2548
2549         * gdk/gdkproperty.c (gdk_atom_intern): Actually
2550         add the atoms to the local cache.
2551
2552 Wed Dec  9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
2553
2554         * gdk/gdkprivate.h: put text after #endif in comment
2555
2556         * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
2557
2558         * gtk/testdnd.c: #include <string.h>
2559
2560 Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
2561
2562         * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
2563         signals through the widget heirarchy. This is unpleasant, as it
2564         causes more X traffic, but is necessary, because we have to clean
2565         up our Input Contexts before destroying the X windows.
2566         (from matsu-981109-0.patch)
2567         
2568 Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
2569
2570         Applied gtk-a-higuti-981202-0 : 
2571         [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
2572         
2573         * gdk/gdk.h gdk/gdk.c
2574                 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
2575                         implemented by a combination of Xlib functions, so
2576                         it works even with X_LOCALE.
2577                 (gdk_wcstombs): New function.
2578                 (g_mbtowc): Removed. No longer needed.
2579
2580         * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c: 
2581                 Added _wc() variants to gdk_text_width(), 
2582                 gdk_char_width(), gdk_draw_text(),
2583                 
2584         * gdk/gdki18n.h
2585                 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
2586                  wcslen, wcscpy, wcsncpy):
2587                         Removed. No longer needed.
2588                 (iswalnum): Removed.
2589                 (gdk_iswalnum): New macro.
2590                 (gdk_iswspace): New macro.
2591         * gdk/gdktype.h
2592                 (GdkWChar): New typedef.
2593         
2594         * gtk/gtkentry.h, gtk/gtkentry.c
2595                 There are many changes according to the change of the
2596                 internal representation of text, from multibyte string
2597                 to wide characters. 
2598         * gtk/gtkprivate.h, gtk/gtkmain.c
2599                 Removed the variable gtk_use_mb and related codes.
2600         * gtk/gtkspinbutton.c
2601                 Some changes according to the change of type of entry->text.
2602         * gtk/gtktext.h, gtk/gtktext.c
2603                 Changed the internal representation of text. We use GdkWchar
2604                 if a fontset is supplied. If not, we use guchar to save
2605                 memory.
2606         
2607 Tue Dec  1 15:20:39 1998  Owen Taylor  <otaylor@redhat.com>
2608
2609         * gdk/gdkwindow.c (gdk_window_new): When creating
2610         a window with a specified non-system visual, use
2611         a matching colormap.
2612
2613 Mon Nov 30 11:50:13 1998  Owen Taylor  <otaylor@redhat.com>
2614
2615         * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
2616           gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
2617           gtk/gtkentry.c gtk/gtktext.c:
2618
2619          Applied matsu-981109-0
2620          [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
2621         
2622          - Change system of setting input method values 
2623            from varargs to a structure, similar to GC's
2624            or window attributes.
2625
2626          - Various fixes to event handling.
2627
2628          Also:
2629
2630          * gdk/gdkim.c: Split of input method stuff into
2631            a separate source file.
2632
2633          * Remove GdkIM typedef, change everything from
2634            GdkIC to GdkIC * to be consistent with the
2635            rest of GTK.
2636         
2637 Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>
2638
2639         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
2640         correct amount of memory for strings.
2641
2642 Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2643
2644         * Released GTK+ 1.1.6
2645
2646         * NEWS: updated
2647
2648         * gtk/Makefile.am:
2649           gtk/testgtk.c:
2650           gtk/gtkrc.h:
2651           gtk/gtkrc.c: Read in default files.
2652
2653 Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>
2654
2655         * gtk/gtktypeutils.h:
2656         * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
2657         allocated structure holding certain type specific informations.
2658         fixed the big bunch of `discards const' warnings with the
2659         initialization of enum/flags values.
2660
2661 Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>
2662
2663         * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
2664         Fixed order of arguments to gdk_window_transient_for().
2665
2666 Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>
2667
2668         * examples/Makefile: simple top level Makefile that invokes all
2669           the sub-directory Makefiles.
2670
2671 1998-12-08  Andrew T. Veliath  <andrewtv@usa.net>
2672
2673         * gtk/testgtk.c: Functions to test the toolbar space style.
2674
2675         * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
2676         GtkToolbarChild to hold allocation. Set default space style to
2677         GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
2678         fraction defaults.
2679         (gtk_toolbar_paint_space_line): New function; paints the separator
2680         line, using "toolbar" as the detail.
2681         (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
2682         style is set to SPACE_LINE.
2683         (gtk_toolbar_size_allocate): Store space allocations.
2684         (gtk_toolbar_insert_element): If we are a space, allocate and
2685         initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
2686         (gtk_toolbar_set_space_style): New function.
2687
2688         * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
2689         and LINE. Add prototype for gtk_toolbar_set_space_style.
2690
2691 Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>
2692
2693         * gtk/gtkthemes.h: Remove random unnecessary includes
2694         of standard headers.
2695
2696 1998-12-07  Damon Chaplin  <DAChaplin@msn.com>
2697
2698         * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
2699         we only try to match styles which are currently shown.
2700
2701         (gtk_font_selection_init): set the notebook tabs homogeneous and set
2702         the border, so we don't need to set the size explicitly (bad for i18n).
2703         Used the clist auto-resize feature for the font and style lists on the
2704         main page and all the filters. Used padding for the 'Reset Filter'
2705         button instead of spaces around it (bad for i18n).
2706
2707         (gtk_font_selection_find_font): when searching for
2708         a font, if we can't match both the family and foundry, we return any
2709         font where just the family matches. (The foundry can even be '*'.)
2710
2711         (gtk_font_selection_show_available_styles): 
2712         (gtk_font_selection_realize_list): don't set the style clist row
2713         colours (for the charset rows) until the clist is realized, since we
2714         use the clist style's insensitive colours.
2715
2716 Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>
2717
2718         * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
2719         _after_ doing XShmAttach. This should work everywhere,
2720         and avoid the need for signal handlers or configure
2721         checks.
2722
2723 Thu Dec  3 19:58:45 1998  Owen Taylor  <otaylor@redhat.com>
2724
2725         * gtk/gtkinputdialog.c: Use _add_with_viewport() for
2726         scrolled window contents.
2727
2728 1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2729
2730         * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
2731         field in the structure.
2732
2733 Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>
2734
2735         * docs/gtk_tut.sgml: Start mass update for GTK 1.1
2736         * examples/extract.sh: Look for the best version of awk
2737         * examples/extract.awk: Fix FD leak
2738         * example/base: minimal example from Tutorial
2739
2740 Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
2741
2742         * gtk/gtkwindow.c: New functions
2743         gtk_window_set_transient_for() - set up a "transient for" relationship.
2744         gtk_window_set_default_size() - set the initial size of a window
2745            distinct from its minimum size.
2746         gtk_window_set_geometry_hints() - Allow the user to set
2747            minimum, maximum sizes, aspect rations, and gridded geometry, 
2748            possibly all with respect to a subwidget of the window.
2749         These interfaces are still a wee bit experimental.
2750
2751         * gdk/gdk.c: Added gdk_window_set_transient_for(),
2752         gdk_window_set_geometry_hints(), and gdk_window_set_role().
2753
2754         * gdk/gdktypes.h: Added new types for find-grained specification
2755         of WM hints.
2756
2757         * gtk/testgtk.c: Various changes to tests to test the
2758         above new functions.
2759
2760         * gtk/gtkfontsel.c: Squash a few 'const' warnings.
2761         
2762         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
2763         call to gtk_style_set_background() to prevent egregious
2764         flashing to black.
2765
2766 Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>
2767
2768         * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
2769         signals, don't pass the data pointer twice, but swap it with the
2770         object pointer (proposed on Nov 30 1998 on gtk-devel-list).
2771
2772 Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>
2773
2774         * gtk/gtktypeutils.h: 
2775         * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
2776         internal type info data to the user. if such functionality is required
2777         we should provide wrapping accessors, ala gtk_signal_query(). also the
2778         GtkTypeInfo structures are dynamically allocated memory portions, so
2779         only the type system is really allowed to access that stuff.
2780
2781         * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
2782         since it destroys the possibility to implement automatic marshaller
2783         lookups some day, and it also disables third party code's ability to
2784         connect to any signal.
2785
2786 Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>
2787
2788         * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
2789         Tab key on the entry. the focus shouldn't get lost even if completion
2790         is attempted from an empty entry, since an empty entry string does
2791         indeed have a valid completion meaning (complete all).
2792         (gtk_file_selection_init): cast the gchar array parameter in calls to
2793         gtk_clist_new_with_titles() to quit compiler warnings.
2794         (check_dir): the no_stat_dirs struct must not be const, since we do
2795         indeed modify its contents.
2796
2797         * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
2798         hook semantics.
2799
2800         * gtk/gtksignal.h:
2801         * gtk/gtksignal.c:
2802         changed emission allocation, so we don't use a doubly linked list
2803         but link ourselfs (singly linked).
2804         changed emission hooks, they get the emision parameters passed as
2805         well now and are emitted during the actuall signal emission (after
2806         the RUN_FIRST class method, but prior to RUN_FIRST handlers).
2807         the existing restrictions do still apply to signal emission hooks,
2808         i.e. an emission may not be stopped or restarted from an emission hook.
2809         due to possibly huge perfomance impacts, frequent use of emision hooks
2810         is also not recommended.
2811         (gtk_signal_next_and_invalidate): added an
2812         assertments which explicits what the code assumes anyways: a
2813         maximum amount of 65535 signals.
2814
2815         * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
2816         gtk_container_foreach_full() should be used instead.
2817
2818         * gtk/gtkmain.h:
2819         deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
2820         we provide _full variants.
2821
2822         * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
2823         gtk_signal_connect_full() for long enough now.
2824
2825 1998-12-06  Marius Vollmer  <mvo@zagadka.ping.de>
2826
2827         * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
2828         (gtk_signal_connect_by_type): Allow only no_marshal handlers to
2829         connect to signals with a NULL marshaller.
2830
2831         * gtk/gtktypeutils.c (gtk_type_get_info): New.
2832         gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
2833
2834 Sun Dec  6 14:27:35 1998  Stefan Jeske  <stefan@gtk.org>
2835
2836         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
2837         arrows if wrap == FALSE and interval borders are reached.
2838
2839 Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>
2840
2841         * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
2842         long-standing typo in aspect ratio computation code.
2843         (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
2844
2845 Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>
2846
2847         * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
2848         valid row numbers only
2849         (toggle_row): check if clist_row != NULL
2850
2851 Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>
2852
2853         * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
2854
2855         * gtk/gtkclist.c 
2856         (gtk_clist_set_column_visibility)
2857         (gtk_clist_column_titles_active)
2858         (gtk_clist_column_titles_active)
2859         (gtk_clist_column_title_passive)
2860         (gtk_clist_column_title_active): few additional tests whether
2861         column->button != NULL
2862
2863 Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>
2864
2865         * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
2866         from 10 seconds, so it doesn't abort while users
2867         have an ACTION_ASK menu up.
2868
2869         * gtk/gtkdnd.c: Hide the icon window between sending a a 
2870         drop event to the destination and displaying the
2871         snapback animation, so that it doesn't hang around
2872         during ACTION_ASK.
2873
2874 Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>
2875
2876         * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
2877         for the foreground of cells for CLists in the insensitive
2878         state, instead of GTK_STATE_PRELIGHT.
2879
2880 Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>
2881
2882         * gtk/gtkwindow.c: moved checks upon focus setting from
2883         gtk_window_real_set_focus to gtk_window_set_focus, so we don't
2884         emit the signal if unneccessary.
2885
2886         * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
2887         containers when grabbing focus on a new widget. this is based on
2888         a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
2889
2890         * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
2891         flag, so we take the buttons into consideration upon the next focus
2892         request.
2893
2894         * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
2895         assertment.
2896
2897 Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2898
2899         * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
2900           enhancement for true-color displays.
2901
2902         * INSTALL:
2903           README:
2904           configure.in:
2905           gtk+.spec:
2906           docs/gtk-config.1: up to version 1.1.6
2907
2908 Wed Dec  2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
2909
2910         * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
2911         we release it this time
2912
2913 Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>
2914
2915         * gtk/gtknotebook.h: 
2916         * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
2917
2918         * incremented version number to 1.1.6 and made Gtk
2919         dependant on GLib 1.1.6.
2920
2921         * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
2922         from guint16 to gint16, since sizes bigger than 32767 are not supported
2923         anyways, and aritmethics with intermediate negative values are possible
2924         now.
2925
2926 Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>
2927
2928         * gtk/gtkscrolledwindow.c:
2929         implementation of GTK_POLICY_NEVER functionality, added rationales
2930         on the policy and size requisition handling at the top.
2931         (gtk_scrolled_window_size_request):
2932         we assume a default minimum for our child's width and height
2933         if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
2934         specified the dimension explicitely.
2935         (gtk_scrolled_window_size_allocate): 
2936         do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
2937
2938         * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
2939         size we require (including the child).
2940
2941         * gtk/gtkclist.c:
2942         (gtk_clist_size_request): report the real size required.
2943
2944         * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
2945
2946         * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
2947         need to be a static variable.
2948
2949 Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>
2950
2951         * gtk/gtkclist.h: 
2952         * gtk/gtkclist.c: 
2953         * gtk/gtkviewport.h:
2954         * gtk/gtkviewport.c:
2955         * gtk/gtktext.h:
2956         * gtk/gtktext.c:
2957         * gtk/gtklayout.h:
2958         * gtk/gtklayout.c:
2959         * gtk/gtkwidget.h:
2960         * gtk/gtkwidget.c:
2961         * gtk/gtkscrolledwindow.h:
2962         * gtk/gtkscrolledwindow.c:
2963         s/scroll_adjustements/scroll_adjustments/
2964         s/scroll_adjustments/set_scroll_adjustments/g
2965
2966 Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>
2967
2968         * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
2969         row_move.
2970         * gtk/gtkclist.c (gtk_clist_row_move): new public function.
2971         emit a row_move signal
2972         (real_row_move): move source_row to dest_row
2973         (gtk_clist_swap_rows): use gtk_clist_row_move calls.
2974         (gtk_clist_columns_autosize): resize all columns to their optimal
2975         width
2976         * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
2977         entire sub-tree.
2978         * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
2979
2980 Tue Dec  1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
2981
2982         * configure.in
2983         * gdk/Makefile.am
2984         * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
2985         Separate vars for each, for granularity.
2986
2987 Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>
2988
2989         * gtk/gtkenums.h: fixed a stupid error of mine about the run type
2990         values.
2991
2992 1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
2993
2994         * {gdk,gtk}/*.c: Make read-only data structures "static const" to
2995         allow them to be shared, mainly including (but not limited to) the
2996         GtkTypeInfo structures for each class.
2997
2998         * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
2999
3000 Mon Nov 30 12:17:10 1998  Jeff Garzik  <jgarzik@pobox.com>
3001
3002         * gtk/gtksignal.c:
3003         Surround debug variable with #ifdef to silence gcc.
3004
3005         * gtk/gtknotebook.c (gtk_notebook_reorder_child):
3006         Added initializer to quiet gcc warning.
3007         Added assertion to check for null pointer deref.
3008
3009 Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>
3010
3011         * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
3012         system specific includes.
3013
3014         * gtk/gtksignal.c: asured that stop and restart emissions are also
3015         checked and processed for not connected objects. fixed up restart
3016         emission administration. invoke emission hooks after emission, hooks
3017         are not supposed to muck around with the current emission, and
3018         may also not cause emission restarts. fixed up stop emission
3019         administration.
3020
3021 Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>
3022
3023         * gtk/testgtk.c: added an event watcher for enter/leave based on
3024         signal emission hooks.
3025
3026         * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
3027         GTK_RUN_NO_HOOKS signal.
3028
3029         * gtk/gtksignal.h: 
3030         * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
3031         to a signal with gtk_signal_add_emission_hook or
3032         gtk_signal_add_emission_hook_full, and can be removed again with
3033         gtk_signal_remove_emission_hook.
3034
3035         * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
3036         an appropriate mask for signal runtypes for a long time now.
3037         added GTK_RUN_NO_HOOKS value, which is used to flag signals
3038         that do not allow the running of signal hooks.
3039
3040 1998-11-26  Michael Krause  <m.krause@tu-harburg.de>
3041
3042         * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
3043         argument a gint: switch_page signal delivers valid page numbers
3044         again.
3045
3046 Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>
3047
3048         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment): 
3049         set composite names.
3050
3051         * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
3052         check, people must use gtk_type_init().
3053         fixed up type allocation for foreign fundamentals.
3054
3055         * gtk/gtkwidget.h: 
3056         * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
3057         for internal use by containers, that want to assign specific composite
3058         names to their composite children.
3059         added gtk_widget_get_composite_name() which will return a newly
3060         allocated string, containing the composite name of a widget. valid
3061         composite names can only be retrived from widgets that have a parent
3062         assigned and are flagged as GTK_COMPOSITE_CHILD.
3063
3064         * gtk/gtkcontainer.h:
3065         * gtk/gtkcontainer.c: added a new function
3066         gtk_container_child_default_composite_name() which will return a
3067         newly allocated string, holding the composite name of a containers
3068         child. a default implementation is provided which will compose the
3069         composite name out of the widgets type and its sequential children
3070         id. this implementation can be overidden through a new class function
3071         *(composite_name)().
3072
3073 Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>
3074
3075         * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
3076         expose_event handler - we had two expose_event
3077         handlers!
3078
3079 Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>
3080
3081         * gtk/gtkscrolledwindow.h: 
3082         * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
3083         it inherits from GtkBin now.
3084
3085         * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
3086         visibility of child.
3087         (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
3088         added check so a child gets only drawn if it's visible.
3089
3090         * gtk/gtkwidget.h: 
3091         * gtk/gtkwidget.c: removed gtk_widget_draw_children().
3092
3093         * gtk/gtkstyle.h: 
3094         * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
3095
3096         * gtk/gtkwidget.h: 
3097         * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
3098         added internal function gtk_widget_reset_shapes() from gtkstyle.c.
3099
3100         * gtk/gtkrc.h:
3101         * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
3102         argument, changed callers.
3103
3104         * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
3105         it will issue a warning now.
3106
3107         * gtk/gtkcompat.h: new file to #define aliases for historic
3108         function names.
3109
3110         * changed 8 function names for consistency and provided aliases to keep
3111         source compatibility in gtkcompat.h:
3112         (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
3113         (gtk_container_set_border_width): renamed from gtk_container_border_width
3114         (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
3115         (gtk_packer_configure): renamed from gtk_packer_set_child_packing
3116         (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
3117         (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
3118         (gtk_scale_get_value_width): renamed from gtk_scale_value_width
3119         (gtk_window_set_position): renamed from gtk_window_position
3120
3121         * renamed a few recently added funtions for consistency:
3122         (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
3123         (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
3124         (gtk_progress_configure): renamed from gtk_progress_reconfigure.
3125
3126 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
3127
3128         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
3129         check for existing viewport first, and don't add one if there
3130         already is one
3131
3132 Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>
3133
3134         * gtk/gtkwidget.h: 
3135         * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
3136         gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
3137         and gtk_widget_unlock_accelerators.
3138
3139         * gtk/gtklayout.h:
3140         * gtk/gtklayout.c: implemented incremental freezing facility.
3141
3142         * gtk/gtktext.h: 
3143         * gtk/gtktext.c: implemented incremental freezing facility.
3144
3145         * gtk/gtkenums.h:
3146         * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
3147
3148         * gtk/gtkentry.h:
3149         * gtk/gtkentry.c:
3150         deprecated gtk_entry_adjust_scroll().
3151         
3152         * random GtkType, macro and indentation fixes.
3153
3154 Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>
3155
3156         * gtk/gtkclist.h: 
3157         * gtk/gtkclist.c: implemented incremental freezing facility, added
3158         a new class member (*refresh)() which takes over the thaw
3159         functionality. the clist FROZEN flag got removed on the way.
3160         * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
3161         and incremental freezing.
3162
3163         * gtk/gtkcalendar.c: implemented incremental freezing facility.
3164
3165 Fri Nov 27 11:41:27 1998  Raph Levien  <raph@gimp.org>
3166
3167         * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
3168         it still includes the core pointer in gdk_input_devices even
3169         if the XInput extension is not present in the X server.
3170
3171 Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>
3172
3173         * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
3174         get the source widget of a drag.
3175
3176         * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
3177         to restrict certain targets to the same widget or to
3178         the same application.
3179
3180         * gtk/testdnd.c: Test gtk_drag_get_source_widget().
3181         
3182 Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>
3183
3184         * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
3185         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
3186         instead of GTK_TYPE_POINTER in signal definitions.
3187         (patch from James Henstridge <james@daa.com.au>)
3188
3189 Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>
3190
3191         * gtk/gtkclist.c (set_cell_contents)
3192         * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
3193         if auto.resize == TRUE
3194
3195         * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
3196         don't draw tab, if show_tabs == FALSE
3197         (bug reports from Alexis Mikhailov / Dave Cole)
3198         (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
3199         the focus rectangle, not the hole tab.
3200
3201 Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>
3202
3203         * gtk/gtkclist.h: 
3204         * gtk/gtkctree.h: 
3205         * gtk/gtkclist.c:
3206         * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
3207         Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
3208
3209         * gtk/maketypes.awk: changed underline substitution, so we get
3210         GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
3211         * gtk/makeenums.pl: likewise.
3212         * gtk/gtkctree.c: adapted type names accordingly.
3213
3214 Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>
3215
3216         * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
3217
3218         * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
3219         some code duplication.
3220
3221         * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
3222         and child widgets when scrolling greater than 32k pixels.
3223
3224         * testgtk.c: Modified layout test to test scrolling over 
3225         long distances.
3226
3227         * gtk/gtkplug.c: Added a few blank lines.
3228
3229 Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>
3230
3231         * gtk/gtklayout.[ch]: Fixed up copyright message.
3232
3233         * gdk/gdkrgb.c (DM): Make the dither matrix constant
3234         so it can be shared.
3235
3236         * gtk/gtkdnd.c: Make cursor bitmaps const.
3237
3238         * gdk/gdk.h gdk/gdkpixmap.c: Added const to 
3239         gdk_pixmap/bitmap_create_from_data.
3240
3241 Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>
3242
3243         * docs/Changes-1.2.txt: added a section on scrolled windows and
3244         scrollable widgets.
3245
3246 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
3247
3248         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
3249         buttons when setting relief for button items.
3250         (gtk_toolbar_set_button_relief): Same.
3251
3252 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
3253
3254         * gdk/Makefile.am, gtk/Makefile.am:
3255         Removed DEFS "+=" mess that breaks recent automakes.
3256         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
3257
3258         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
3259         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
3260         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
3261         gtk/testthreads.c:
3262         Include "config.h" instead of "../config.h".
3263         Now that DEFS works again, automake will automatically pass us
3264         the location of config.h in -I.
3265
3266 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
3267
3268         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
3269         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
3270
3271         Added layout widget for scrolling arbitrarily big areas.
3272         Added plug/socket widgets for interprocess embedding.
3273
3274         These widgets still, at some point, need to be
3275         made more pure in their use of GDK, as opposed
3276         to raw X.
3277
3278         * gtk/testgtk.c: Added test for layout widget.
3279         
3280 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
3281
3282         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
3283         Brandon Long <blong@fiction.net> - do the right thing with first
3284         and last, which are the absolute values of row arguments row1
3285         and row2.
3286
3287 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
3288
3289         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
3290         default adjustment (from 0 to 100) instead. I'm not sure if this
3291         is the correct level for the fix, but gtk_progress_bar_new()'s
3292         original default behavior is restored.
3293
3294 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
3295
3296         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
3297         we can check for latest GTK features.
3298
3299 1998-11-23  Havoc Pennington  <hp@pobox.com>
3300
3301         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
3302         (gtk_toolbar_insert_element): When setting relief, also affect
3303         toggle buttons.
3304
3305 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
3306
3307         * gtk/gtkobject.h: remove extraneous comma
3308
3309 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
3310
3311         * gtk/gtkcontainer.c:
3312         (gtk_container_add_with_args): 
3313         (gtk_container_addv): 
3314         (gtk_container_add): removed assertements for constructed containers
3315         again, since this essentially breaks the "child" arg.
3316
3317         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
3318         reference count, we don't need to reference toplevels that already have
3319         destroy notifiers.
3320
3321         * gtk/gtkscrolledwindow.c: check for the composites existance in
3322         _forall since we might not be already constructed.
3323
3324 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3325
3326         * Released GTK+ 1.1.5
3327
3328         * configure.in: require GLib 1.1.5
3329
3330 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
3331
3332         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
3333         2 * hadj.
3334         (gtk_text_finalize): only unref the current_font if we have
3335         been realized.
3336
3337 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3338
3339         * configure.in:
3340           INSTALL:
3341           NEWS:
3342           README:
3343           gtk+.spec:
3344           docs/gtk-config.1: Version incremented to 1.1.5
3345
3346 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
3347
3348         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
3349         ::text_yalign, ::activity_mode.
3350
3351         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
3352         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
3353         ::activity_blocks.
3354         (gtk_progress_bar_new):
3355         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
3356         (gtk_progress_bar_construct): deprecated.
3357
3358         * gtk/gtkvscrollbar.c:
3359         (gtk_vscrollbar_draw_step_back): 
3360         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
3361         gtk_paint_arrow, to be consistent with hscrollbar.
3362
3363         * gtk/gtktext.c
3364         added construct args ::hadjustment, ::vadjustment.
3365         added args ::line_wrap, ::word_wrap.
3366         (gtk_text_class_init): added scroll_adjustments signal.
3367         (gtk_text_new): use gtk_widget_new.
3368         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
3369         so we don't screw the reference counts and don't leave signals connected.
3370         (gtk_text_destroy): disconnect adjustments signals.
3371         (gtk_text_finalize): unref adjustments.
3372
3373         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
3374         added args ::indent, ::spacing, ::show_stub, ::reorderable,
3375         ::use_drag_icons, ::line_style and ::expander_style.
3376         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
3377         deprecated now.
3378
3379         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
3380         * gtk/gtkclist.c:
3381         removed ::vadjustment and ::hadjustment args, introduced
3382         ::scroll_adjustments signal.
3383         added ::shadow_type, ::selection_mode and ::row_height args.
3384         added n_columns construct arg.
3385         (gtk_clist_construct): call gtk_object_constructed().
3386         (gtk_clist_set_row_height): if height is passed as 0,
3387         revert to automatic height calculation.
3388         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
3389         signal handlers.
3390
3391 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
3392
3393         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
3394         like gtk_object_new.
3395         (gtk_widget_destroy): assert that we only destroy constructed widgets.
3396
3397         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
3398         to identify args that may only be used for construction.
3399         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
3400         time.
3401         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
3402         at the end if the object is not fully constructed.
3403         (gtk_object_newv): likewise.
3404         (gtk_object_destroy): assert that we only destroy constructed objects.
3405         (gtk_object_init): setup GTK_CONSTRUCTED from the
3406         objects real klass.
3407         (gtk_object_default_construct): new function to complete default
3408         construction of an object by applying missing construtor args with
3409         default values of 0, 0.0 or NULL.
3410         (gtk_object_constructed): new function to mark an object as being
3411         constructed (used from within constructors).
3412
3413         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
3414         so it is immediatedly available for the caller.
3415
3416         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
3417         the object initilizer (GtkObjectInitFunc takes a second arg now, the
3418         real klass), and asure that object initializers may temporarily alter
3419         the class pointer.
3420
3421 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
3422
3423         * gtk/testgtk.c: change all occourances of gtk_container_add (
3424         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
3425         for widget!=(clist, ctree, text, viewport).
3426
3427         * gtk/gtkcombo.c:
3428         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
3429         to add children to the scrolled window.
3430
3431         * gtk/gtkscrolledwindow.h:
3432         * gtk/gtkscrolledwindow.c:
3433         changed scrolled_window->viewport to scrolled_window->child, and use
3434         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
3435         widget, we do not create an additional viewport anymore.
3436         added ::hadjustment and ::vadjustment constructor args.
3437         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
3438         (gtk_scrolled_window_set_hadjustment):
3439         (gtk_scrolled_window_set_vadjustment): new functions that superceed
3440         gtk_scrolled_window_construct.
3441         (gtk_scrolled_window_construct): deprecated this function.
3442         
3443         * gtk/gtkhscrollbar.c:
3444         * gtk/gtkvscrollbar.c:
3445         * gtk/gtkhscale.c:
3446         * gtk/gtkvscale.c:
3447         support a constructor arg "::adjustment", and use gtk_widget_new() for
3448         the widget creation.
3449
3450         * gtk/gtkrange.c: added ::update_policy arg.
3451         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
3452         a default adjustment so this function can be used for derived widgets
3453         that depend on the adjustment's existance.
3454         (gtk_range_destroy): disconnect the adjustment signal, so we don't
3455         get called after we got destroyed, we don't destroy the adjustment
3456         in here, because it might have been provided from another widget.
3457
3458         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
3459         (gtk_viewport_destroy): same as gtk_range_destroy.
3460
3461         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
3462
3463         * gtk/gtkwidget.h: 
3464         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
3465         gboolean, indicating whether this widget supports activation.
3466         added gtk_widget_scroll_adjustements() to set the scrolling
3467         adjustments of a widget.
3468
3469 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
3470
3471         * gtk/gtkoptionmenu.c:
3472         (gtk_option_menu_remove_contents):
3473         (gtk_option_menu_update_contents): removed
3474         gtk_container_[un]block_resize() pairs.
3475
3476         * gtk/gtknotebook.h: 
3477         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
3478         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
3479         wrtie-only argument.
3480
3481         * *.c: made deprecated functions issue a message:
3482         gtk_clist_set_border, gtk_container_block_resize,
3483         gtk_container_unblock_resize, gtk_container_need_resize,
3484         gtk_object_class_add_user_signal, gtk_spin_button_construct,
3485         gtk_scrolled_window_construct.
3486         removed non-functional functions:
3487         gtk_container_disable_resize, gtk_container_enable_resize,
3488         gtk_clist_set_policy.
3489
3490 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
3491
3492         * gtk/gtkbox.c (gtk_box_init): 
3493         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
3494         * gtk/gtkeventbox.c (gtk_event_box_init): 
3495         * gtk/gtkfixed.c (gtk_fixed_init): 
3496         * gtk/gtkframe.c (gtk_frame_init): 
3497         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
3498         * gtk/gtkpacker.c (gtk_packer_init): 
3499         * gtk/gtkmisc.c (gtk_misc_init): 
3500         * gtk/gtkpreview.c (gtk_preview_init): 
3501         * gtk/gtkprogress.c (gtk_progress_init): 
3502         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
3503         * gtk/gtkseparator.c (gtk_separator_init): 
3504         * gtk/gtktable.c (gtk_table_init): 
3505         * gtk/gtkviewport.c (gtk_viewport_init): 
3506         * gtk/gtkalignment.c (gtk_alignment_init): 
3507         removed setting of the GTK_BASIC flag.
3508
3509         * gtk/gtkwidget.h:
3510         * gtk/gtkwidget.c:
3511         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
3512
3513         * miscellaneous GtkType and macro fixups.
3514
3515 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
3516
3517         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
3518         Fixed so it at least works with window managers other
3519         than Enlightenment, though it probably needs to be
3520         removed altogether.
3521
3522 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
3523
3524         * gtk/gtkhandlebox.[ch]: Add shadow_type and
3525         gtk_handle_box_set_shadow_type function (plus a
3526         GtkHandleBox::shadow arg) to allow configuration of shadow in the
3527         bin window.
3528
3529 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3530
3531         * gtk/gtkcalendar.c: Fix for marking days from 
3532           Dan Reish <dreish@izzy.net>.
3533
3534 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
3535
3536         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
3537         in row_list. (from Samuel Solon <ssolon@usa.net>)
3538         
3539         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
3540         (gtk_clist_get_column_widget): return column widget
3541
3542 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
3543
3544         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
3545         that are sent to a toplevel but are not within the
3546         toplevels bounds.
3547
3548         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
3549         XdndProxy atom which proxies the drag to another window.
3550
3551 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3552
3553         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
3554         that it is not needed.
3555
3556 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
3557         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
3558           function to correctly determine gdk window position relative to
3559           its "root window" - contains check for an Enlightenment
3560           virtual root window.
3561         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
3562           gdk_window_get_deskrelative_origin to get the origin of dragged
3563           handleboxes correctly. Now it works correctly with E.
3564           
3565 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
3566
3567         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
3568           getting types even though we were not using real type names,
3569           just the index.  This caused random crashes when more than 
3570           256 types were defined.
3571
3572 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
3573
3574         * gtk/genmarshal.pl: Put output files in the current directory
3575         and not in the $(srcdir) since the VPATH is ignored for built
3576         sources.
3577
3578 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
3579
3580         * gtk/genmarshal.pl
3581         * gtk/Makefile.am: check for unchanged autogenerated files, so
3582         we don't rebuild everything just for adding a new function
3583
3584 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
3585
3586         * gtk/gtkpixmap.h
3587           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
3588           code thanks to GNOME stock by Eckehard Berns.  New function
3589           gtk_pixmap_set_build_insensitive to provide ability to turn 
3590           this off.
3591
3592 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
3593
3594         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
3595         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
3596         (struct _GtkNotebookPage): new flags : expand, fill, pack
3597
3598         * gtk/gtknotebook.h/c
3599         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
3600         tabs
3601         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
3602         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
3603         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
3604         (gtk_notebook_query_tab_label): new function. get tab_label widget.
3605         (gtk_notebook_set_tab_label): new function. set tab_label widget.
3606         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
3607         (gtk_notebook_query_menu_label): new function. get tab_label widget.
3608         (gtk_notebook_set_menu_label): new function. set tab_label widget.
3609         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
3610         (gtk_notebook_set_tab_label_packing): new function. set tab_label
3611         fill, expand, fill_type
3612         (gtk_notebook_query_tab_label_packing): new function. get tab_label
3613         fill, expand, fill_type
3614
3615         (gtk_notebook_real_page_position): return logic page number
3616         (gtk_notebook_search_page) search next/prev logic page
3617         (gtk_notebook_update_labels): set logic page number.
3618         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
3619         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
3620         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
3621         (gtk_notebook_button_press) (gtk_notebook_key_press)
3622         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
3623         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
3624         use gtk_notebook_search_page
3625         (gtk_notebook_page_allocate): fixed allocation bug
3626         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
3627         (gtk_notebook_init): unset GTK_NO_WINDOW flag
3628         (gtk_notebook_size_request): check whether page->child is visible.
3629         changes due to tab h/vborder, homogeneous tabs
3630         (gtk_notebook_paint): don't draw invisible tabs
3631         (gtk_notebook_switch_page): calculate page_num if it's less than 0
3632         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
3633         (gtk_notebook_insert_page): removed sanity checks
3634
3635         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
3636
3637 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
3638
3639         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
3640         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
3641
3642         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
3643         broken. (GtkWidget's default unmap handler should work fine).
3644         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
3645
3646 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
3647
3648         * gtk/gtkmenubar.[ch]: added shadow_type setting and
3649         gtk_menu_bar_set_shadow_type function to allow shadow
3650         configurability for menubars
3651
3652         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
3653         guint
3654
3655 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
3656
3657         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
3658         class creation and parent class' object initializer.
3659
3660 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3661
3662         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
3663         have assigned it to the window -- there is no point in keeping it around.
3664         (gtk_paned_unrealize): No need to destroy the cursor here.
3665
3666         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
3667         it is not needed.
3668
3669 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
3670
3671         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
3672         (gtk-blizzard-981005-0. 
3673          Christopher Blizzard <blizzard@applied-theory.com)
3674
3675         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
3676         gdk_pixmap_foreign_new to gdkx.h.
3677
3678 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
3679
3680         * gtk/Makefile.am: Added rules to generate an empty
3681         GTK+ theme called "Default" upon installation.
3682         
3683         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
3684         of fonts and fontsets. 
3685         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
3686
3687         * gtk/gtkmain.c: Change test to detect glibc's
3688         utf8 based mb* functions to be more specific.
3689
3690         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
3691         cleanups.
3692
3693 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
3694
3695         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
3696         show event_window
3697         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
3698         event_window if draw_indicator is set
3699         (gtk_toggle_button_set_mode):
3700
3701 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
3702
3703         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
3704         ensure proper type (SunPro cc complains)
3705
3706         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
3707
3708         * gtk/gtktogglebutton.c: use our own draw method so we get proper
3709         redraws on active state
3710
3711 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
3712
3713         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
3714         defines.
3715
3716         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
3717         GTP_POS_RIGHT
3718
3719 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
3720
3721         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
3722         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
3723         added ARG_WINDOW_PLACEMENT
3724
3725         * gtk/gtkclist.c (size_allocate_columns): resize column if column
3726         button > column width and auto_resize is set
3727         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
3728         consider column button width of auto resized columns
3729         (gtk_clist_parent_set): removed 
3730
3731         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
3732         (auto_resize_columns): auto_resize all columns
3733         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
3734         (column_auto_resize): respect column button width of auto resized
3735         columns
3736
3737 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
3738
3739         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
3740         we can check for latest GTK features.
3741
3742 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
3743
3744         * gtk/gtkenums.h : new enum GtkCornerType 
3745         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
3746         window_placement.
3747         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
3748         new method to set window_placement.
3749         (gtk_scrolled_window_viewport_allocate)
3750         (gtk_scrolled_window_size_allocate): few changes due to
3751         window_placement.
3752         * gtk/testgtk.c (remove_selection): fixed while loop.
3753
3754 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
3755
3756         * gtk/gtkclist.c: check if column[i].button is valid before calling
3757         gtk_widget_intersect on it in gtk_clist_draw
3758
3759         * gtk/gtkdnd.c: removed unused variable empty_bits
3760
3761         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
3762
3763         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
3764         a boolean (thanks to Elrond for noticing this)
3765
3766 1998-11-07  Jay Cox  <jaycox@earthlink.net>
3767
3768         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
3769         * gdk/gdkxid.c: declare xid_ht static
3770         * examples/*/Makefile: get the link ordering right.
3771
3772 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
3773
3774         * gtk/gtkclist.c (gtk_clist_realize): Set background of
3775         title button window to GTK_STATE_NORMAL instead of
3776         GTK_STATE_SELECTED to avoid ugly flicker.
3777
3778 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
3779
3780         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
3781         if adjustments are NULL and list size has changed
3782         (gtk_clist_size_request): return real list requsition,
3783         if adjustments are NULL.
3784         (size_allocate_columns): use button->requisition.with, if column
3785         width is not set.
3786         (list_requisition_width): new function. return full list width.
3787         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
3788         auto create adjustments.
3789         (gtk_clist_motion) (move_vertical) (move_horizontal):
3790         check adjustment != NULL.
3791
3792 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
3793
3794         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
3795         a clear/redraw, not just a redraw, so the focus
3796         gets undrawn properly.
3797
3798         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
3799         Chain to gtk_widget_unrealize() instead of duplicating
3800         code.
3801
3802 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
3803
3804         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
3805         last vestiges of old DND.
3806
3807 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
3808
3809         * gtk/gtkentry.c: Restored inner border to entries,
3810         erase cursors to background image.
3811
3812 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
3813
3814         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
3815         it was identical to paint_flat_box().
3816
3817         * gtk/gtkstyle.c: Coding style fixups.
3818
3819         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
3820         test.
3821
3822         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
3823         Change 'side' for paint_[box/shadow]_gap and paint_extension
3824         to be GtkPositionType instead of a random int.
3825
3826         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
3827         "frame" as detail - an aspectframe should draw identical
3828         to a frame.
3829
3830 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
3831
3832         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
3833         from combine_child_shapes().
3834
3835         * gdk/gdkwindow.c: Merge propagate_shapes() and
3836         propagate_combine_shapes() to remove code duplication.
3837
3838 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
3839
3840         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
3841         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
3842         So allocate some mem if it's not already done.
3843
3844         * clist scrollbar merges from HEAD
3845
3846 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
3847
3848         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
3849
3850         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
3851         of 0x80000000, so we stay within the bounds of a postive signed
3852         int (it broke some compilers)
3853
3854         * gtk/gtkmenushell.c
3855         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
3856         when some of the menuitems are hidden
3857
3858         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
3859         care of that
3860
3861         * gtk/gtkwidget.c: add a dummy continue after the line label
3862         next_rect, since some compilers don't like label: }
3863
3864 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
3865
3866         * Okay, so we need the X11R6 keysyms so programs don't have to
3867         worry about them. They don't conflict anyway. Reverted the #ifdef
3868         changes to gtk/*.c
3869
3870         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
3871         special rule for them (X-derived-headers)
3872
3873 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
3874
3875         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
3876         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
3877         portable, and we really shouldn't be using awk anyway.
3878
3879         * makecursors.awk
3880         * makekeysyms.awk: bye bye
3881
3882         * gtk/gtkaccelgroup.c
3883         * gtk/gtkclist.c
3884         * gtk/gtknotebook.c
3885         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
3886
3887 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
3888
3889         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
3890         and gdkkeysyms.h. Remove those files from CVS.
3891
3892 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
3893
3894         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
3895         of the USE_XIM #ifdef
3896
3897         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
3898         even with --include-deps. Slightly different from timj's fix, to avoid
3899         circular dependency with gtkmarshal.c
3900
3901         * autogen.sh
3902         * gtk/gtkclist.[ch]
3903         * gtk/gtkctree.c
3904         * gtk/gtkfontsel.[ch]
3905         * gtk/gtklist.c
3906         * gtk/gtklistitem.c
3907         * gtk/gtkobject.[ch]
3908         * gtk/testgtk.c: merges from HEAD
3909
3910         * gtk/gtkmenubar.c
3911         * gtk/gtkradiomenuitem.c
3912         * gtk/gtktreeitem.c: cleanups
3913
3914 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
3915
3916         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
3917
3918 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
3919
3920         * configure.in: AIX has libpthreads, to make sure you can have
3921         more than one thread. Also add -D_THREAD_SAFE, and reorder
3922         configure.in so CFLAGS doesn't get clobbered when we actually
3923         want to modify it
3924
3925         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
3926         in gdk_image_get
3927
3928         * gtk/testdnd.c: removed unused variable "buf"
3929
3930 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
3931
3932         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
3933         remove_link(), not remove()
3934
3935 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
3936
3937         * gdk/gdkrgb.c: use glib endian stuff
3938
3939         * configure.in: don't need to check for endianness anymore
3940
3941         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
3942
3943 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
3944
3945         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
3946         all toplevel widgets, not toplevel windows. (I.e.,
3947         plugs should be reset)
3948
3949         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
3950         _do_ need to notify the other toplevels - by the time
3951         the get the client messages, the RC file dates will
3952         have been updated.
3953
3954         * gtk/gtkcontainer.h: Added a function call to list
3955         every toplevel widget.
3956
3957         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
3958         Don't send client messages to _every_ window on display!
3959         
3960 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
3961
3962         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
3963         when dragging across widgets, only in drags
3964         starting in widget.
3965
3966 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
3967
3968         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
3969         Emit "drag_end" signal at end of drag.
3970
3971 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
3972
3973         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
3974         for "gtk-embedded" data currently set by 
3975         GtkSocket, and use that to forward client message
3976         on to embedded windows. Only reset our own toplevel -
3977         the others will handle themselves. (Now that
3978         GtkMenus live in GtkWindows)
3979
3980 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
3981
3982         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
3983         client window finding code so that it works with
3984         WM's other than fvwm.
3985  
3986 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
3987
3988         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
3989         the "GtkDrawWindow" class, which is a descendent
3990         of the Window class which leaves its background alone.
3991         Essentially, a toplevel drawing area, though it does
3992         allow adding a child.
3993
3994 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
3995
3996         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
3997         merging RC styles. Report new share/themes path for
3998         themes directory. Deref theme engines when appropriate.
3999
4000         * gtk/gtkclist.c: Set all backgrounds in _style_set().
4001         Make sure that pixel for xor_gc is never 0.
4002
4003         * gtk/gtkctree.c: Choose colors for plus/minus more
4004         carefully, in a hopefully style-independent fashion.
4005         (Still needs a bit more work)
4006
4007         * gtk/gtkwidget.c: Don't send expose events to widgets
4008         which are about to be resized and redrawn. (Needs a
4009         bit more thought.)
4010
4011         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
4012         drawing on tabs for newly allocated, un-sized
4013         pages - we'll get the size wrong.
4014
4015 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
4016
4017         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
4018         up stupidities in last commit.
4019
4020 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
4021
4022         * gtk/gtkwidget.c: When handling queued resizes, account
4023         for handleboxes, where the widget heirarchy is different
4024         than the window heirarchy by just queueing a resize on
4025         the entire handlebox if the detached child is changed.
4026
4027         - Remove widgets from the redraw queue when reparenting,
4028         even if not unrealizing. We queue a resize/redraw in
4029         any case.
4030
4031 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
4032         * gtk/gtkstyle.c: added check to see if the widget has been shaped
4033         byt the app via gtk_widget_shape_combine_mask and if it has does
4034         not reset the shape on theme change.
4035         
4036 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
4037
4038         * gtk/gtkfilesel.c: Keep a list of directories in which we never
4039         want to stat the entries (like /afs), and assume everything in
4040         those directories is a subdirectory.
4041
4042         - When following a path, try to open components even when
4043         we don't find them in their parent's directory to
4044         support automounters.
4045
4046 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
4047
4048         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
4049         now at least compiles again.
4050
4051         * gdk/gdk.c (gdk_event_translate): Don't pass events
4052         on destroyed widgets to the gdk_input layer.
4053
4054 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
4055
4056         * gtk/gtkthemes.c: Use g_module instead of dlopen()
4057
4058 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
4059
4060         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
4061         if we've changed widgets since the expose event
4062         was queued.
4063
4064 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
4065
4066         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
4067         to restore approximate bin compatibility with the
4068         non-themes branch. (This does break bin compat
4069         within the themes branch.)
4070
4071 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
4072
4073         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
4074         gdk_window_clear_area() that snuck in with the
4075         menu underlines merge.
4076
4077 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gtk/gtktext.c: Fixed some remaining background drawing,
4080           merges from main branch, cleanups.
4081
4082 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
4083
4084         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
4085           dereference NULL focus tab.
4086
4087         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
4088           functions since we need to both show/hide and 
4089           queue a redraw. (There's some duplication of drawing here, 
4090           we probably should only be queuing a redraw on the
4091           "value" portion of the scale.)
4092
4093 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
4094
4095         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
4096           into the theme-drawing framework. We do this by making them,
4097           like check/radio-buttons, no-window widgets with subwindows. We
4098           then move the value by calling gtk_widget_queue_clear() and only
4099           redraw the value in our draw() / expose() handler.  A virtual
4100           function clear_background is added which queues a clear on the
4101           "background" portion of the widget.
4102
4103 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
4104
4105         * gtk/gtktext.c (mark_bg_gc): Make background colors work
4106           again. (We can't always paint the background with a
4107           paint() function - only do that for selected text)
4108
4109 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
4110
4111         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
4112           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
4113
4114         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
4115           the themes can't be built as part of the same build since
4116           they depend on gdk_imlib.
4117
4118 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
4119
4120         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
4121           from gtkthemes.c.
4122                 
4123         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
4124           gtk/
4125
4126           - Upgrade to libtool-1.2b + patch to add shared library dependencies
4127             for Linux. (Needs to be extended to other platforms where they
4128             are safe)
4129
4130          - Check for -ldl so this branch should build on all platforms, though
4131            themes will work on all platforms they could work on.
4132
4133          - Use -version and -release simultaneously: sonames stay as they are
4134            in the current scheme, but -lgtk-1.1 changes to -lgtk.
4135
4136          - Added in extra -l flags to library LDFLAGS so we get shared library
4137            dependencies against X libs and -ldl. (But not libgtk against 
4138            libgdk or libglib yet, since dependencies against uninstalled
4139            libraries aren't portable)
4140
4141 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
4142         * gtkrc.c - added api calls to find module and theme paths from gtk.
4143           nuked gtk_install_prefix global.
4144         
4145 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
4146         * fixed gtk_install_prefix global.
4147           
4148 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
4149         * added gtk_install_prefix global const variabel to find where gtk is
4150           installed.
4151           
4152 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
4153         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
4154           gtk theme engines
4155         
4156 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
4157         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
4158
4159 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
4160         * Fixed minor problem in gtkhandlebox.c with drawing, and some
4161           notebook stuff. Also pixmap theme is now "clean" again.
4162           
4163 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
4164         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
4165           queued area resizing once more.
4166
4167 Mon Aug 10 23:09:30 EDT 1998
4168         * Added a few drawing fixes for notebook and other widgets. finished
4169           pixmap theme up to the level that can be supported so far. (need to
4170           add path discovery 9ie where is the rc fiel from - add to pixmap 
4171           path so we can get theimages from there too). then we can package 
4172           themes. After that need to add to theme seartch path stuff in users 
4173           home dir.
4174           
4175 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
4176
4177         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
4178           drawing area, draw in an expose handler.
4179
4180         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
4181           empty current page.
4182
4183 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
4184
4185         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
4186           creation of GC's so that they will be set before
4187           they are used for map events (why are they used there?)
4188
4189         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
4190           be queued in multiple times in the queue.
4191
4192 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
4193
4194         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
4195           clip rects (or do anything) for shadow_none.
4196
4197 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
4198
4199         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
4200           Yes, it was needed. draw() and expose() are _not_
4201           identical.
4202
4203 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
4204         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
4205
4206 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
4207         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
4208           more baby oooh yeah more more MORE YES YES.
4209
4210 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
4211         * hopefully fixed problem wiht togglebuttons acting like
4212           radiobuttons in gtktogglebutton.c
4213
4214 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
4215         * fixed another drawing buglet in the frame drawing code (actually
4216           in the clearing code but anyway in gtkstyle.c)
4217
4218 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
4219         * Fixed warning from colorsel widget...
4220
4221 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
4222         * Fixed defautl drawing code to no longer clobber the original style
4223           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
4224           help with this.
4225
4226 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
4227
4228         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
4229
4230         * gtk/gtktooltips.c: Pass a widget (the window) to the
4231           drawing function instead of the GtkTooltips.
4232
4233 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
4234
4235         * gdk/gdkwindow.c: Abstract out checking for shape
4236           extension into a function.
4237
4238         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
4239           Remove extra callls to gtk_window_draw().
4240
4241 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
4242
4243         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
4244
4245         * themes/th_main.c: Moved messages around so they are
4246           printed before destroying strings.
4247
4248 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
4249
4250         * gdk/gdk.c: Fairly simple implementation of expose compression.
4251           (No GraphicsExpose compression yet, always compress
4252           with the equivalent of XtCompressMultiple - no compression
4253           of Expose events across non-Expose events)
4254         
4255         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
4256           Find rectangle bounding two rectangles.
4257
4258         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
4259           in gdk_default_draw_shadow()
4260         
4261 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
4262         * Fixed drawing functions to handle switching themes on the fly 
4263           gracefully and look decent.
4264           
4265 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
4266         * Added all the theme drawing code to all widgets, fixed up minor
4267           nigglies in some widgets when it comes to themes, seem to be
4268           running into some funky behavior with clipping rects in GC's. Too
4269           many files to list here. (all files that now use gtk_paint_* are
4270           affected).
4271
4272 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
4273
4274         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
4275           Set up the demo theme so it is loaded from the RC file.
4276
4277         * themes/th_draw.c: Alleviate the hardcoded paths a wee
4278           bit. (use $HOME/themes/)
4279
4280         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
4281           the RC file via dlopen()
4282
4283 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
4284
4285         Internal handling of styles and RC styles pretty much
4286         completely reworked for Theme work.
4287
4288         * gtkthemes.[ch]: 
4289          - Added routines for virtualization of RcStyle and Style handling.
4290          - Temporary "sample" inline theme-engine. (Does nothing
4291            but print out a few messages.
4292         
4293         * gtkrc.[ch]
4294          - Made GtkRcStyle public, added flags to tell if particular
4295            colors have been set.
4296          - RC Styles are "transparent", and the final style for
4297            a widget is the composition of all matching styles
4298          - Added pointer to GtkThemeEngine, and gpointer engine_data
4299            to RC style and style.
4300          - Parse "engine" keyword, load the appropriate theme engine
4301            and call the engine's parser.
4302         
4303         *  gtkstyle.[ch]
4304          - Keep a GtkRcStyle * in styles created from Rc Styles.
4305          - Load up images from RC file at style attachment time.
4306          - Call ->engine->foo() at appropriate times.
4307          - Don't use a GCache. All incarnations for a style are
4308            just linked together in a list, depend on the RC style 
4309            code to find the existing copy.
4310
4311 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
4312
4313         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
4314           of partial areas. This can be done either relative
4315           to the existing windows (gtk_widget_queue_clear[_area]())
4316           or relative to the future allocation of the widget
4317           (gtk_widget_queue_draw[_area]). 
4318
4319           The initial implementation is pretty braindead, but
4320           can be improved.
4321
4322         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
4323           in favor of gtk_widget_queue_clear().
4324         
4325         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
4326           flags in favor of gtk_widget_queue_clear()
4327         
4328 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
4329
4330         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
4331           handling of partially clipped areas.
4332
4333 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
4334
4335         * gtk/gtkclist.h (struct _GtkCListClass)
4336         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
4337
4338 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
4339
4340         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
4341         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
4342
4343         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
4344         "hadjustment" & "vadjustment"
4345          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
4346         set/get_arg functions
4347         (gtk_clist_construct): don't create/adjust scrollbars.
4348         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
4349         to set h/vadjustments
4350         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
4351         to query h/vadjustments
4352         (create_scrollbars): removed.
4353         (create_adjustments): replacement for create_scrollbars
4354         (gtk_clist_new): call gtk_clist_new_with_titles
4355         (gtk_clist_new_with_titles): don't warn on titles == NULL
4356         (move_horizontal): use CLAMP instead
4357         (gtk_clist_set_policy): deprecated method.
4358         use gtk_scrolled_window_set_policy instead.
4359         (vadjustment_value_changed): use clist->vadj.
4360         (adjust_scrollbars): renamed to adjust_adjustments
4361         (adjust_adjustments): former adjust_scrollbars
4362         (gtk_clist_destroy): unref adjustments
4363         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
4364         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
4365         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
4366         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
4367         (gtk_clist_set_row_height) (real_resize_column):
4368         call adjust_adjustments
4369         (gtk_clist_moveto): return if clist has no adjustments yet.
4370         (gtk_clist_parent_set): new GtkWidget::parent_set function.
4371         Autogenerate h/vadjustments if needed.  
4372         (move_horizontal) (move_vertical): some cleanups
4373
4374         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
4375         call only gtk_viewport_set_h/vadjustment and let these functions
4376         do the work.
4377         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
4378         generate a new adjustment if needed
4379
4380         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
4381         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
4382         
4383         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4384         queue_resize if visibility of scrollbars changes
4385         (gtk_scrolled_window_remove): only call container_remove with
4386         scrolled_window->viewport automatically if viewport was autogenerated
4387         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
4388         auto create a viewport only if widget does not take h/vadjustments.
4389         (gtk_scrolled_window_construct): don't generate a viewport
4390         automatically.
4391         (gtk_scrolled_window_forall): call callback with viewport in any case
4392         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
4393         ARG_VIEWPORT
4394         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
4395         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
4396         viewport != NULL
4397
4398         * gtk/testgtk.c 
4399         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
4400         in conjunction with clists/ctrees
4401
4402         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
4403         in conjunction with clists
4404
4405         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
4406         in conjunction with clists
4407
4408 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
4409
4410         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
4411         (gtk_ctree_remove_node): select focus_row if needed
4412         (cell_size_request): only get pixmap size if pixmap != NULL
4413
4414 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
4415
4416         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
4417         GTK_IS_WIDGET (widget):
4418
4419 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
4420
4421         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
4422         focus_row after a remove_row call.
4423
4424 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
4425
4426         * gtk/gtkoptionmenu.c
4427         * gtk/gtkmenushell.c: make option menus work when some of the
4428         menuitems are hidden - previously, option menu would popup too
4429         high.
4430
4431 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
4432
4433         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
4434
4435         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
4436
4437         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
4438         case instead.
4439         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
4440         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
4441         widechar functions.
4442         * gtk-config.in (--libs): List $GDK_WLIBS, too.
4443
4444 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
4445
4446         * Released GTK+ 1.1.3
4447         
4448         * INSTALL:
4449         * NEWS:
4450         * README:
4451         * gtk+.spec:
4452         * docs/gtk-config.1: updated for v1.1.3
4453
4454         * Makefile.am
4455         * sanity_check
4456         * docs/Makefile.am: Includes new 'make release' as well as
4457           'make sanity'.  Also handles html and text creation from html,
4458           and puts them into the distribution
4459
4460         * docs/Makefile.sgml: removed, similar functionality is now in 
4461           the Makefile.am file
4462
4463         * docs/.cvsignore: ignore html and text directories
4464         * docs/glib.texi: removed (now in glib dist)
4465
4466 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
4467
4468         * gtk/gtklist.c (gtk_list_remove_items_internal): 
4469         free undo_un/selection, unselect list_item before disconnect
4470         signal functions
4471         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
4472         already
4473         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
4474         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
4475         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
4476         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
4477         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
4478         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
4479         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
4480         new functions. These functions are signal connected to inserted
4481         list_items, to handle key bindings and GtkItem::de/select/toggle
4482         signals.
4483
4484         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
4485         gtk_object_class_add_signals call.
4486         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
4487         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
4488         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
4489         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
4490         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
4491         removed. These functions are handled via connected
4492         gtk_list_signal_* functions now
4493
4494 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
4495
4496         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
4497         even with --include-deps:
4498         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
4499
4500 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
4501
4502         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
4503         gtk_object_data_set_destroy to fit the gtkobject.h API.
4504
4505         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
4506         * gtk/gtkfontsel.h:
4507         * gtk/gtkfontsel.c:
4508         Added support for an extra 'base' filter which an application can
4509         set to restrict the fonts available to the user (e.g. a terminal
4510         program only wants the user to be able to select fixed-width fonts).
4511         The type of font (bitmap/scalable/scaled bitmap) is now
4512         also a part of the filter, so that an application can
4513         request that only scalable fonts are shown.
4514         There are new functions to set the base & user filters.
4515         I've also stopped the up/down key press signals getting
4516         to the clists since the font selection widget handles
4517         them itself. It acted a bit strangely before.
4518
4519 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
4520
4521         * gtk/gtkmain.c (gtk_init): support an environment variable
4522         GTK_MODULES= which takes a colon sperated list of module names
4523         automatically loaded at gtk_init() startup.
4524
4525 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
4526
4527         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
4528
4529 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
4530
4531         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
4532         is sufficient
4533
4534 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
4535
4536         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
4537         columns
4538
4539 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
4540
4541         * gtk/gtkfilesel.h: GtkType and macro fixups
4542         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
4543         for the file selection widget to try a completion on (set the
4544         initial filter).
4545
4546 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
4547
4548         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
4549         slight speed improvement and lessens code duplication.
4550
4551 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
4552
4553         * gtk/gtkdnd.c: Always send "drag_leave" to dests
4554         without GTK_DEST_DEFAULT_MOTION. 
4555
4556 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
4557
4558         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
4559         on destroyed windows so we clear the XID table properly.
4560         Finish up restructure of return value handling that
4561         was half-done before.
4562
4563 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
4564
4565         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
4566         the window tree more comprehensively, so that we find
4567         client windows hidden under non-toplevels.
4568
4569 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
4570
4571         * gtk/gtkselection.c (gtk_selection_data_set): 
4572         Maintain the null-termintation guarantee, even when 
4573         data = NULL, length = 0. (Warn on data = NULL, 
4574         length > 0)
4575
4576 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
4577
4578         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
4579         into function prototype for drag_data_received. 
4580
4581 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
4582
4583         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
4584
4585 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
4586
4587         * gtk/gtkclist.c: rearranged some functions
4588         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
4589         flag of column
4590         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
4591         (gtk_clist_set_border): deprecated function, use
4592         gtk_clist_set_shadow_type instead.
4593         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
4594         (adjust_scrollbars): some cleanups
4595         (select_row) (unselect_row): removed. replaced by equivalent
4596         gtk_signal_emit calls
4597         (add_style_data): removed, use gtk_clist_style_set instead
4598         (gtk_clist_style_set): fill in size data, after style was set. 
4599         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
4600         (gtk_clist_set_cell_style): auto_resize columns if needed
4601         (column_auto_resize): resize column if needed for auto_resize 
4602         (real_clear): disable auto_resize while list destroy
4603         (resize_column): removed
4604
4605         * gtk/gtkctree.c : (gtk_ctree_remove_node)
4606         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
4607         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
4608         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
4609         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
4610         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
4611         auto_resize columns if needed
4612         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
4613         (real_clear): disable auto_resize while processing the tree
4614
4615         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
4616         for one column
4617
4618 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
4619
4620         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
4621         typo - look for right atom on transfer failures.
4622
4623 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
4624
4625         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
4626         for drag_data_get to match the use that was being
4627         made of it everywhere else...
4628
4629 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
4630
4631         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
4632         mechanism, that is used for the DND messages.
4633
4634           Removed all the old DND code.
4635
4636         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
4637         get the visual of a given colormap.
4638         
4639         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
4640         a color-swatch.
4641
4642         * gdk/gdk.h gdk/gdkdnd.c: The low-level
4643         X oriented portions of drag and drop protocols.
4644         Sending and receiving client messages, and navigating
4645         window trees.
4646
4647         * gdk/gdkimage.c: added a gdk_flush() when destroying
4648         SHM images to hopefully make it more likely that
4649         X will gracefully handle the segment being destroyed.
4650
4651         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
4652         DND debugging flags.
4653
4654         * gtk/gtkeditable.[ch]: Updates for the selection handling
4655         changes.
4656         
4657         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
4658         refcounted data structure for keeping track of lists
4659         of GdkAtom + information. Removed selection_handler_add
4660         in favor of a "drag_data_get" signal.
4661
4662         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
4663         dependent) parts of the DND protocols, display of drag icons,
4664         drag-under highlighting, and the "default handlers".
4665
4666         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
4667         windows that are used for reliable pointer grabs and
4668         selection handling in the DND code.
4669
4670         * gtk/testdnd.c: New test program for new DND. (Old
4671         DND tests in testgtk still need to be converted.)
4672
4673         * gtk/testselection.c: Use the new selection API.
4674         
4675         * docs/dnd_internals: Start at describing how
4676         all the new code works inside.
4677
4678         * docs/Changes-1.2.txt: New file describing source-incompatible
4679         changes in GTK+-1.2.
4680
4681 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
4682
4683         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
4684         the right list node.
4685
4686         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
4687         to the XID table so we can receive events on it.
4688
4689 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
4690
4691         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
4692         to get the timestamp from a generic event.
4693
4694 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
4695
4696         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
4697         that safely adds additional events to a widget's event 
4698         mask, even if the widget has previously been realized.
4699         (We can do this, but not remove events from the event
4700          mask).
4701
4702 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
4703
4704         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
4705         for AnyPropertyType.
4706
4707 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
4708
4709         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
4710         hashing.
4711
4712 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
4713
4714         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
4715         isn't a timestamp.
4716
4717 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
4718
4719         * gdk/gdk.c (gdk_event_translate): Removed printing
4720         of unknown window lookup warnings. (Made it
4721         a GDK_NOTE) - they happen in many circumstances.
4722
4723 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
4724
4725         * Call XFilterEvent() on events we get for unknown
4726         windows, since it may be the window Xlib uses to
4727         communicate with the IM. 
4728         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
4729
4730 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
4731
4732         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
4733         the adjustment.
4734
4735 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
4736
4737         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
4738         message for return_value + GTK_RUN_FIRST.
4739
4740 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
4741
4742         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
4743         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
4744
4745 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
4746
4747         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
4748         styles of inserted row
4749         (change_style): change style of focus_row
4750
4751         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
4752         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
4753         to set/get row/cell styles.
4754         (gtk_clist_realize): attach row and cell style, allocate row colors.
4755         (gtk_clist_unrealize): detach row and cell styles.
4756         (get_cell_style): new function. get correct cell style.
4757         (draw_cell_pixmap): new function. 
4758         (draw_row): draw cells with row or cell styles.
4759         (row_new): set cell and row styles to NULL.
4760         (row_delete): detach & unref cell and row styles.
4761
4762         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
4763         new functions to attach/detach styles and allocate colors.
4764         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
4765         styles of invisible nodes.
4766         (draw_cell_pixmap): new function. 
4767         (get_cell_style):  new function. get correct cell style.
4768         (gtk_ctree_draw_expander): new function. draw tree expander.
4769         (gtk_ctree_draw_lines): new function.draw tree lines.
4770         (draw_row): draw cells with row or cell styles.
4771         (row_new): set cell and row styles to NULL.
4772         (row_delete): detach & unref cell and row styles.
4773         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
4774         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
4775         Analogons of GtkCList functions 
4776         (gtk_ctree_set_spacing): new function. set spacing between
4777         tree expander and cell contents
4778         (gtk_ctree_set_expander_style): new function. set expander style
4779         of ctree.
4780         (ctree_is_hot_spot): few changes due to draw_row modifications.
4781
4782 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
4783
4784         * gtk/gtkcombo.c: try completion on MOD1-TAB.
4785         Handle case when the combo->list is empty.
4786
4787 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
4788
4789         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
4790         handlers that have not yet been disconnected (finally managed to
4791         trigger the gtk_signal_handler_unref() paranoid warning).
4792
4793 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4794
4795         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
4796         width and height which is -1 and not -2.
4797
4798 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
4799
4800         * HACKING
4801         * autogen.sh: we need libtool 1.2b now
4802
4803 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
4804
4805         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
4806         and bottom attach arguments as mandatory and readjust the table size
4807         and opposing edge accordingly if required. this way the order in which
4808         the arguments are set doesn't matter.
4809
4810 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
4811
4812         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
4813         message to print out parent class name correctly.
4814
4815 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
4816
4817         * gtk/gtkobject.h: 
4818         * gtk/gtkobject.c:
4819         removed functions gtk_object_set_data_destroy and
4820         gtk_object_set_data_destroy_by_id.
4821         added functions gtk_object_remove_no_notify and
4822         gtk_object_remove_no_notify_by_id which will remove a certain data
4823         portion without invokation of its destroy notifier, this should only
4824         be used in very controled circumstances.
4825
4826 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
4827
4828         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
4829         size_allocate_title_buttons call
4830         (gtk_clist_realize): changed initial column.window position
4831
4832 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
4833
4834         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
4835         xor_gc instead
4836         * gtk/gtkctree.c (create_xor_gc): removed
4837         (gtk_ctree_button_press): set correct line_attributes for
4838         clist->xor_gc on drag start
4839         (gtk_ctree_button_release): reset clist->xor_gc
4840
4841 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
4842
4843         * gtk/gtk*.h:
4844         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
4845         which were in place to fixup emacs' cc-mode indentation.
4846         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
4847         proper way to achive this and doesn't produce problems for
4848         stupid pragma-related compiler bugs. ;)
4849
4850 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
4851
4852         * gtk/gtkclist.h: new signal GtkCList::resize_column.
4853         * gtk/gtkclist.c (draw_row): don't draw invisible columns
4854         (size_allocate_title_buttons) (size_allocate_columns):
4855         skip invisible columns
4856         (new_column_width): take min/max_width into account 
4857         (gtk_clist_button_release) (gtk_clist_motion):
4858         changes due to changed new_column_width function
4859         (LIST_WIDTH): changed define to inline function.
4860         (real_resize_column): class function for resize_column signal
4861         (gtk_clist_motion): fixed autoscrolling for column resizes
4862         (gtk_clist_set_column_visibility): don't hide last visible column,
4863         changed visible arg to gboolean
4864         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
4865         new functions : set min/max width of a column
4866         (gtk_clist_set_column_resizeable): new function : enable/disable
4867         column resize operations by mouse
4868
4869         * gtk/gtkctree.c (draw_row): don't draw invisible columns
4870         (ctree_is_hot_spot): return FALSE if tree_column is invisible
4871         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
4872         tree_column is invisible
4873         (gtk_ctree_find_all_by_row_data)
4874         (gtk_ctree_find_all_by_row_data_custom):  new function from
4875         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
4876         GtkCTreeNodes with row->data == data.
4877
4878 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
4879
4880         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
4881         memory (Martin Pool <mbp@wistful.humbug.org.au>).
4882
4883 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
4884
4885         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
4886         should have been guint32. Thanks to Tristan Colgate for finding it.
4887
4888 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4889
4890         * gtk/gtkcalendar.h:
4891           gtk/gtkcalendar.c: More changes:
4892           - The day with focus is now seperated from the day selected
4893           - The day with focus has the xor's line around it
4894           - The selected day is now standard selected style
4895           - The week names and week numbers are now also drawn
4896             with selected style
4897           - Space now selects the day which has focus
4898
4899 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4900
4901         * gtk/gtkcalendar.h:
4902           gtk/gtkcalendar.c: Some significant changes, including:
4903           - No longer draw focus around entire widget, only around
4904             the day which has focus
4905           - Draw relief around entire widget like originally planned
4906           - Show header and day names by default 
4907           - Move data private to the widget out of GtkCalendar struct
4908             and only point to it with a gpointer
4909           - Remove some old unused variables from GtkCalendar struct
4910
4911 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
4912
4913         * docs/gtk_tut.sgml: update I've had sat around:
4914           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
4915           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
4916           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
4917
4918 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
4919
4920         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
4921         
4922         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
4923         Makes it possible to individually show and hide columns.
4924         (size_allocate_columns): Adapted to keep track of hidden columns.
4925         (size_allocate_title_buttons): Likewise.
4926
4927 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
4928
4929         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
4930         fundamental types, collect an argument of the type returned from
4931         gtk_type_get_varargs_type(). removed the first macro argument which
4932         was just the same as the fundamental type of the *arg passed to
4933         the macro.
4934         * gtk/gtkarg.c (gtk_args_collect): 
4935         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
4936
4937         * gtk/gtktypeutils.h: 
4938         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
4939         gtk_type_get_varargs_type() to set and query the varargs collect
4940         type used for a fundamental type, registered outside of Gtk.
4941
4942         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
4943         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
4944         GTK_TYPE_FLOAT.
4945
4946         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
4947         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
4948         to GTK_TYPE_FLOAT.
4949
4950 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
4951
4952         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
4953         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
4954         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
4955
4956         (real_tree_expand) (real_tree_collapse):
4957         don't expand/collapse a leaf
4958
4959 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
4960
4961         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
4962         segfault when looking up a non-existant value name (reported by
4963         Pablo <pcj+gtk@primenet.com>).
4964
4965 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
4966
4967         * gtk/gtkclist.h (gtk_clist_prepend):
4968         * gtk/gtkclist.c (gtk_clist_prepend): new function.
4969         (gtk_clist_insert): added g_return_val_if_fail()
4970         statements. accept a row parameter < 0 or > clist->rows to indicate
4971         append mode.
4972         (real_clear): first clean up all internal pointers and lists (e.g.
4973         clist->row_list or clist->rows), then delete the distinct rows. this
4974         is required because of destroy notifiers, we need to have all internal
4975         structures updated and be reentrant.
4976
4977         * gtk/gtkcalendar.h: 
4978         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
4979         GtkCalendarClass signal methods.
4980         GtkType and macro fixups, put `void' into () prototypes, avoid C++
4981         style comments, indentation fixes, fixed some g_return_if_fail()
4982         statements.
4983         (gtk_calendar_paint_header):
4984         (gtk_calendar_paint_day_names): 
4985         (gtk_calendar_paint_week_numbers): 
4986         (gtk_calendar_paint_main): made these static functions.
4987         (gtk_calendar_select_month):
4988         (gtk_calendar_select_day):
4989         (gtk_calendar_mark_day):
4990         (gtk_calendar_unmark_day):
4991         (gtk_calendar_get_date): signedness corrections, use guints
4992         rather than gints.
4993         (gtk_calendar_size_request): removed unused variables.
4994
4995 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
4996
4997         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
4998         widgets in the ->widgets_by_action list that have a callback
4999         defined (not only those with a callback_action!=0).
5000
5001 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5002
5003         * gtk/gtkcalendar.h:
5004           gtk/gtkcalendar.c:
5005           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
5006
5007 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5008
5009         * gtk/gtkcalendar.h:
5010           gtk/gtkcalendar.c:
5011           examples/calendar: Added gtkcalendar widget and demo
5012
5013 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
5014
5015         * gtk/gtkclist.c (gtk_clist_sort): 
5016         (gtk_clist_clear): 
5017         (gtk_clist_unselect_all): 
5018         (gtk_clist_select_all): adde g_return_if_fail() statements.
5019
5020 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
5021
5022         * configure.in: set binary age and interface age to 0.
5023
5024         * gtk/gtkspinbutton.h: 
5025         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
5026         gtk_spin_button_configure. gtk_spin_button_construct is still defined
5027         as an alias for gtk_spin_button_configure for source compatibility,
5028         but actuall use is deprecated.
5029         typeness corrections, i.e. gint->gboolean and gint->guint.
5030         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
5031         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
5032         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
5033         GtkSpinButton::adjustment, GtkSpinButton::digits and
5034         GtkSpinButton::climb_rate.
5035         GtkType and macro fixups.
5036
5037 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
5038
5039         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
5040         the *real* geometry position of a window, taken possible window
5041         manager offsets into account.
5042         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
5043         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
5044         it does fail though for amiwm which adds windows to a pseudo root
5045         window, and for icewm by a small offset because it defines the
5046         geometry position whithin its border.
5047
5048         * gtk/testgtk.c: added "saved position" test to figure how
5049         gdk_window_get_root_origin() interacts with window managers (repopup
5050         this window to figure ;).
5051
5052 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
5053
5054         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
5055         interface age 1.
5056
5057         * gtk/gtkobject.c
5058         (gtk_object_ref): 
5059         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
5060         existing code was buggy in letting ->ref_count==0 pass through and
5061         then failing the living_objs_ht assertion).
5062
5063         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
5064         pixtext fields (Roman Pozlevich <roma@botik.ru>).
5065
5066 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5067
5068         * Released GTK+ 1.1.2
5069
5070 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
5071
5072         * gtk/Makefile.am: use $(PERL) instead of perl
5073         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
5074         also much faster to render.
5075
5076 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
5077
5078         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
5079         the required memory block, rather than allocating it newly from
5080         scratch and doing a full-blown block copy on it.
5081
5082 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
5083
5084         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
5085         binary age 0, interface age 0.
5086
5087         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
5088
5089 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
5090
5091         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
5092         work.
5093
5094 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
5095
5096         * HACKING: indent other than GNU indent should be OK
5097           now.
5098
5099         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
5100           instead of piping through indent. If indent wasn't
5101           found in ./configure don't bother indenting at 
5102           all.
5103
5104 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
5105
5106         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
5107
5108 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
5109
5110         * gtk/Makefile.am: use $(AWK) instead of awk
5111
5112 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
5113
5114         * gtk/Makefile.am (gdk_headers): 
5115         Remove references to $(top_srcdir). 
5116         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
5117         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
5118
5119 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
5120
5121         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
5122         GData*object_data to cure compiler warnings.
5123
5124 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
5125
5126         * install-sh
5127         * missing
5128         * mkinstalldirs: updated to latest automake version
5129
5130 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
5131
5132         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
5133         (gtkinclude_HEADERS): ... here.
5134         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
5135
5136 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
5137
5138         * HACKING: added GNU indent, as it is now required to successfully
5139         build gtk+. Should this be detected in autoconf, possibly?
5140
5141 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
5142
5143         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
5144         change library versioning scheme to drop LT_RELEASE
5145         from the -l line, while keeping it in the soname.
5146
5147 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
5148
5149         * configure.in Makefile.in: define a MAINT-like variable REBUILD
5150         which is set if Perl and awk are found, and autogenerated sources
5151         can be rebuilt. Remove the auto-generated sources from
5152         CVS. 
5153
5154         Add dependencies so that the autogenerated sources are 
5155         rebuilt if the files they depend on change. 
5156         (This unfortunately currently results in the entire
5157         gtk/ directory being rebuilt when any header changes.
5158         Moving all enums to gtkenums.h would fix this.)
5159
5160 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
5161
5162         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
5163         gtk_object_set_data_destroy_by_id functions to set the destroy
5164         function pointer for an existing data portion.
5165
5166         * gtk/gtkobject.c: removed the GtkObjectData implementation and
5167         made all gtk_object_*data* functions use the GLib equivalents.
5168
5169 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5170
5171         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
5172         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
5173         (widget != NULL), otherwise radio button insertion will not work
5174         -- the widget argument is NULL for the first radio button in the
5175         group.
5176
5177 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
5178
5179         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
5180         of g_new to malloc(), added back in the one place where
5181         it actually mattered. #include <stdlib.h>.
5182
5183         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
5184
5185 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
5186
5187         * gtk/gtkfilesel.c: Keep a list of directories in which we never
5188         want to stat the entries (like /afs), and assume everything in
5189         those directories is a subdirectory.
5190
5191         - When following a path, try to open components even when
5192         we don't find them in their parent's directory to
5193         support automounters.
5194
5195 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
5196
5197         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
5198         a new size from the WM if we asked for the same size
5199         before and our request was rejected.
5200
5201         * gtk/gtkwindow.c (gtk_window_configure_event): If
5202         in response to a request, we get a configure event
5203         with unchanged dimensions, send a synthetic expose
5204         since ForgetGravity won't expose our window.
5205
5206 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
5207
5208         * gtk/gtktext.c (adjust_adj): Change the way we
5209         set the adjustments on resize so that it tries to
5210         keep the beginning of the text in approximately
5211         the same place. 
5212
5213         Removed assertion that the above change made invalid.
5214
5215 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
5216
5217         * gtk/gtktext.c: - Save first_cut_pixels when switching
5218         sizes, so that if we switch to the _same_ size,
5219         we don't move lines around.
5220
5221         - Make sure that the text area always has a size of at
5222         least 1x1, then do all computations when realized.
5223
5224         - When fetching lines in recompute_geometry, make
5225         sure we fetch enough lines to cover the screen.
5226         
5227 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5228
5229         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
5230           g_free()s to free()s to avoid mixing g_new()s with 
5231           free()s.  X itself uses free() on some of the 
5232           malloced memory.
5233
5234 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
5235
5236         * gtkfilesel.c: Maintain a list of directories like
5237         /afs we know contain only directories, and avoid
5238         stat'ing files in those directories. (Because
5239         stat'ing all files in /afs is extremely expensive)
5240
5241         To support automounters, try to open directories,
5242         even if we couldn't find them when reading their
5243         parent directory.
5244
5245 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
5246
5247         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
5248         to allow the same gtk.m4 to work for 1.0.x and
5249         1.1.x.
5250
5251 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
5252
5253         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
5254         to set/unset the selectable flag of a single row.
5255         (gtk_clist_get_selectable): new function 
5256         to get the state of the selectable flag
5257
5258         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
5259         (gtk_ctree_node_get_selectable): clist analogons
5260         
5261 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
5262
5263         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
5264         pattern.
5265
5266         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
5267         bugs in the 4bit gray cases.
5268
5269 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
5270
5271         * configure.in: added -posix check for NeXTStep
5272
5273         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
5274         a unique buffer for each thread.
5275
5276         * docs/gtk-config.1: clarified copyright
5277
5278 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
5279
5280         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
5281
5282         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
5283
5284         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
5285         ATEXIT.
5286         
5287         * ltconfig: use GLib's ltconfig which honours lcc.
5288
5289 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
5290
5291         * configure.in: comment the -std1 check and save LIBS properly
5292
5293 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
5294
5295         * gtk/testrgb.c: #include <stdlib.h>
5296
5297 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
5298
5299         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
5300         When the pointer is grabbed on an input window,
5301         either explicitely, or through press-grab, and
5302         then grabbed on a non-input window, ungrab the
5303         devices.
5304
5305 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
5306
5307         * gtk/gtktypeutils.h: don't include any gdk headers.
5308         added structure definitions for GtkTypeObject and GtkTypeClass,
5309         which cover the very basic fields of GtkObject and GtkObjectClass,
5310         which are actually used by the type system.
5311         
5312         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
5313         we only refer to our own structures. improved class inheritance
5314         sanity checking a bit.
5315
5316         * gtk/gtkobject.h: placed appropriate comments at the beginnings
5317         of the GtkObject and GtkObjectClass structures, which explain
5318         their relationship to GtkTypeObject and GtkTypeClass.
5319
5320         * gtk/gtktypeutils.h:
5321         * gtk/gtkobject.h:
5322         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
5323         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
5324         gtkobject.h to gtktypeutils.h.
5325
5326         * gtk/gtkobject.h:
5327         * gtk/gtkobject.c:
5328         removed gtk_object_check_cast() and gtk_object_check_class_cast()
5329         functions. to keep source compatibility, we can provide macro aliases
5330         for the corresponding gtk_type_* functions. but then again, people
5331         shouldn't have been using these functions anyways since they were part
5332         of Gtk's internal API.
5333
5334         * gtk/gtktypeutils.h:
5335         * gtk/gtktypeutils.c:
5336         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
5337         functions to check GtkTypeObject and GtkTypeClass types.
5338
5339 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
5340
5341         * gtk/gtkctree.h:
5342         * gtk/gtkctree.c: `const' fixups.
5343
5344         * gtk/gtkclist.h:
5345         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
5346
5347         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
5348         if it is passed as NULL.
5349
5350 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
5351
5352         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
5353         big-endian cases. Added a 4bpp packed gray mode (somewhat
5354         incorrectly hardwired to MSB), which should take care of
5355         Stric's hardware.
5356
5357 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
5358
5359         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
5360         GtkSIgnalQuery leak.
5361
5362 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
5363
5364         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
5365         GTK_MENU_DIR_CHILD: check for the existance of
5366         menu_shell->active_menu_item before accessing its child.
5367         GTK_MENU_DIR_PREV:
5368         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
5369         don't, make a default selection.
5370
5371 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
5372
5373         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
5374         the children with _forall for sensitivity changes and with
5375         _foreach on pure state changes. this fixes a lot of the
5376         old inclusions of internal widgets into _foreach calls.
5377
5378         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
5379         do the work. don't walk the subtrees of first level children.
5380
5381         * gtk/gtktreeitem.c: provide a _forall implementation,
5382         which walks the subtrees as well for include_internals.
5383
5384         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
5385         the submenus as well for include_internals.
5386
5387         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
5388         implemented gtk_scrolled_window_forall, which will iterate over
5389         the viewport and the scrollbars for gtk_container_forall or
5390         iterate over the viewports children for gtk_container_foreach.
5391
5392         * gtk/gtktoolbar.c: 
5393         * gtk/gtktable.c: 
5394         * gtk/gtkpaned.c:
5395         * gtk/gtkpacker.c:
5396         * gtk/gtkmenushell.c: 
5397         * gtk/gtklist.c: 
5398         * gtk/gtkfixed.c:
5399         * gtk/gtkclist.c:
5400         * gtk/gtkbox.c: 
5401         * gtk/gtkbin.c: 
5402         * gtk/gtknotebook.c:
5403         removed the old gtk_*_foreach functions and provided gtk_*_forall.
5404
5405         * gtk/gtknotebook.c:
5406         (gtk_notebook_real_switch_page): expose tabs.
5407         (gtk_notebook_page_num): new function to return the page number
5408         of a distinct child.
5409         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
5410         under some circumstances.
5411
5412         * gtk/gtktreeitem.c:
5413         (gtk_real_tree_item_select):
5414         (gtk_real_tree_item_deselect): major fixes.
5415         some general fixups wrt queue_redraw, and tree items not being
5416         NO_WINDOW widgets.
5417
5418         * gtk/gtklistitem.c:
5419         (gtk_real_list_item_select): 
5420         (gtk_real_list_item_deselect): 
5421         (gtk_real_list_item_toggle): 
5422         removed unneccessary queue_redraw calls.
5423
5424 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
5425
5426         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
5427         automatically popup the menu on space bar.
5428
5429 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
5430
5431         * gtk/gtkcontainer.h:
5432         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
5433         method), which acts similar to gtk_container_foreach(), but iterates
5434         over internal children. the GtkContainer::foreach signal vanished in
5435         favour of a new class method ->forall() that optionally includes
5436         internal widgets.
5437
5438         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
5439         but a _forall implementation, since all child widgets we have are
5440         internal ones.
5441         (column_button_create): set the parent window prior
5442         to gtk_widget_set_parent().
5443
5444         * gtk/gtkwidget.c:
5445         exchanged all calls to gtk_container_foreach() with
5446         gtk_container_forall().
5447
5448         * gtk/gtkwidget.h: 
5449         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
5450         the GtkWidget::composite_child argument. to have a widget created
5451         with the flag initially, two new functions got added to wrap a widgets
5452         creation:
5453         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
5454
5455 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
5456
5457         * gtk/gtktooltips.h:
5458         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
5459         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
5460         prior to the first tip being set.
5461         don't put an extra reference on the window, since it is a toplevel,
5462         it wont get destroyed from anywhere else.
5463
5464         * overall macro and GtkType fixups.
5465
5466 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5467
5468         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
5469         constructs by more forgiving ones.  (Does anyone else feel like
5470         the color selector need rewriting?).
5471
5472 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
5473
5474         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
5475         the adjustment.
5476
5477         * gtk/gtkmenu.c: Modified reference counting so
5478         that the reference count from the toplevel that
5479         the menu creates to the menu is invisible to the
5480         application.
5481
5482 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
5483
5484         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
5485         conversion selection logic, so Suns and other big-endian
5486         machines should get faster conv routines. This is also the
5487         point where 4bpp gray and 1bpp are checked in, although I
5488         wouldn't be surprised if 1bpp is a little buggy. This is
5489         synchronized with the 0.0.7 release of GdkRgb.
5490
5491         * gtk/Makefile.am: 
5492         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
5493         appropriate change to the Makefile.am
5494
5495 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
5496
5497         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
5498         which is good for images that scroll (makes the dither patterns
5499         align correctly)
5500
5501 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
5502
5503         * gdk/gdkcolor.c:
5504         (gdk_colormap_new) (gdk_colormap_get_system):
5505         quell some warnings with g_hash_table_new
5506
5507         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
5508         when we're done with it
5509
5510         * gtk/itemfactory.c:
5511         (gtk_item_factory_from_path):
5512         (gtk_item_factory_create_item): free some strings
5513
5514         * gtk/gtklabel.c:
5515         (gtk_label_finalize): free label->pattern when done
5516         (gtk_label_parse_uline): null terminate pattern string, delete
5517         some duplicated code
5518
5519         * gtk/testthreads.c: add #include <unistd.h> for sleep()
5520
5521 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
5522
5523         * gtk/gtktext.c (recompute_geometry): Make sure the
5524         mark we pass to line start is the beginning of a 
5525         real line, not a wrapped one.
5526
5527 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
5528
5529         * gtk/gtktext.c: Reference count the fonts used in
5530         the text widget.
5531
5532         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
5533         freeing functions to be more consistent, and more 
5534         convenient; leave the old names in for backwards compatibility.
5535
5536         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
5537         allocations in pseudo-color colormaps to greatly reduce
5538         calls to XAllocColor. Keep a per-colormap hashtable to
5539         speed up finding if there is an already-allocated matching
5540         color.
5541
5542         * gdk/gdkcolor.c: Don't just match read the system colormap
5543         when the colormap is created, but synchronize our copy
5544         with the system colormap periodically.
5545         
5546         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
5547         Change XIM constants names to match GDK conventions
5548
5549         * gtk/testinput.c: Allow the drawing area to get the focus.
5550
5551         * gtk/testgtk.c: Change around the Text test to demonstrates
5552         multiple fonts, use more colors.
5553
5554         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
5555         so they work after a widget is unrealized.
5556
5557         * gtk/gtktext.[ch]: Remove the requirement that the text
5558         widget be realized before adding text (!) Allocate colors
5559         ourself, instead of requiring the caller allocate them.
5560         Allow changing styles to work properly by keeping track
5561         of the values for a certain property are default or
5562         set explicitely.
5563
5564         * gtk/gtkmenu.h: Added some comments.
5565
5566         * gtk/gtkentry.c: Changes to match XIM constants.
5567
5568         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
5569         for adding keyed data to drawables. (Uses g_dataset
5570         internally)
5571
5572         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
5573         when creating an XPM - store them as user data for the GdkPixmap,
5574         so we don't leak colors when we create pixmaps from XPM's.
5575
5576         Allocate memory for color information in large blocks instead of 
5577         as many little pieces.
5578         
5579 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
5580
5581         * gdk/gdkrgb.c: removed some unused variables
5582
5583         * gtk/gtkclist.c
5584         * gtk/gtkmain.c: #if 0'd out some unused code
5585
5586         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
5587
5588 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
5589
5590         * gtk/gtkarg.h:
5591         * gtk/gtkarg.c:
5592         * gtk/gtkwidget.h: 
5593         * gtk/gtkwidget.c: 
5594         * gtk/gtkobject.h:
5595         * gtk/gtkobject.c:
5596         * gtk/gtkcontainer.h: 
5597         * gtk/gtkcontainer.c: 
5598         (gtk_object_new):
5599         (gtk_object_set):
5600         (gtk_widget_new):
5601         (gtk_widget_set): 
5602         (gtk_container_add_with_args):
5603         (gtk_container_child_set):
5604         begin the parameter elipsis (...) after the first argument name. this
5605         change is source compatible, since it was always required, even as NULL.
5606         (gtk_args_collect): 
5607         (gtk_object_args_collect): 
5608         (gtk_container_child_args_collect):
5609         changed prototypes to pass first_arg_name, also, pass va_list variable
5610         by value (portability concerns). callers changed.
5611
5612         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
5613         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
5614         can't pass va_list variables by reference for portability reasons.
5615
5616 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
5617
5618         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
5619         get_visual calls, so that it gets implicitly initialized.
5620
5621 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
5622         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
5623         such as GtkCTree function name changes
5624         
5625 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
5626
5627         * gtk/gtkmain.h:
5628         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
5629         binary version check, returning a static string for error descriptions,
5630         or NULL on success.
5631
5632 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
5633
5634         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
5635         computed our geometry yet, and if not, ignore the request.
5636
5637         * gtk/gtktext.c (correct_cache_insert): Fiddled around
5638         some more. All the bug-test codes seem to work at once
5639         now. (fingers crossed...)
5640
5641 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
5642
5643         * gdk/gdkrgb.c: silly visual fixes
5644
5645         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
5646         works
5647
5648 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5649
5650         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
5651         anything if the event's window is not the bin window.
5652         (gtk_handle_box_motion): Likewise.
5653
5654 1998-08-19  Raph Levien  <raph@gimp.org>
5655
5656         * gtk/testgtk.c (create_color_preview): pushed the colormap and
5657         visual so it would work better with GdkRgb.
5658
5659 1998-08-19  Raph Levien  <raph@gimp.org>
5660
5661         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
5662         4bpp static_color mode (for vga displays). Also fixed a '64' value
5663         in the dither matrix, which was causing one pixel out of 16k to be
5664         dithered wrong.
5665
5666         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
5667         most of the contents. This is an API change - any apps that relied
5668         on the internal structure of GtkPreview will need some change -
5669         most notably in the use of reserved colors. The Gimp needed
5670         changes in this regard.
5671
5672 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
5673
5674         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
5675         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
5676         --g-fatal-warnings), noticed by miguel.
5677
5678 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
5679
5680         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
5681         getcwd().
5682
5683         * gdk/gdkprivate.h:
5684         * gdk/gdkglobals.c:
5685         * gdk/gdkwindow.c:
5686         * gdk/gdk.c:
5687         * gtk/gtkwindow.c: 
5688         * gtk/gtkitemfactory.c: 
5689         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
5690
5691         * gtk/gtkselection.c:
5692         * gtk/gtkpreview.c:
5693         * gtk/gtkobject.c: 
5694         * gtk/gtkmain.c: 
5695         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
5696
5697         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
5698
5699 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
5700
5701         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
5702         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
5703         in case of show_tabs == NULL
5704
5705 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
5706
5707         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
5708         to --g-fatal-warnings again. this option now causes log levels of
5709         WARNING and CRITICAL to abort().
5710
5711         * gdk/gdk.c: 
5712         * gdk/gdkdnd.c: 
5713         * gdk/gdkcc.c: 
5714         * gdk/gdkfont.c: 
5715         * gdk/gdkwindow.c:
5716         * gdk/gdkvisual.c:
5717         * gtk/gtkwidget.c:
5718         * gtk/gtktypeutils.c:
5719         * gtk/gtktree.c:
5720         * gtk/gtkfontsel.c:
5721         * gtk/gtkmain.c:
5722         * gtk/gtkobject.c:
5723         * gtk/gtkpreview.c:
5724         * gtk/gtkselection.c:
5725         * gtk/gtktext.c:
5726         * gtk/gtktree.c:
5727         * gtk/gtktreeitem.c:
5728         did a global search&replace to substitute g_print() calls with
5729         g_message(). libraries shouldn't use printf(), g_print() or
5730         g_printerr() at all.
5731         a bunch of the replacements should probably be wrapped into the
5732         G{D|T}K_NOTE() macros, so they are special cased for debugging
5733         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
5734         things.
5735
5736         * gdk/gdkdnd.c: added copyright notice.
5737
5738 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
5739
5740         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
5741         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
5742         running a PII 233. It's synced with the 0.0.5 release of
5743         GdkRgb.
5744
5745 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
5746
5747         * gtk/gtkclist.h:
5748         (struct _GtkCListClass): new class methods:
5749         (sort_list) (insert_row) (remove_row) (set_cell_contents)
5750
5751         * gtk/gtkclist.c :
5752         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5753         removed and replaced by (set_cell_contents)
5754         (set_cell_contents): function for class method set_cell_contents
5755         (real_insert_row): function for class method insert_row
5756         (real_remoce_row): function for class method remove_row
5757         (real_sort_list): function for class method sort_list
5758         (default_compare): fix to avoid problems with cell types != CELL_TEXT
5759
5760         * gtk/gtkctree.h :
5761         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
5762         (gtk_ctree_node_is_visible): new function to return visibility state
5763         of a node
5764         (gtk_ctree_show_stub): new function to set visibility of root stub
5765
5766         renamed functions :
5767         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
5768         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
5769         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
5770         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
5771         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
5772         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
5773         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
5774         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
5775         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
5776         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
5777         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
5778         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
5779         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
5780         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
5781         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
5782         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
5783         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
5784         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
5785         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
5786
5787         * gtk/gtkctree.c :
5788         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
5789         removed and replaced by (set_cell_contents)
5790         (set_cell_contents): function for class method set_cell_contents
5791         (real_insert_row): function for class method insert_row
5792         (real_remoce_row): function for class method remove_row
5793         (real_sort_list): function for class method sort_list
5794         (default_compare): removed. CTree now also compares two GtkCTreeRows
5795         instead of two GtkCTreeNodes.
5796         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
5797         unlinking the node
5798         (real_tree_expand) (real_tree_collapse): fix for refcounting of
5799         node pixmaps
5800         (set_node_info): call gtk_ctree_node_set_pixtext instead of
5801         manipulating the row itself
5802         
5803         * gtk/testgtk.c: use renamed functions of GtkCTree.
5804         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
5805         at work.
5806
5807 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
5808
5809         * gtk/gtkmain.c: removed gtk_input_add_interp.
5810
5811         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
5812         keyword.
5813         (gtk_editable_get_event_time): fix default: case.
5814
5815         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
5816
5817         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
5818
5819         * gdk/gdkcolor.c:
5820         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
5821         of our functions.
5822
5823         * various minor compilation cleanups, such as bogus commas in
5824         enums and similar things.
5825
5826 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
5827
5828         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
5829         (thanx raph).
5830
5831 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5832
5833         * NEWS: updated for 1.1.2
5834         * gtk+.spec: version = 1.1.2
5835
5836 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
5837
5838         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
5839         times. changed --gtk-with-module to --gtk-module at owen's request.
5840
5841 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
5842
5843         * gtk/gtkmain.c (gtk_init): feature a new commandline option
5844         --gtk-with-module=<module> that allows additional loading and
5845         initialization of modules (e.g. GLE).
5846
5847 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
5848
5849         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
5850         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
5851
5852         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
5853         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
5854         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
5855         different *-fatal-* arguments now. this needs to be revised and
5856         compressed to a reasonable amount of arguments.
5857
5858 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
5859
5860         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
5861         "--g-fatal-warnings" causes fatal warnings in GLib,
5862         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
5863         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
5864
5865         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
5866         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
5867
5868         * gtk/testgtk.c: 
5869         * gdk/gxid.c:
5870         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
5871         since automake doesn't support per target _CFLAGS yet.
5872
5873         * configure.in: require GLib 1.1.3.
5874
5875 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
5876
5877         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
5878         to set a callback to test if a node in drag can be dropped onto
5879         it's currrent location.
5880         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
5881         to change the pointer when a drag destination is not allowed.
5882
5883 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
5884
5885         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
5886         speeds up the 565_d case by about 25% total. Thanks Ray!
5887
5888 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
5889
5890         * Changed GtkSignalFunc back to () from (void). (again!)
5891
5892         * Added file README.cvs-commits
5893         
5894 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
5895
5896         * docs/gtk_tut.sgml:
5897           - Tidy up of the menufactory example from
5898             Andy Kahn <kahn@zk3.dec.com>
5899           - New section on Range Widgets from
5900             David Huggins-Daines <bn711@freenet.carleton.ca>
5901           - Started a new section on 'Advanced Event and Signal
5902             Handling' - used an email from Owen.
5903           - New appendix on Gdk Event Types
5904           - Added the tictactoe full example code to the
5905             'Code Examples' appendix
5906
5907 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
5908
5909         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
5910           to calculate all the metrics at once of a string, including
5911           things which weren't calculated before.
5912
5913         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
5914           MenuItem type, that when put as the first thing in a
5915           menu, makes the menu tearoff. Currently drawn as a
5916           dashed line.
5917
5918         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
5919           "hide_on_activate" to the MenuItem class structure to allow
5920           check and radio buttons to be changed with <Space> without
5921           hiding the menu.
5922
5923         * gtk/gtkitemfactory.c: 
5924           - Create a AccelGroup for each MenuShell we create.
5925           - If an '_' appears before a  character 'c' in the path,
5926             then make 'c' an accelerator in the menu's accel group,
5927             and if the menuitem is menubar <alt>C an accelerator 
5928             in the itemfactory's accel group. Double '__' inserts
5929             a literal '_'
5930
5931         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
5932           which is a string. If an '_' appears in this string,
5933           the corresponding position in the label is underlined.
5934
5935           Add gtk_label_parse_uline() convenience function which
5936           takes a string with embedded underlines, sets the
5937           pattern and label, and returns the accelerator keyval.
5938
5939         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
5940           Instead, they create a GtkWindow and add themselves
5941           to that. (When torn off, another new feature, they
5942           create another GtkWindow to hold the torn off menu)
5943
5944           New function gtk_menu_set_tearoff_state()
5945         
5946         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
5947           Added action signals  for keyboard navigation of menus.
5948
5949         * gtk/gtkmenushell.c: Key press handler which activates
5950           bindings for navigation, and accelerators, for handling
5951           underline accelerators. Exported functions to select 
5952           and activate menu items in a menushell.
5953
5954         * gtk/testgtk.c: Added a new "Item Factory" test which
5955           tests GtkItemFactory and the new keyboard navigation
5956           of menus.
5957
5958 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
5959
5960         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
5961         external functions have been called. also relookup nodes after
5962         this function has been invoked.
5963
5964 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
5965
5966         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
5967           beginning of Text when creating the Text widget.
5968
5969         * gtk/testgtk.c: Grab the focus on the text widget so
5970           as to test out the above.
5971
5972 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
5973
5974         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
5975           ::changed is a notification signal and should have no default
5976           handler. A complete redraw of the Text widget does _not_ need to
5977           be done on every text insertion.
5978
5979 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
5980         (gtk-abilleira-072198-patch)
5981
5982         * gtk/gtkwindow.[ch]: 
5983           Add gtk_window_set_modal() which sets a flag; when
5984           set the window does a gtk_grab_add() when the window
5985           is shown, and a gtk_grab_remove() when the window
5986           is hidden. 
5987
5988         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
5989           that case will run "Create Dir","Delete File" and "Rename File" 
5990           dialogs as modal too.
5991
5992         * gtk/testgtk.c: Added a button with an example of creating modal 
5993           dialog boxes. Including file selection and color selection standard
5994           dialogs.
5995         
5996 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
5997
5998         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
5999           Removed CAN_FOCUS by default from scrollbars, button
6000           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
6001           (Scrollbar definitely good change, toolbar bit more questionable)
6002
6003 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
6004
6005         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
6006         Pettersen).
6007
6008 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
6009
6010         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
6011           added all logical operations to gc->function.
6012
6013 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
6014
6015         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
6016         gtk_widget_size_allocate instead of gtk_widget_queue_resize
6017         if the visibility state of a scrollbar changes.
6018
6019 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
6020
6021         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
6022
6023 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
6024
6025         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
6026         gtk_clist_merge and gtk_clist_mergesort. :)
6027
6028 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
6029
6030         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
6031         `mergesort' -> `my_mergesort'.
6032
6033 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
6034
6035         * gtk/gtkenums.h: new enum GtkSortType.
6036         
6037         * gtk/gtkclist.h:
6038         * gtk/gtkclist.c:
6039         Added sorting capabilities to GtkCList. New APIs :
6040         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
6041         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
6042         New internal functions : default_compare, merge, mergesort.
6043
6044         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
6045         
6046         (gtk_clist_insert): Modified to handle gtk_clist_append and the
6047         auto sort flag. Changed the return value from void to gint to
6048         return the row number where the element was actually inserted.
6049
6050         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
6051         
6052         * gtk/gtkctree.h:
6053         * gtk/gtkctree.c:
6054         Removed the auto_sort flag, replaced ctree->node_compare with
6055         clist->compare all over the place, modified default_compare to
6056         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
6057         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
6058
6059         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
6060         sorting. The lists can be sorted by a column by clicking the 
6061         corresponding title button.
6062         
6063 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6064
6065         * Released GTK+ 1.1.1
6066
6067 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
6068
6069         * gtk/gtkctree.h:
6070         * gtk/gtkctree.c:
6071         (gtk_ctree_find): changed to return a gboolean
6072         (gtk_ctree_insert_gnode): new function for recursive insertion of a
6073         GNode tree.
6074         (gtk_ctree_real_select_recursive): fix for extended selection
6075         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
6076         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
6077
6078 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
6079
6080         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
6081         GLib version 1.1.1 is now required at minimum.
6082
6083         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
6084         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
6085
6086 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
6087  
6088         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
6089           cursor before (possibly) deleting the cursor's text
6090           property.
6091  
6092         * gtk/gtktext.c (correct_cache_delete): More attempts
6093           to clean the line-start cache up after inserting
6094           a property. Among other things, make sure to
6095           fix up text->current_line, since it is used to 
6096           refetch the changed lines.
6097  
6098 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
6099
6100         * gtk/gtktable.[ch]: Empty rows/columns of the table
6101         should not have been marked as being able to shrink.
6102         (Fixes problem with shrinking scrollbarless GIMP canvases)
6103
6104 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6105
6106         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
6107         function to find a row by its data pointer using a custom
6108         comparison function.
6109
6110 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
6111
6112         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
6113           this fixes a bug when the whole widget is made non-sesitive
6114           the buttons weren't redrawn
6115
6116 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
6117
6118         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
6119         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
6120         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
6121
6122 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
6123
6124         * gdk/gdkwindow.c (gdk_window_reparent): Change 
6125           window_private->parent pointer when reparenting.
6126
6127 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
6128
6129         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
6130         with the standalone release.
6131
6132 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
6133
6134         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
6135         (gtk_clist_button_release) (new_column_width): Few fixes for
6136         column resize. Store resize column in clist->drag_pos.
6137
6138 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
6139
6140         * gtk/gtkctree.h 
6141         * gtk/gtkctree.c 
6142         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
6143         to GtkCTreeNode *node.
6144
6145         * gtk/gtklist.h : added extended selection mode and auto scrolling.
6146         (struct _GtkList): removed unneeded variables timer, button,
6147         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
6148         Added new variables undo_selection, undo_unselection, last_focus_child,
6149         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
6150         drag_selection, add_mode.
6151  
6152         New functions :
6153         (gtk_list_extend_selection), (gtk_list_start_selection),
6154         (gtk_list_end_selection), (gtk_list_select_all),
6155         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
6156         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
6157         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
6158         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
6159         
6160         * gtk/gtklist.c : 
6161         (gtk_list_enter_notify): removed, because auto scrolling now works
6162         with gtk_list_motion_notify
6163  
6164         New functions, needed for auto scrolling :
6165         (gtk_list_motion_notify) (gtk_list_move_focus_child)
6166  
6167         New functions for extended selection support :
6168         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
6169         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
6170         (gtk_list_focus_lost)
6171         
6172         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
6173         function to support auto scrolling, and avoid out-of-sync errors in
6174         case auf GTK_SELECTION_BROWSE
6175         (gtk_list_focus): modified gtk_container_focus function to avoid out
6176         off sync errors in case auf GTK_SELECTION_EXTENDED
6177
6178         * gtk/gtklistitem.h 
6179         * gtk/gtklistitem.c :
6180         New signal functions for key binding support :
6181         (toggle_focus_row), (select_all), (list_item), (unselect_all)
6182         (list_item), (undo_selection), (start_selection), (end_selection)
6183         (extend_selection), (scroll_horizontal), (scroll_vertical),
6184         (toggle_add_mode)
6185         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
6186         GDK_KEY_RELEASE_MASK
6187         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
6188  
6189         * gtk/gtkcombo.c :
6190         (gtk_combo_popup_button_press):  grab pointer for combo->list
6191         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
6192         (gtk_combo_list_key_press): take care of which child HAS_GRAB
6193         (gtk_comb_init): don't connect combo->button with button_release_event
6194
6195 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
6196
6197         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
6198
6199 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
6200
6201         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
6202         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
6203         with horizontal and vertical autoscrolling.
6204
6205 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6206
6207         * gtk/docs/man: new directory
6208         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
6209
6210 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
6211
6212         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
6213         bug
6214
6215 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
6216
6217         * docs/gtk_tut.sgml: GtkTree section from
6218           David Huggins-Daines <bn711@freenet.carleton.ca>,
6219           add a GtkText widget example
6220         * examples/text/* example/tree/* : new examples for the
6221           GtkTree and GtkText widgets
6222         * docs/gtk_tut.sgml: added an appendix to hold complete code
6223           examples that aren't in a full form elsewhere in the
6224           tutorial (e.g. scribble)
6225
6226 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6227
6228         * Released GTK+ 1.1.0
6229
6230 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
6231
6232         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
6233         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
6234
6235 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
6236
6237         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
6238         values are looked up.
6239
6240         * gtk/gtktypeutils.h:
6241         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
6242         gtk_type_enums_find_value to lookup enum values.
6243
6244         * gtk/gtkctree.h: 
6245         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
6246         GtkCTreeExpansionType. fixed signal creations to pass the enum
6247         types not just the base type GTK_TYPE_ENUM.
6248
6249         * gtk/gtkclist.h: 
6250         * gtk/gtkclist.c: fixed signal creations to pass the real enum
6251         types not just the base type GTK_TYPE_ENUM.
6252
6253 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
6254
6255         * gtk/testgtk.c : 
6256         Began cleanup, e.g. use gtk_widget_show_all instead of many 
6257         gtk_widget_show's. Completely rewrote the button box sample
6258         (only one window now). Removed "miscellaneous" button.
6259
6260 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
6261
6262         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
6263         Fixed wrong allocation for GTK_BUTTONBOX_END.
6264         (allocation->x  =>  allocation->y)
6265
6266 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
6267
6268         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
6269         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
6270         
6271         * gtk/gtkctree.c (real_tree_select): added check to avoid double
6272         selected rows
6273         (gtk_ctree_button_press)
6274         (gtk_ctree_button_release): fix for pointer grab
6275
6276 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
6277
6278         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
6279         Fixed initialization problem - dirty memory could cause problems.
6280         Also checked that bitmapped fonts can be scaled when showing the
6281         available sizes.
6282
6283 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
6284
6285         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
6286         (gtk_ctree_sort_recursive): test for node != NULL
6287         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
6288         (gtk_ctree_last) : added sanity checks
6289         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
6290
6291 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
6292
6293         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
6294
6295 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
6296
6297         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
6298
6299 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
6300
6301         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
6302         to check out binding priorities. someone should really write
6303         gtkrc-mode for emacs.
6304
6305         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
6306         * gtk/testgtk.c (main): and move it here ;). this test says something
6307         on release of C-9. (this works only if the mouse pointer is on a
6308         spinbutton and there is no focus widget).
6309
6310         * gtk/gtkrc.h:
6311         * gtk/gtkrc.c:
6312         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
6313         gtk_rc_parse_priority to parse path priority types.
6314         export rc tokens.
6315         feature binding parsing.
6316
6317 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
6318
6319         * gtk/gtkbindings.h: 
6320         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
6321         feature binding parsing in rc files.
6322         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
6323         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
6324         order the bindings with lowest priority first.
6325
6326 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
6327
6328         * gdk/gdkrgb.c: actually builds and runs properly on big
6329         endian machines now, because we #include config.h. Also
6330         fixed up a compile error in the WORDS_BIGENDIAN case in
6331         gdk_rgb_convert_565_gray. I made the fix by looking at
6332         patterns in the other code; Raph can you verify this?
6333
6334         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
6335         warnings
6336
6337 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
6338
6339         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
6340         (tree_toggle_expansion) (real_select/unselect_row)
6341         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
6342
6343 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
6344
6345         * gtk/gtktext.c (new_text_property): We free things from
6346         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
6347
6348         * Fix up line start cache when splitting a property
6349         during an insert.
6350
6351 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
6352
6353         * gtk/gtkwidget.c: restauration => restoration
6354
6355 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
6356
6357         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
6358         hasn't been created yet, don't do the lookup.
6359
6360 1998-07-20  Raph Levien  <raph@acm.org>
6361
6362         * gdk/gdkrgb.c: More cleanups in the config process.
6363
6364 1998-07-20  Raph Levien  <raph@acm.org>
6365
6366         * gdkrgb.c: Fixed minor config bug preventing big-endian
6367         architectures from working.
6368
6369 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
6370
6371         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
6372         activity indicator. It is settable now as a fraction of the
6373         total width/height using gtk_progress_bar_set_activity_blocks.
6374         Renamed gtk_progress_bar_set_number_of_blocks to
6375         gtk_progress_bar_set_discrete_blocks.
6376
6377 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
6378
6379         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
6380         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
6381         tree to specified depth
6382         (gtk_ctree_expand_to_depth): expand tree to specified depth
6383         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
6384
6385 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
6386
6387         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
6388         of GTK_CLIST_ADD_MOD
6389         * gtk/testgtk.c (add1000_clist): changed pixmap
6390
6391 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
6392
6393         * gtk/gtkmain.h: 
6394         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
6395
6396         * gtk/gtktypeutils.h:
6397         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
6398
6399 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
6400
6401         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
6402         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
6403         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
6404         CHILD_ARG_POSITION
6405         (gtk_notebook_reorder_child): new funktion to change position of a
6406         notebook page
6407         (gtk_notebook_draw_arrow): draw left/right arrow with
6408         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
6409
6410         * gtk/gtkstyle.c (gtk_default_draw_arrow):
6411         added GTK_SHADOW_ETCHED_IN/OUT
6412
6413 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
6414
6415         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
6416           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
6417         Introduced generic GtkProgress widget. Derived GtkProgressBar from
6418         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
6419
6420 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
6421
6422         * gtk/gtktypeutils.h
6423         * gtk/gtkitemfactory.h: explicitly specify void in prototype
6424
6425 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
6426
6427         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
6428         of list
6429
6430 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
6431
6432         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
6433         sropped the approach of copying all signal specific data into a
6434         GtkHandlerInfo structure. we rather keep the signal data on the stack
6435         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
6436         avoids multiple lookups of the signal pointer and works savely together
6437         with destroy notifiers of handlers.
6438
6439         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
6440         someone destroys the entry on the ::activate signal.
6441
6442 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
6443
6444         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
6445         instead of ypad (typo).
6446         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
6447         border around the allocation).
6448         (gtk_arrow_init): the static requisition needs to be setup in this
6449         function rather than gtk_widget_new(), so arrow creation works without
6450         the gtk_arrow_new() constructing.
6451         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
6452
6453         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
6454         implementation for GtkWidget::size_request, so size requisition for
6455         simple statically sized widgets like GtkArrow works.
6456
6457 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
6458
6459         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
6460         prepend -I@libdir@/glib/include anymore, since glib-config handles
6461         it; --libs strips out redundant -L<path>'s properly (there was
6462         code in there to do it before, but it didn't work)
6463
6464 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
6465
6466         * gtk/gtknotebook.h: 
6467         * gtk/gtknotebook.c: signdness corrections all ove the place.
6468         implementation of object arguments: GtkNotebook::enable_popup,
6469         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
6470         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
6471         begun implementation of child args, we have GtkNotebook::tab_label, but
6472         GtkNotebook::menu_label and GtkNotebook::position still lack the
6473         implementation.
6474         (gtk_notebook_remove_page):
6475         (gtk_notebook_current_page): allow negative indices (-1) as alias for
6476         the last page.
6477
6478         * gtk/gtkentry.h:
6479         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
6480         arguments GtkEntry::max_length and GtkEntry::visibility.
6481         (gtk_entry_adjust_scroll): queue a redraw.
6482
6483         * gtk/gtkeditable.h:
6484         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
6485         object arguments GtkEditable::text_position and GtkEditable::editable.
6486         new (action) signal GtkEditable::set_editable.
6487         provide a default handler for GtkEditable::changed that queues a redraw.
6488
6489         * gtk/gtktext.h: 
6490         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
6491         set_editable.
6492
6493 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
6494
6495         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
6496         case of drag_target == NULL
6497         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
6498         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
6499         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
6500         gtk_dir_selection_file_button): fix due to changes in clist's
6501         select_row signal.
6502
6503 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
6504
6505         * gtk/gtkwidget.h:
6506         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
6507         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
6508         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
6509         to be gint16s rather than guint16s, since that's what the code expected
6510         (for a long time actually).
6511
6512         * gtk/gtkviewport.c:
6513         added support for object arguments: GtkViewport::shadow_type,
6514         GtkViewport::vadjustment and GtkViewport::hadjustment.
6515         (gtk_viewport_add): chain gtk_bin_add.
6516
6517         * gtk/gtkscrolledwindow.c: 
6518         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
6519         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
6520
6521         * gtk/gtkadjustment.h: 
6522         * gtk/gtkadjustment.c: 
6523         * gtk/gtkctree.h: 
6524         * gtk/gtkclist.h: 
6525         * gtk/gtkctree.c: 
6526         * gtk/gtkclist.c:
6527         * gtk/gtkscrolledwindow.h:
6528         * gtk/gtkscrolledwindow.c:
6529         * gtk/gtkviewport.h:
6530         * gtk/gtkviewport.c:
6531         GtkType and macro fixups.
6532
6533 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
6534
6535         * gtk/gtkctree.h :
6536         * gtk/gtkctree.c :
6537         Added focus handling, horizontal and vertical autoscrolling,
6538         extended Selection Mode, key bindings
6539         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
6540         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
6541         Removed gtk_ctree_clear.
6542         
6543         * gtk/gtkclist.h :
6544         * gtk/gtkclist.c : 
6545         Added focus handling, horizontal and vertical autoscrolling,
6546         extended Selection Mode, key bindings
6547
6548 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
6549
6550         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
6551         source tree. For more information on GdkRgb, please see:
6552         http://www.levien.com/gdkrgb/
6553
6554         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
6555         bothers me slightly that the feature is in gdk, and this file is
6556         in gtk, but it's probably ok.
6557
6558         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
6559
6560         * gdk/gdkrgb.c:
6561         * gdk/gdkrgb.h: Added this module.
6562
6563         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
6564
6565         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
6566
6567 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
6568
6569         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
6570         to this function. it needs to relookup the signal multiple times.
6571         this fixes spurious segfaults that could show up with signal intensive
6572         code, when classes are created during a pending emission (which is
6573         normal case).
6574
6575 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
6576
6577         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
6578         child if it isn't a label.
6579
6580 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
6581
6582         * gtk/gtkdialog.h: 
6583         * gtk/gtkseparator.h: 
6584         * gtk/gtkhseparator.h: 
6585         * gtk/gtkvseparator.h: macro and GtkType fixups.
6586
6587 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
6588
6589         * gtk/testgtk.c (create_cursors): display the current cursor name.
6590
6591         * gtk/gtktypeutils.h: 
6592         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
6593         the fundamental type definition. the GtkArg union now only covers
6594         the required storage types for argument values. adapted the GTK_VALUE_*
6595         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
6596
6597         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
6598         code, fixed int/float collection. fixed a bug in the sanity checking
6599         code for GtkObjects.
6600
6601         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
6602         argument collection code.
6603
6604         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
6605         macros when distinguishing the return type.
6606
6607 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
6608
6609         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
6610           is not NULL before trying to g_list_remove the child. A patch
6611           from Michael Lausch.
6612
6613 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
6614
6615         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
6616         collection (always casted to doubles upon argument passing).
6617
6618 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
6619
6620         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
6621         object_init_func for derived objects with the object's ->klass field
6622         still pointing to the corresponding base class, otherwise overridden
6623         class functions could get called with partly-initialized objects.
6624         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
6625
6626 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
6627
6628         * gtk/gtkobject.h:
6629         * gtk/gtkobject.c:
6630         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
6631
6632         * gtk/gtkcontainer.h:
6633         * gtk/gtkcontainer.c:
6634         (gtk_container_child_arg_get_info): new function which wraps
6635         gtk_arg_get_info().
6636
6637 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
6638
6639         * gtk/gtkcontainer.c:
6640         (gtk_container_arg_get): 
6641         (gtk_container_arg_set): 
6642         * gtk/gtkobject.c:
6643         (gtk_object_arg_set): 
6644         (gtk_object_arg_get):
6645         strictly check for the associated get/set arg functions. if an
6646         arg is readable or writable, the associated class functions *must*
6647         be provided.
6648
6649 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
6650
6651         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
6652         padding into account if there is an accelerator.
6653
6654 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
6655
6656         * gtk/gtkcontainer.c:
6657         (gtk_container_add_with_args): collect the arguments with
6658         gtk_container_child_args_collect, not through gtk_object_args_collect.
6659         (gtk_container_child_set): likewise.
6660
6661 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
6662
6663         * gtk/gtktypeutils.h: 
6664         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
6665         which is derived from GTK_TYPE_STRING.
6666
6667         * gtk/gtkbindings.c: reworked the argument type handling.
6668
6669 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6670
6671         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
6672           so that it seems to allow normal operation in those modes,
6673           although you will only see black  (GIMP toolbar now pops up,
6674           just don't create a new image and GIMP now works in 4 bit.)
6675
6676 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
6677
6678         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
6679           array, which was too low (?)
6680
6681 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
6682
6683         * gtk/gtkcontainer.h: 
6684         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
6685         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
6686         we now export a new function gtk_container_child_args_collect().
6687         for consistency with the object arguments, a few functions got renamed:
6688         gtk_container_child_arg_get -> gtk_container_child_get,
6689         gtk_container_child_arg_set -> gtk_container_child_set,
6690         gtk_container_child_arg_getv -> gtk_container_child_getv,
6691         gtk_container_child_arg_setv -> gtk_container_child_setv,
6692         gtk_container_add_with_argv -> gtk_container_addv.
6693         note, gtk_container_add_with_args() remained, because its equivalent
6694         would be gtk_container_add(,, ...) which would break all existing code.
6695         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
6696         we expect the `arg_name' argument to be a const static string now.
6697         (gtk_container_get_child_arg_type): function removed.
6698
6699 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
6700
6701         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
6702         this is a static inline function that collects command line arguments
6703         from a va_list. this file can just be included in all places that
6704         need this functionality.
6705
6706         * gtk/gtkarg.h: 
6707         * gtk/gtkarg.c: new files which implement most of the argument
6708         handling stuff from gtkobject.c. also collected a few more
6709         gtk_arg_* utility functions from else places.
6710
6711         * gtk/gtkobject.h: 
6712         * gtk/gtkobject.c: moved most of the argument handling code into
6713         gtkarg.c. we now export gtk_object_args_collect() as a non-public
6714         method with a blind va_list pointer.
6715         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
6716         const static string now.
6717         (gtk_object_get_arg_type): function got removed.
6718
6719         * gtk/gtkwidget.c: 
6720         (gtk_widget_set): 
6721         (gtk_widget_new): adaptions for gtk_object_args_collect().
6722
6723         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
6724         fundamental type name so as to have a valid prefix, e.g. "bool"->
6725         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
6726         though that should probably be something like GtkNone since the
6727         type itself is called GTK_TYPE_NONE.
6728         even the internal type names need to avoid name clashes and must live
6729         in their own namespace, several code portions rely on that.
6730         we should relly have typedefs such as typedef gchar* GtkString; so the
6731         fundamental type names can be used for code dumpers just like with all
6732         the Gtk/Gdk types.
6733
6734 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
6735
6736         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
6737         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
6738         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
6739         (GTK_RELIEF_HALF).
6740         (gtk_button_paint): set the background for prelighted buttons with
6741         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
6742         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
6743         the shadow type (otherwise we get strange shadows for coloured buttons).
6744         (gtk_button_set_relief): queue a redraw after changing
6745         the relief.
6746         (gtk_button_class_init): 
6747         (gtk_button_set_arg): 
6748         (gtk_button_get_arg): added object argument "GtkButton::relief".
6749
6750         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
6751
6752 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
6753
6754         * gtk/gtkbutton.h:
6755         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
6756         GTK_BIN (button)->child to button->child to keep source compatibility.
6757
6758         * gtk/gtkoptionmenu.c:
6759         * gtk/gtkclist.c:
6760         * gtkcheckbutton.c: don't refer to button->child, but
6761         GTK_BIN (button)->child instead.
6762
6763 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
6764
6765         * docs/gtkfaq.sgml: update anon CVS info
6766
6767 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
6768
6769         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
6770         functions.
6771
6772         * gdk/gdkwindow.c:
6773         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
6774         to XFree() calls.
6775
6776 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6777
6778         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
6779         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
6780
6781 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
6782
6783         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
6784
6785 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
6786
6787         * gtk/gtkwidget.h:
6788         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
6789
6790         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
6791         error that prevented signal to entry addition for signals with
6792         parameters.
6793
6794 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
6795
6796         * ltconfig: fix for properly detecting shared lib support on
6797         SunPro cc (taken from libtool 1.2.a)
6798
6799 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
6800
6801         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
6802
6803 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
6804
6805         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
6806         rc set pattern is favoured, this is needed for overriding of style
6807         patterns with subsequently parsed rc files.
6808
6809 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
6810
6811         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
6812         error messages.
6813
6814 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
6815
6816         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
6817         modifier as well.
6818         (gtk_accelerator_name): add "<Release>" to the accelerator name if
6819         neccessary.
6820
6821         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
6822         account.
6823
6824         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
6825         default handler for key-release events, which checks for activation
6826         of GDK_RELEASE_MASK key bindings.
6827
6828         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
6829
6830 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
6831
6832         * gtk/gtkarrow.h: GtkType and macro fixups.
6833         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
6834         "GtkArrow::shadow_type".
6835
6836 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
6837
6838         * gtk/gtkalignment.h:
6839         * gtk/gtkbin.h: GtkType and macro fixups.
6840         
6841         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
6842         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
6843         GtkAlignment::xscale, GtkAlignment::yscale.
6844
6845 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
6846
6847         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
6848         fucntions from all parent types upon class initialization.
6849
6850         * gtk/gtkcontainer.c:
6851         (gtk_container_get_type): announce gtk_container_base_class_init to
6852         the type system.
6853         (gtk_container_base_class_init): new function to feature base class
6854         initialization.
6855         (gtk_container_get_child_arg): 
6856         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
6857         and set_child_arg methods of the class indicated through the argument
6858         name.
6859
6860         * gtk/gtkobject.c:
6861         (gtk_object_base_class_init): new function to feature base class
6862         initialization.
6863         (gtk_object_init_type): announce gtk_object_base_class_init to the type
6864         system.
6865         (gtk_object_class_init): setup the get_arg and set_arg pointers for
6866         GtkObjectClass.
6867         (gtk_object_setv): 
6868         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
6869         instead of bothering the type system with this.
6870
6871         * gtk/gtkaccellabel.c: 
6872         * gtk/gtkbutton.c: 
6873         * gtk/gtkradiobutton.c: 
6874         * gtk/gtktable.c:
6875         * gtk/gtktogglebutton.c: 
6876         * gtk/gtktipsquery.c: 
6877         * gtk/gtkbox.c: 
6878         * gtk/gtkpacker.c: 
6879         * gtk/gtkwidget.c: 
6880         * gtk/gtkwindow.c: 
6881         * gtk/gtkframe.c: 
6882         * gtk/gtkmisc.c:
6883         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
6884         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
6885         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
6886         arg functions to take a GtkObject argument.
6887
6888         gtk/gtkadjustment.c:
6889         gtk/gtkalignment.c:
6890         gtk/gtkarrow.c:
6891         gtk/gtkaspectframe.c:
6892         gtk/gtkbbox.c:
6893         gtk/gtkbin.c:
6894         gtk/gtkcheckbutton.c:
6895         gtk/gtkcheckmenuitem.c:
6896         gtk/gtkclist.c:
6897         gtk/gtkcolorsel.c:
6898         gtk/gtkcombo.c:
6899         gtk/gtkctree.c:
6900         gtk/gtkcurve.c:
6901         gtk/gtkdata.c:
6902         gtk/gtkdialog.c:
6903         gtk/gtkdrawingarea.c:
6904         gtk/gtkeditable.c:
6905         gtk/gtkentry.c:
6906         gtk/gtkeventbox.c:
6907         gtk/gtkfilesel.c:
6908         gtk/gtkfixed.c:
6909         gtk/gtkfontsel.c:
6910         gtk/gtkgamma.c:
6911         gtk/gtkhandlebox.c:
6912         gtk/gtkhbbox.c:
6913         gtk/gtkhbox.c:
6914         gtk/gtkhpaned.c:
6915         gtk/gtkhruler.c:
6916         gtk/gtkhscale.c:
6917         gtk/gtkhscrollbar.c:
6918         gtk/gtkhseparator.c:
6919         gtk/gtkimage.c:
6920         gtk/gtkinputdialog.c:
6921         gtk/gtkitem.c:
6922         gtk/gtkitemfactory.c:
6923         gtk/gtklist.c:
6924         gtk/gtklistitem.c:
6925         gtk/gtkmenu.c:
6926         gtk/gtkmenubar.c:
6927         gtk/gtkmenuitem.c:
6928         gtk/gtkmenushell.c:
6929         gtk/gtknotebook.c:
6930         gtk/gtkoptionmenu.c:
6931         gtk/gtkpaned.c:
6932         gtk/gtkpixmap.c:
6933         gtk/gtkpreview.c:
6934         gtk/gtkprogressbar.c:
6935         gtk/gtkradiomenuitem.c:
6936         gtk/gtkrange.c:
6937         gtk/gtkruler.c:
6938         gtk/gtkscale.c:
6939         gtk/gtkscrollbar.c:
6940         gtk/gtkscrolledwindow.c:
6941         gtk/gtkseparator.c:
6942         gtk/gtkspinbutton.c:
6943         gtk/gtkstatusbar.c:
6944         gtk/gtktext.c:
6945         gtk/gtktoolbar.c:
6946         gtk/gtktooltips.c:
6947         gtk/gtktree.c:
6948         gtk/gtktreeitem.c:
6949         gtk/gtkvbbox.c:
6950         gtk/gtkvbox.c:
6951         gtk/gtkviewport.c:
6952         gtk/gtkvpaned.c:
6953         gtk/gtkvruler.c:
6954         gtk/gtkvscale.c:
6955         gtk/gtkvscrollbar.c:
6956         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
6957         match the modified GtkTypeInfo structure.
6958
6959 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
6960
6961         * gtk/testgtk.c: use rand() instead of random() for portability
6962
6963 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
6964
6965         * configure.in
6966         * acconfig.h
6967         * gdk/gdk.c: use native Xlib XConvertCase if it's available
6968
6969 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
6970
6971         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
6972         XConvertCase() functionality from X11R6 on X11R5 systems.
6973
6974 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
6975
6976         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
6977         gdk_string_height, gdk_char_height to retrieve the exact
6978         height of a text.
6979
6980 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
6981
6982         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
6983           by Stefan Mars <mars@lysator.liu.se>
6984         * examples/clist/clist.c examples/clist/Makefile: example code
6985           for GtkCList widget from the Tutorial
6986
6987 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
6988
6989         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
6990         if the container is not visible, we might be a toplevel! this holds
6991         for all other base container implementations as well, that are
6992         candidates to derive toplevels from. in general the resizing code will
6993         care about visibility itself.
6994         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
6995         * gtk/gtkbox.c (gtk_box_remove): likewise.
6996
6997         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
6998         gtk_window_set_hints(), since we haven't calculated the new position
6999         yet.
7000
7001         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
7002         *mask are alway initialized in a sane way, regardless of the return
7003         value.
7004
7005 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
7006
7007         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
7008         to gtk_container_child_arg_setv, but takes a variable argument list.
7009         new function gtk_container_get_child_arg_type, which is needed by
7010         gtk_object_collect_args.
7011
7012         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
7013         take a function pointer to figure the argument type.
7014         adapted callers to pass gtk_object_get_arg_type.
7015         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
7016         gtk_object_get_arg_type..
7017
7018         * gtk/gtkpacker.h: 
7019         * gtk/gtkpacker.c:
7020         (gtk_packer_reorder_child): new function to change the packing order
7021         of a child.
7022         (gtk_packer_size_request): 
7023         (gtk_packer_size_allocate): take container->border_width into acount.
7024
7025         * gtk/gtkpacker.c: implemented widget arguments:
7026         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
7027         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
7028         implemented child arguments:
7029         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
7030         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
7031         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
7032         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
7033
7034         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
7035         not the alignment.
7036
7037         * gtk/gtkeventbox.h:
7038         * gtk/gtkeventbox.c: GtkType and macro fixups.
7039
7040         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
7041         sensitivity of an entry.
7042
7043         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
7044         for insensitive base and text.
7045
7046         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
7047         widget state dependent.
7048         (gtk_entry_style_set): likewise.
7049         (gtk_entry_state_changed): set background color on state changes.
7050         (gtk_entry_draw_text): for non selected text, use state dependent
7051         colors.
7052
7053         * gtk/gtktogglebutton.c: support for widget arguments
7054         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
7055
7056 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
7057
7058         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
7059         code for 1.0.x-like parameters. Changed internal interface of
7060         gtk_spin_button_real_spin. Several fixes to avoid emission of
7061         "value_changed" where possible.
7062
7063 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
7064
7065         * gtk-boxed.defs: s/GkWidget/GtkWidget/
7066
7067 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
7068
7069         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
7070         to select the resize_mode for the idle-labels container.
7071
7072         * gtk/gtkframe.h: 
7073         * gtk/gtkframe.c: GtkType and macro corrections.
7074
7075         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
7076         support widget argument "GtkRadioButton::group".
7077
7078 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
7079
7080         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
7081         unconditionally if resize_mode has changed.
7082
7083         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
7084         GTK_RESIZE_QUEUE on the scrolled window.
7085         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
7086
7087 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
7088
7089         * gtk/gtkcontainer.h:
7090         * gtk/gtkcontainer.c:
7091         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
7092         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
7093         (gtk_container_queue_resize): new function to queue a container for
7094         a *size* reallocation (doesn't affect its position, and thus its
7095         parent is left untouched usually).
7096         (gtk_container_get_resize_container): new function to retrive the next
7097         most resize container which is not itself queued for a resize.
7098         (gtk_container_idle_sizer): new function to carefully process the
7099         container_resize_queue since it can change during invokation of
7100         gtk_container_check_resize().
7101         (gtk_container_resize_children): total rework of this function to
7102         properly handle resize containers. makes a lot of assumptions whitch
7103         are stated in the comments.
7104
7105         * gtk/gtkcontainer.c:
7106         (gtk_container_real_check_resize): only requeue ourselves if we are not
7107         a resize container.
7108         (gtk_container_clear_resize_widgets): care for automatic deletion of our
7109         resize_widgets list on size_allocate through a handler connection.
7110
7111         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
7112         focus and default widget of a window, so to take the burden from
7113         gtk_widget_unparent.
7114
7115         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
7116         to be clever, but actually messed up the resize_children logic and
7117         caused unneccessary allocations on its whole branch. besides this,
7118         it messed up the display by not invoking a redraw after the allocation.
7119
7120         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
7121         that it is the child again that is queued for a resize.
7122         (gtk_table_attach): likewise.
7123         (gtk_table_remove): likewise.
7124
7125 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
7126
7127         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
7128         gtk_entry_adjust_scroll.  Required if you change the cursor
7129         position and want to sync it up with your code (Midnight Commander
7130         gtk front end needs this).
7131
7132         * gtk/gtktable.c: Deal with tables that have size 0, 0.
7133
7134 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
7135
7136         * examples/README.1ST: new file to explain how the
7137           code examples should be extracted from the tutorial.
7138
7139 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
7140
7141         * gtk/gtkctree.c (draw_row): added new "line style"
7142         GTK_CTREE_LINES_TABBED 
7143         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
7144         search the glist pointer of an GtkCTreeRow
7145
7146 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7147  
7148         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
7149         from, and clean up, the dependencies.  Generate to intermediate
7150         files to prevent problems with Ctrl-C.
7151
7152         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
7153
7154 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
7155
7156         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
7157         - Bug fix for precision problem causing occasional double emission 
7158           of "value_changed" signal (hopefully works now).
7159         - API change (should be binary compatible) : 
7160           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
7161           Modified cursor example appropriately.
7162           To spin by something other than step_/page_increment, use
7163           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
7164         - Made GTK_SHADOW_NONE the default. ;)
7165         - Fixed casting of GtkAdjustment* to GtkWidget* in
7166           gtk_spin_button_value_changed.
7167
7168 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
7169
7170         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
7171         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
7172         resize widget list before queuing the container for a new reize.
7173         (gtk_container_need_resize): changed return value to FALSE, since this
7174         used to indicate that no further resizes are needed.
7175         (gtk_container_set_arg): 
7176         (gtk_container_get_arg): 
7177         (gtk_container_class_init): implemented GtkContainer::resize_mode
7178         argument.
7179
7180         (gtk_container_resize_children): when we walk up the tree of a resize
7181         widget we need to stop if we are the current parent.
7182
7183         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
7184         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
7185         (gtk_widget_hide_all): retrive the toplevel widget from via
7186         gtk_widget_get_resize_container().
7187
7188 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
7189
7190         * gtk/gtklist.c (gtk_list_button_press): Only respond
7191           to selection with button 1. This allows context-sensitive
7192           menus to work correctly.
7193
7194 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
7195
7196         * gtk/gtkaccelgroup.c: 
7197         * gtk/gtkbindings.c: 
7198         * gtk/gtkcontainer.c:
7199         * gtk/gtkitemfactory.c:
7200         * gtk/gtkobject.c: 
7201         * gtk/gtksignal.c:
7202         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
7203         g_quark_from_static_string calls to save memory.
7204
7205         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
7206         function _after_ the new data has been setup.
7207         minor changes to object data functions to feature the GQuark type.
7208
7209 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
7210
7211         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
7212           from argv.
7213
7214 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
7215
7216         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
7217           to be more readable perl, to spit out stuff that looks
7218           more like readable C, and to pipe output through indent
7219           so output looks a lot like readable C. No functional
7220           changes.
7221
7222 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
7223
7224         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
7225           necessary when switching to a masked pixmap. (Based on a patch
7226           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
7227
7228 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
7229
7230         * gtk/gtkeditable.[ch]: Added action signals for keyboard
7231           bindings. (move_cursor, kill_word, etc, etc, etc). 
7232
7233           removed the time argument from
7234           gtk_editable_cut/copy/paste_clipboard (source but not
7235           binary incompatible...) Instead get time from
7236           gtk_get_current_event ().
7237         
7238         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
7239           signals.
7240
7241 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
7242
7243         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
7244
7245         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
7246              parent class to GtkNotebookClass when splitting the widget in
7247              two.  Also updated some comments.
7248
7249         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
7250                button without a font selected.
7251
7252              Fixed bug in set_font_name - I hadn't updated the code to
7253                search for the style in the font_style clist - it was
7254                still assuming the style row was equal to its index,
7255                but it isn't any more.
7256         
7257              Changed 'Reset' button on filter page to 'Clear Filter'.
7258              Deleted old code relating to the old 'Filter Fonts' toggle
7259              Updated some comments.
7260              Cleared 'Actual Fontname' if no font is set.
7261
7262         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
7263              destroying the GtkFontSelection instead of the
7264              GtkFontSelectionDialog.
7265
7266 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
7267
7268         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
7269           flag to make all warnings fatal errors.
7270
7271         * gtk/testthreads.c: moved <pthreads.h> include inside 
7272           #ifdef USE_PTHREADS
7273
7274 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
7275
7276         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
7277           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
7278
7279         - Added new function gtk_container_set_resize_mode() for
7280           fine-grained control of where resize-queueing is done.
7281
7282         - Removed GtkContainer::need_resize and GtkWindow::move_resize
7283         - Added GtkContainer::check_resize to replace need_resize.
7284
7285         - Added function gtk_container_check_resize() to trigger
7286           queued resizes, and gtk_container_resize_children() to
7287           Figure which children need to be size-allocated. (logic
7288           moved from gtkwindow.c)
7289
7290         - Reorganized code in gtkwindow.c
7291         
7292         - Set the resize-mode for viewports so that resizes within
7293           a viewport don't propagate out of it. 
7294         
7295 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7296
7297         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
7298
7299         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
7300         g_return_val_if_fail, because the function *does* return a value.
7301
7302 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
7303
7304         * gtk/gtkaccellabel.h:
7305         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
7306         request the size of the accelerator portion of an accel label.
7307         (gtk_accel_label_size_request): don't request for the accelerators size.
7308         (gtk_accel_label_expose_event): only draw the accelerator if we got
7309         enough extra space.
7310
7311         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
7312         width from children.
7313
7314         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
7315         object (after removal has been requested) check if there is still an
7316         accelerator remaining to avoid adding two accelerators on an object.
7317         this can happen for locked accelerators (or accelerator-frozen widgets).
7318         (gtk_menu_size_request): feature childrens accelerator width in size
7319         requests.
7320
7321         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
7322         gtk_widget_freeze_accelerators() for dynamically created menu items.
7323
7324         * gtk/gtksignal.h: 
7325         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
7326         which will return a handler_id > 0 if the specified function is pending
7327         for `signal_id'.
7328
7329         * gtk/gtkwidget.h:
7330         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
7331         a signal handler function to stop accelerator addition.
7332         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
7333         which will prevent (undo) any accelerators from being added to or
7334         removed from a widget.
7335
7336 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
7337
7338         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
7339         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
7340         acceleration, new API gtk_spin_button_set_snap_to_ticks.
7341
7342 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
7343
7344         * gdk/gdk.h:
7345         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
7346         the current GdkWindow the pointer is on if there is any.
7347         
7348         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
7349         and one column, so we don't construction logic at all. changed a few
7350         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
7351         unsigned int wraps.
7352
7353         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
7354         portion, added an additional check for parent != widget.
7355
7356         * more GtkType and macro fixups.
7357
7358 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7359
7360         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
7361         "clip" parameter, which is the clipping rectangle to use.  This
7362         eliminates the extremely annoying flicker when exposing parts of
7363         the handlebox.
7364
7365 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
7366
7367         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
7368         resizing
7369
7370 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
7371
7372         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
7373         != 0 on the argument.
7374
7375         * gtk/gtktable.h: 
7376         * gtk/gtktable.c: new function gtk_table_resize() which allowes
7377         shrinking and expanding of tables. implementation of widget arguments
7378         and child arguments. many signedness corrections.
7379
7380 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
7381
7382         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
7383         not only the child, otherwise we might end up taking away other
7384         childrens space after the resize.
7385
7386         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
7387         an unknown menu path from any source, that path must always be flagged
7388         as "modified", since we don't really know whether it has its default
7389         value or not.
7390
7391         * gtk/gtktree.c:
7392         * gtk/gtkpacker.c:
7393         * gtk/gtknotebook.c:
7394         * gtk/gtkmenushell.c:
7395         * gtk/gtklist.c:
7396         * gtk/gtkpaned.c:
7397         * gtk/gtkfixed.c: 
7398         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
7399
7400         * gtk/gtkbox.h: 
7401         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
7402         arguments. implemented child arguments.
7403
7404         * more GtkType and macro fixups.
7405
7406 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
7407
7408         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
7409
7410         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
7411         and gtk_clist_get_hadjustment.
7412
7413         * gtk/gtkcontainer.c:
7414         implementation of children arguments, new class member functions
7415         (child_type), (get_child_arg) and (set_child_arg) plus a new field
7416         n_child_args.
7417         (gtk_container_child_type): new function which returns the type of a
7418         child that the container expects for its next addition.
7419         (gtk_container_add_child_arg_type): new function to introduce a new
7420         child argument at class creation time.
7421         (gtk_container_query_child_args): new function to query all child
7422         arguments that are supported by a container class.
7423         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
7424         child argument.
7425         (gtk_container_child_arg_setv): new function to set a child argument for
7426         a certain container and child combination.
7427         (gtk_container_add_with_args):
7428         (gtk_container_add_with_argv): new functions to feature addition of a
7429         new child in combination with the setting of certain child arguments.
7430
7431         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
7432         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
7433         this should really be done through class cretion hooks some day.
7434
7435         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
7436         guint : 16.
7437
7438         * gtk/gtkpacker.h:
7439         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
7440         follow the gtk convention for lower case variable names (important
7441         for language wrappers and widget arguments), and made them guint : 16.
7442
7443         * examples/packer/pack.c: adaptions for the case converted GtkPacker
7444         fields.
7445
7446 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
7447
7448         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
7449         change the character pair for single line comments.
7450         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
7451         GtkItemFactoryClass.
7452         (gtk_item_factory_parse_rc_string): likewise.
7453
7454 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
7455
7456         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
7457         lists from the klass structure to a static structure
7458         in gtkfontsel.c; cleans up global the namespace.
7459
7460 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
7461
7462         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
7463         bug with /*< skip >*/ and remove warning.
7464         
7465 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
7466
7467         * gtk/Makefile.am: Made the gtkmarshal.* generation
7468         rules maintainer-only.
7469
7470 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
7471
7472         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
7473           gtk/Makefile.am gtk/makenums.pl 
7474
7475         Removed out the G_ENUM/FLAGS mechanism in favor
7476         of a perl script that parses the standard headers
7477         (with occasional /*< nick=foo >*/ style overrides)
7478         and extracts the enumerations.
7479
7480           gtk/maketypes.awk: Small improvments to the
7481           translation of names. (Avoid splitting gc into
7482           g_c_.)
7483         
7484 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
7485
7486         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
7487         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
7488         
7489 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
7490
7491         * gtk/gtkentry.c:
7492         - Restored gtk_entry_adjust_scroll to static 
7493         - Changed text positioning code so that we always
7494           display as large a portion of the text as possible.
7495
7496 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
7497
7498         * gtk/gtktext.c (gtk_text_finalize): Free internal
7499         structures of text widget. Also, unreference pixmaps
7500         when unrealizing.
7501         
7502 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
7503
7504         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
7505         3.3.1 bug workaround to number keys starting at 1.
7506
7507 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
7508
7509         * docs/gtk_tut.sgml: Fixed urls for complete example
7510         source for scribble+widget-writing examples.
7511
7512 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
7513
7514         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
7515         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
7516         specs of the form c #abcdef [ more keys ] properly.
7517
7518 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
7519
7520         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
7521         (gtk_spin_button_set_shadow_type):
7522         New API to set the shadow type of the arrow panel.
7523
7524 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
7525
7526         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
7527         code for drawing the child in two places at once. Unfortunately,
7528         not only does it not work anymore (because reparenting has
7529         been fixed), but it also triggers reparent/expose loops
7530         in some cases.
7531
7532         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
7533         an unecessary unrealize.
7534
7535 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
7536
7537         * gdk/gdkwindow.c (gdk_window_reparent): Update the
7538           old and new parents' child window lists properly.
7539
7540 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
7541
7542         * gtk/gtkpacker.h:
7543         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
7544         and GtkSideType, to be consistent with the rest of Gtk's enum
7545         definitions. wrapped the enum definitions with the G_ eunm wrappers.
7546         spelled out the GTK_ANCHOR_* enum values, since single letters don't
7547         work out corectly as nick-names (left the old values as aliases).
7548         some signdness corrections (border-width, spacing), could stand more.
7549
7550 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
7551
7552         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
7553           Added gtkpacker
7554
7555         * examples/packer/pack.c, examples/packer/Makefile: Added
7556           gtkpacker example
7557
7558 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
7559
7560         * gtk/gtktext.c (remove_cache_line): Fixed broken
7561         list-removal code.
7562
7563         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
7564         Check bounds before deleting.
7565
7566 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
7567
7568         * autogen.sh: Support ACLOCAL_FLAGS
7569
7570 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
7571
7572         * gtk-config.in: Added missing quotes.
7573
7574 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
7575
7576         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
7577
7578 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
7579
7580         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
7581         G_COMPILED_WITH_DEBUGGING.
7582
7583         * configure.in (fd_set): Explain check better.
7584
7585         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
7586         the version from which gtk+'s libtool forked.  Needed for people
7587         who use post-1.2 alphas of libtool.
7588
7589 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
7590
7591         * glib/* Moved to glib module
7592
7593         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
7594           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
7595
7596           configuration changes for the above:
7597          
7598           - Use AM_PATH_GLIB by default to find glib; also accept
7599             a --with-glib option for using an uninstalled glib.
7600          
7601           - Put --enable-debug information into config.h so
7602             that we rebuild when it changes. (was in glibconfig.h)
7603
7604 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
7605
7606         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
7607
7608         * gtk/gtknotebook.h (struct _GtkNotebookClass):
7609         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
7610         added missing argument (according to Joseph Coleman's bug report)
7611
7612         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
7613         function to fix notebook focus handling
7614         
7615 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
7616
7617         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
7618           glib/gutils.c glib/testglib.c glib/gdataset.c
7619           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
7620           gtk/gtktext.c gtk/gtkbindings.c:
7621
7622          renamed g_const_pointer => gconstpointer
7623
7624 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
7625
7626         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
7627         invoked with (NULL, NULL); (this worked sometime ago).
7628
7629         * gtk/gtktypeutils.h: 
7630         * gtk/gtktypeutils.c: enum and flags type creation can now be done
7631         through gtk_type_register_enum() and gtk_type_register_flags(),
7632         which allow to specify the enum value arrays directly.
7633         the NULL terminated value arrays can be retrived through
7634         gtk_type_enum_get_values() and gtk_type_flags_get_values();
7635         (gtk_type_children_types): new function to query derived types.
7636
7637 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
7638
7639         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
7640         environment to genmarshal.pl.
7641         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
7642         rule), and removed it where not needed (in the dependencies).
7643
7644         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
7645
7646 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
7647
7648         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
7649         was just g_direct_hash.
7650
7651 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
7652
7653         * configure.in: x_libs=, not $x_libs=. Enough said.
7654           (Case only hit for --disable-xshm)
7655         
7656 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
7657
7658         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
7659           when testing for X libraries, don't replace them. Because
7660           the user might have specified the path to the X libraries
7661           themself before running configure.
7662
7663         * examples/**.c: Changed all gpointer * to gpointer
7664         
7665 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7666
7667         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
7668         fleur_cursor field.  Now the cursor is created/destroyed on demand
7669         by the routines that need it.
7670
7671         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
7672         (gtk_handle_box_motion): The fleur cursor is created and destroyed
7673         only when needed.
7674
7675 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
7676
7677         * gtk/gtktypeutils.h: 
7678         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
7679         gtk_enum_set_values to gtk_type_enum_get_values and
7680         gtk_type_enum_set_values respectively, since they are actually type
7681         system features.
7682
7683         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
7684         my last commit. ;)
7685
7686 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
7687
7688         * gtk/gtkselection.h: 
7689         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
7690         gtk_selection_data_free.
7691
7692         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
7693         for "selection_received", which was completely bogus.
7694         * other fixups to gtk_signal_new() calls all over the place.
7695
7696         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
7697         * gtk/gtktypebuiltins_vars.c: type variable implementations.
7698         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
7699         declarations.
7700         * gtk/gtktypebuiltins_evals.c: enum value arrays.
7701         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
7702         gtk.defs.
7703         * gtk/gtk.defs: generated file with scheme syntax for type definitions
7704         of gtk and gdk structures and enums.
7705         * gtk/gtktypeutils.h: 
7706         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
7707         macros anymore (this fixes binary incompatibility with new enum
7708         definitions).
7709
7710         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
7711         key bindings for this widget.
7712         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
7713         handler.
7714
7715         * gtk/gtkobject.h:
7716         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
7717         again. new functions gtk_object_class_user_signal_new () and
7718         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
7719         flag on the signal creation.
7720
7721 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
7722
7723         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
7724
7725 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
7726
7727         * gdk/gdkprivate.h: 
7728         * gdk/gdktypes.h: 
7729         * gtk/gtkprivate.h: 
7730         * gtk/gtkwidget.h: 
7731         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
7732
7733         * reworked enum value array generation code. gtk.defs is a generated
7734         file now.
7735
7736 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
7737
7738         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
7739         check menu items in the compatibility code (this required me to remove
7740         the "<check>" part from the menu item name, grrr).
7741
7742 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
7743
7744         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
7745         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
7746         
7747 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
7748
7749         * gtk/gtkitemfactory.h: 
7750         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
7751         additions to the dumping code to feature GtkPatternSpec.
7752         even found a bug to fix in the original code ;)
7753         
7754 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
7755
7756         * gtk/gtkitemfactory.c: support different types of callbacks, to
7757         maintain existing code.
7758
7759 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
7760
7761         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
7762
7763         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
7764         this should eventually be done by gentypeinfo.el somewhen.
7765         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
7766
7767         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
7768         enum values of an enum type.
7769
7770         * gtk/gtk.defs:
7771         * gtk/gtkcurve.h: 
7772         * gtk/gtkobject.h: 
7773         * gtk/gtkprivate.h: 
7774         * gtk/gtkwidget.h:
7775         * gtk/gtkenums.h: 
7776         brought enum/flags definitions in sync, added a few more enum
7777         definitions for bindings and pattern matching.
7778
7779         * some more macro and GtkType fixups in various places.
7780
7781         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
7782         as a key-release modifier for the binding system.
7783
7784 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
7785
7786         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
7787         was a stale list pointer that is already present in GtkMenuShell.
7788
7789         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
7790         GtkMenuShell::selection_done which is emitted after the menu shell
7791         poped down again and all possible menu items have been activated.
7792
7793 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
7794
7795         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
7796         before activation of the menuitem, so the menu is actually taken off the
7797         screen prior to any menu item activation.
7798
7799         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
7800         for NULL nodes.
7801
7802         * gtk/gtkwidget.h:
7803         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
7804         the emission of the "add-accelerator" signal on a widget. this is
7805         usefull to prevent accelerator installation on certain widgets.
7806
7807         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
7808         labels left justified, by setting their alignment. stop accelerator
7809         installation for the menu items, since we use dynamic menus.
7810
7811 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
7812
7813         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
7814         should *really* use GtkItemFactory. this is only for preserving source
7815         compatibility where possible, use of GtkMenuFactory is deprecated as of
7816         now.
7817
7818         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
7819         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
7820         missed this possibility when i added gtk_object_class_add_user_signal
7821         in late january.
7822
7823         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
7824
7825 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
7826
7827         * gtk/gtkaccelgroup.h: 
7828         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
7829
7830         * gtk/gtkaccellabel.h: 
7831         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
7832         display of the accelerators associated with a certain widget.
7833
7834         * gtk/gtkitemfactory.h: 
7835         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
7836         parsing and accelerator handling.
7837
7838         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
7839         positioning a menu.
7840         (gtk_menu_map): removed the allocation code.
7841         (gtk_menu_size_allocate): care for redrawing of children and resize
7842         our widget->window correctly.
7843         (gtk_menu_key_press): feature the new accelerator groups.
7844
7845         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
7846         submenu if neccessary.
7847
7848         * gtk/gtkmenuitem.c:
7849         * gtk/gtkcheckmenuitem.c:
7850         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
7851         function variants.
7852
7853         * gdk/gdk.c:
7854         (gdk_keyval_from_name): 
7855         (gdk_keyval_name): new functions for keyval<->key-name associations.
7856         (gdk_keyval_to_upper): 
7857         (gdk_keyval_to_lower): 
7858         (gdk_keyval_is_upper): 
7859         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
7860         regards to their cases.
7861
7862 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
7863
7864         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
7865         widget's class path.
7866         (gtk_widget_path): new function to calculate a widget's name path.
7867
7868         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
7869         pattern matching, features reversed pattern matches.
7870
7871 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
7872
7873         * examples/extract.sh, examples/extract.awk:
7874           New files to automagically extract code examples from the
7875           tutorial.
7876
7877 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
7878
7879         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
7880         * gtk/gtkcontainer.c (gtk_container_focus_move):
7881         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
7882
7883 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
7884
7885         * docs/gtk_tut.sgml: minor changes to support auto
7886           extraction of example code
7887
7888 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
7889
7890         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
7891           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
7892
7893 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
7894
7895         * docs/gtk_tut.sgml:
7896           - new section on Events
7897           - change all delete_event callbacks to include
7898             a GdkEvent parameter
7899           - clean up the formatting
7900
7901         * examples - helloworld.c, helloworld2.c, notebook.c,
7902           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
7903           rulers.c, table.c, wheelbarrow.c: change all delete_event
7904            callbacks to include a GdkEvent parameter.
7905
7906 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
7907
7908         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
7909         field of crossing events.
7910         (struct _GdkEventCrossing): Added the following fields: time, x,
7911         y, x_root, y_root, mode, focus, state.
7912
7913         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
7914         crossing event structure.
7915
7916         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
7917         changes to the crossing event structure.
7918
7919 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
7920
7921         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
7922
7923 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
7924
7925         * docs/gtk_tut.sgml:
7926            - GtkTooltips, update to current API
7927            - change all 'gpointer *data' to 'gpointer data'
7928            - other minor changes
7929
7930 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
7931
7932         * configure.in (LDFLAGS): Bomb out with a moderately
7933           helpful message if detection of X libraries fails.
7934
7935 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
7936
7937   [ Combination of:
7938      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
7939      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
7940
7941         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
7942           gtk/gtksignal.c gtk/gtktext.c: 
7943
7944           Fixups for warnings from adding const to type of GHashFunc,
7945           GCompareFunc
7946         
7947         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
7948           ansi-warnings fixups.
7949
7950 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
7951
7952         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
7953         Locate child at (border_width,border_width), not
7954         (2*border_width,2*border_width). [ The border is _outside_
7955         widget->window ]
7956         
7957         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
7958           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
7959
7960 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
7961
7962         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
7963         used in gnome-libs
7964
7965 1998-05-22    <sopwith@redhat.com>
7966
7967         * gtk/gtkeventbox.c: Pass size_allocate on to the child
7968         regardless of whether it is visible or not. Also
7969         locate child at (border_width,border_width), not (0,0)
7970
7971 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
7972
7973         * gtk/gtkhandlebox.c: Added style_set handler.
7974
7975 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
7976  [ From: Chris Lahey  <clahey@umich.edu> ]
7977         
7978         * gtk/gtkeditable.c, gtk/gtkeditable.h,
7979           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
7980           and set_position functions to get and set the cursor position.
7981
7982         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
7983           signal status. Make GtkText do user-controlled insertion
7984           and deletion through the Editable widget so that these
7985           signals are properly emitted.
7986
7987         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
7988           display asterisks instead of empty space when visible = FALSE)
7989
7990 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
7991
7992         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
7993         signal.
7994
7995 1998-05-21    <sopwith@redhat.com>
7996
7997         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
7998         custom routine for loading images specified in gtkrc's.
7999
8000 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
8001
8002         * configure.in: Use pthread_attr_init() as a test function,
8003         since most of the rest of -lpthread is macros on DU4.
8004
8005 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
8006
8007         * gtk/gtkcombo.c: implemented completion in the entry.
8008
8009 1998-05-18    <sopwith@moebuis.labs.redhat.com>
8010
8011         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
8012
8013 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
8014
8015         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
8016         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
8017         to be of runtype GTK_RUN_LAST.
8018
8019         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
8020         "need-resize".
8021
8022         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
8023         "widget-selected".
8024
8025 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
8026
8027         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
8028         text retrived from GtkEntry. only intercept the Tab key if there
8029         was some text to complete.
8030
8031 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
8032
8033         Basic thread-awareness:
8034
8035         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
8036
8037         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
8038         gdk_threads_[init/enter/leave] for applications, plus
8039         gdk_threads_wake to wake the mainloop thread out of
8040         the select().
8041
8042         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
8043
8044 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
8045
8046         * gtk/testgtk.c (list_clear): Account for the fact
8047         that gtk_list_clear_items is not inclusive. (Clears
8048         [start, end))
8049
8050 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
8051
8052         * gdk/gdk.c: include gdkkeysyms.h always
8053         
8054
8055 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
8056
8057         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
8058         the visibility_notify_event method and changed method order.
8059
8060 1998-05-14    <sopwith@moebuis.labs.redhat.com>
8061
8062         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
8063
8064 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
8065
8066         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
8067         from Olli Helenius <ollhel@batman.jytol.fi>.
8068
8069         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
8070         freeing types.
8071         (gtk_type_set_chunk_alloc): new function to allow allocation of new
8072         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
8073         thorugh g_malloc).
8074
8075         * gtk/gtkobject.c (gtk_object_finalize): free an object through
8076         gtk_type_free().
8077
8078         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
8079         GtkButtons to 16.
8080         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
8081         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
8082
8083 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
8084
8085         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
8086           GPOINTER_TO_UINT fixes.
8087
8088         * gtk/gtksignal.c: Include <string.h> for memset.
8089
8090 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
8091         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
8092
8093         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
8094         Cleanups, comments and the ability to have rulers with 
8095         a reversed direction.
8096
8097 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
8098
8099         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
8100         that Sopwith missed when changing stat => lstat.
8101
8102 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
8103
8104         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
8105           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
8106         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
8107
8108         * gdk/gdk.c: Print sizeof() results
8109         as g_print("%ld", (glong)sizeof(foo)), to deal with
8110         sizeof() being long on Alpha's.
8111
8112         * gtk/testgtk.c: include <string.h> for strlen
8113
8114 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
8115         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
8116         
8117         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
8118         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
8119
8120         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
8121
8122 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
8123         (From: Christopher James Lahey <clahey@umich.edu>)
8124         
8125         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
8126           gtk/testgtk.c:
8127
8128         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
8129         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
8130         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
8131         the default relief for the toolbars buttons. Added an
8132         toggle for the toolbar test in testgtk.c.
8133
8134 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
8135
8136         * docs/gtk-config.1: Rewritten and hopefully improved.
8137
8138 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
8139
8140         * docs/Makefile.am
8141         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
8142
8143 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8144
8145         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
8146         GtkPreview's visual and colormap, otherwise things can BadMatch.
8147
8148         * gtk/testgtk.c (create_color_preview): 
8149         (create_gray_preview): Removed pushing/popping of visual/colormap
8150         now that GtkPreview does things correctly.
8151
8152         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
8153         (gtk_color_selection_draw_wheel): Pick the style from the correct
8154         place (the colorsel->wheel_area widget) so that the GCs will match
8155         with where we are going to paint to.
8156
8157         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
8158         of visual/colormap now that GtkColorSelection does things the
8159         right way.
8160
8161 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
8162
8163         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
8164         previously unused window->need_resize flag to mark if a window's
8165         descendents changed size while the window was not visible. In this
8166         case, when the window becomes visible, we reallocate everything,
8167         since we didn't keep track of what actually changed.
8168
8169         (Fixes bug where changing the popdown strings of a
8170         combo to something of the same length caused them to
8171         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
8172
8173 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
8174
8175         [security audit by Alan Cox]
8176
8177         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
8178         exceed maximum assumed size.
8179
8180         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
8181         not exceed maximum assumed size.
8182         (gtk_menu_factory_remove): likewise.
8183         (gtk_menu_factory_find_recurse): likewise.
8184
8185 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
8186
8187         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
8188         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
8189         redrawn if that is still neccessary. don't allow queueing of already
8190         destructed objects.
8191         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
8192         widgets which are in the queue can be destroyed safely, handle
8193         requeueing properly.
8194         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
8195         widgets which are in the queue can be destroyed/unrealized safely.
8196
8197 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
8198
8199         * gtkfaq.sgml: add question on multi-threading,
8200           minor URL cleanups.
8201
8202 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
8203
8204         * configure.in (cflags_set): preserve automake CFLAGS.
8205
8206         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
8207         and libgdk-1.1.la. this means we need to change certain portions of
8208         the Makefile.am on major/minor version bumps.
8209
8210         * ltmain.sh: the -release option is not required anymore.
8211         
8212         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
8213         of the first argument to be of type GtkObject. unconditionally compile
8214         this function. removed __GNUC__ dependancy of the gtk_object_ref and
8215         gtk_object_unref macro wrappers for this function.
8216
8217 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
8218
8219         * gtk/gtkobject.h:
8220         * gtk/gtkobject.c:
8221         (gtk_object_data_try_key):
8222         (gtk_object_data_force_id): these are now macros substituting the old
8223         functions. we just use the corresponding g_dataset_* functions for
8224         key->id associations. (this is to assure unique key<->id associations).
8225
8226 1998-05-10  Stefan Jeske  <stefan@gtk.org>
8227
8228         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
8229         to gboolean.
8230
8231         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
8232
8233 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
8234
8235         * configure.in (LIBS): Try to figure out if this
8236         is Digital Unix and we need -std1 to get the
8237         right prototypes.
8238
8239 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
8240
8241         * docs/gtk_tut_it.sgml: update of Italian tutorial
8242           translation from Daniele Canazza <dcanazz@tin.it>
8243
8244 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
8245
8246         * gtk/gtkfeatures.h.in: new file used as template for
8247         * gtk/gtkfeatures.h: new file to define macros indicating newly
8248         introduced features, such as GTK_HAVE_SIGNAL_INIT.
8249
8250         * gtk/gtksignal.c:
8251         (gtk_signal_emitv_by_name):
8252         (gtk_signal_emitv):
8253         new functions to emit signals with an already provided parameter set.
8254         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
8255         (gtk_signal_real_emit): prototype changes, so this functions always
8256         gets its parameters and signal structure as arguments.
8257         (gtk_signal_emit): provide the signal structure and parameter list for
8258         gtk_signal_real_emit.
8259         (gtk_signal_emit_by_name): likewise.
8260
8261 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
8262
8263         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
8264         signal connections through unsetting GTK_CONNECTED.
8265         (gtk_signal_handler_insert): reflect the presence of signal connections
8266         through setting GTK_CONNECTED.
8267         (gtk_signal_real_emit): only check for handler emissions if the object
8268         has the GTK_CONNECTED flag set.
8269         (gtk_signal_handler_pending): don't check for pending handlers if the
8270         GTK_CONNECTED flag is not set for this object.
8271
8272         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
8273         a GtkObject has signal handler connections.
8274
8275         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
8276         set for this object call gtk_signal_handlers_destroy().
8277         
8278         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
8279         multiple processing of macro args.
8280
8281         * gtk/gtktypeutils.c:
8282         * gtk/gtkobject.c:
8283         * gtk/gtkwidget.c:
8284         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
8285
8286 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
8287
8288         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
8289         draw-queue when we are done. 
8290
8291         (gtk_widget_queue_draw/_queu_resize): Always return
8292         FALSE and avoid having two idles at the same time.
8293         
8294 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
8295
8296         * gtk/gtktext.c: Various fixes to make sure cache
8297         lines are freed if line_start_cache doesn't point to the
8298         beginning of the cache.
8299
8300 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
8301
8302         * style_set improvements for GtkText and GtkEntry
8303
8304 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
8305
8306         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
8307         been initialized.
8308
8309 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
8310
8311         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
8312         data chunks through a global object data structure list. unlink
8313         object data before invoking its destroy function.
8314         (gtk_object_finalize): slight modification to allow usage of object
8315         data during object finalization.
8316
8317 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
8318
8319         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
8320         signal names, e.g. "signal-name" is now an alias for "signal_name".
8321         (gtk_signal_handler_new): allocate handlers through a global handler
8322         structure list, that's faster than memchunks.
8323         (gtk_emission_new): allocate emissions through a global emission
8324         structure list, that's faster than memchunks.
8325
8326 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
8327
8328         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
8329
8330         * ltmain.sh: added a new commandline flag -postfix similar to -release,
8331         but will immediately change the library name.
8332
8333         * gdk/Makefile.am:
8334         * gtk/Makefile.am: specify -postfix and -version-info
8335
8336         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
8337         GTK_BINARY_AGE. calculate LT_* variables for libtool.
8338
8339 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8340
8341         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
8342         background (fg_set -> bg_set confusion).
8343
8344 1998-05-06  Stefan Jeske  <stefan@gtk.org>
8345
8346         * gtk/testgtk.c (unselect_all): Removed code that caused an
8347         endless loop.
8348
8349 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
8350
8351         * gtk/gtksignal.c: reimplemented the signal storage system to use a
8352         linear array rather than a hash table.
8353         be carefull *not* to keep any GtkSignal pointers across invokations
8354         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
8355         general code cleanups, made all allocations through memchunks.
8356         (gtk_signal_lookup): we now do the lookup of signals through a key_id
8357         for the signal names to avoid multiple hashing of the signal name on
8358         lookups for the several hirarchy levels of an object.
8359
8360 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
8361
8362         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
8363         to speed things up and remove code duplication.
8364
8365         Reintegrated buffer overflow patches, and added
8366         some extra paranoia.
8367         
8368 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
8369
8370         * gdk/gdk.c (gdk_event_translate): A guint * was
8371         being passed where X expected a Keysym *, and
8372         keysyms are long's on Alpha Linux. This was causing
8373         segfaults in Xlib, apparently because of alignment.
8374         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
8375         
8376 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
8377
8378         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
8379         set GDK_EXPOSURE_MASK for DrawingAreas
8380
8381 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
8382
8383         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
8384         (superceded by RC file reparsing capabilities)
8385
8386         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
8387         events. (Shouldn't be sent to the InputOnly leader, which
8388         it is now by gdk_event_send_clientmessage_toall
8389
8390         * gtk/testgtk.c: Added extra button to rcfiles test
8391         to send out _GDK_READ_RCFILES events.
8392         
8393 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
8394
8395         * gtk/gtkselection.c (gtk_selection_clear): Fixed
8396         reversed conditionals that caused segfault on some
8397         platforms.
8398
8399 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
8400
8401         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
8402         cast to GTK_OBJECT for gtk_object_ref.
8403
8404 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
8405
8406         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
8407         checking for signal initialization in gtksignal.c.
8408
8409         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
8410         a long debugging period ;)
8411
8412 1998-05-05  Stefan Jeske  <stefan@gtk.org>
8413
8414         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
8415         New function to wrap XSetDashes; modified gtkctree.c to use it.
8416
8417 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8418
8419         * configure.in: Added $x_libs in the other_libraries field in the
8420         check for XShapeCombineMask.
8421
8422 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
8423
8424         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
8425         gtk_type_is_a().
8426         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
8427         linear array rather than a hash table. it actually speeded up testgtk
8428         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
8429         pointers across invokations of gtk_type_node_next_and_invalidate() and
8430         therefore gtk_type_unique()!
8431
8432         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
8433         inheritance of a class pointer.
8434         (GTK_OBJECT): modifications for speedups.
8435         (GTK_IS_OBJECT): likewise.
8436         (GTK_OBJECT_CLASS): likewise.
8437         (suggested by owen).
8438
8439         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
8440
8441         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
8442
8443         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
8444         since its derivation changed 4 month ago ;(. showed up with the unique
8445         type name checking code in gtk_type_unique().
8446
8447         * random guint->GtkType and macro fixups.
8448
8449 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
8450
8451         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
8452         Configure events that would result in a negative
8453         size.
8454
8455 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
8456
8457         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
8458         "glibconfig.h" and another about writing another IRC
8459         client.
8460
8461 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
8462
8463         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
8464         parameters to log are doubles. Digital Unix apparently
8465         is missing the argument in its prototype.
8466
8467 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
8468
8469         * gtk/gtklabel.c (gtk_label_state_changed): Don't
8470         force a clear until the widget is actually on
8471         screen.
8472
8473 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
8474
8475         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
8476         to make this consistent with the gtk-1-0 tree.
8477
8478 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
8479
8480         * configure.in acheader.h gdk/gdkwindow.c 
8481         Check for Shape extension both on the client and server
8482         side. (And, more importantly, check for the shape extension
8483         so we may include -lXext even when compiling with --disable-xshm)
8484
8485         Don't set override_redirect on all shaped windows. It isn't
8486         necessary.
8487
8488         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
8489         and foreign windows. Use this to check if we
8490         need to get the colormap from X.
8491
8492 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
8493
8494         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
8495         between the default and the button always in GTK_STATE_NORMAL.
8496
8497         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
8498         callback.
8499
8500 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
8501
8502         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
8503           Fix a buffer overflow on pixmaps that claim to have
8504           more than 31 characters per pixel.
8505
8506           (gdk_pixmap_read_string): Don't wrap around strings longer
8507           than half of address space ;-)
8508
8509         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
8510         that were used for printing integers.
8511
8512         * */* (almost):
8513
8514         Style: All 
8515           int foo () { ... }
8516         changed to
8517           int foo (void) { ... }
8518
8519         Even where there were proper prototypes elsewhere.
8520
8521         * gdk/gxid.c (handle_claim_device): Some extra checks.
8522         It isn't safe against being fed bad X id's, but at
8523         least it should be safe against deleting all your
8524         files.
8525
8526 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
8527
8528         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
8529         to set the adjustments value when there is no current emission.
8530         [ Removed by mutual agreement owt 5/3/1998 ]
8531
8532         * gtk/gtksignal.c: added new functions to retrive the number of
8533         existing emissions for a certain signal.
8534         (gtk_signal_n_emissions): new function.
8535         (gtk_signal_n_emissions_by_name): new function.
8536
8537 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
8538
8539         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
8540         set the current focus_child of a container, does proper referencing and
8541         adjusts the vadjustment/hadjustment associated with the focus widget.
8542
8543         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
8544         containers via gtk_container_set_focus_child.
8545
8546         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
8547         where appropriate.
8548
8549         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
8550         child since not every child removal goes through this function (this
8551         showed up after gtk_container_set_focus_child() started to reference the
8552         focus_child of a container).
8553
8554         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
8555         of a container from gtk_container_remove into this place.
8556
8557 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
8558
8559         * gtk/gtksignal.c: added new functions to operate on intermediate
8560         function pointers. implemented incremental blocking.
8561         (gtk_signal_disconnect_by_func): new function.
8562         (gtk_signal_handler_block_by_func): new function.
8563         (gtk_signal_handler_unblock_by_func): new function
8564
8565 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
8566
8567         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8568         Always show the scrollbars when the policy is
8569         GTK_POLICY_ALWAYS...
8570
8571 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
8572
8573         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
8574         "value_changed" if we really passed a new value.
8575         (gtk_adjustment_changed): new function to emit the "changed" signal.
8576         (gtk_adjustment_set_value): new function to emit the "value_changed"
8577         signal.
8578
8579 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
8580
8581         * gtk/gtkcombo.c: Further changes to the way the window
8582         is popped up so that it will be compatible with 
8583         auto-scrolling in the future.
8584
8585 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
8586
8587         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
8588         the combo-list is empty since that will cause the combo to operate
8589         on a non existing GtkList window.
8590         (gtk_combo_get_pos): provide the combo list with a usfull default
8591         height if empty.
8592         (gtk_combo_popup_button_press): grab the focus.
8593         (gtk_combo_activate): grab the focus.
8594
8595 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
8596
8597         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
8598         function to reset the RC styles for a heirarchy
8599
8600         Clear the window background if necessary in
8601         gtk_window_style_set.
8602
8603         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
8604         rereads all previously read RC files.
8605
8606         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
8607         (Should it just be called gdk_get_toplevels?)
8608
8609         * gtk/testgtk.c: New test to reload RC files.
8610
8611 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
8612
8613         * gtk/gtkclist.h:
8614         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
8615         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
8616         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
8617         the GTK_ prefix (this solution involved less changes in the
8618         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
8619         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
8620         from lars & stefan to support the derivation of GtkCtree.
8621
8622         * gtkctree.h:
8623         * gtkctree.c:
8624         initial import of a tree widget derived from gtkclist, courtesy
8625         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
8626         it just damn rocks!
8627
8628 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
8629
8630         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
8631         for us.
8632         (gtk_list_insert_items):
8633         (gtk_list_remove_items_internal): 
8634         (gtk_list_clear_items): 
8635         remove a possible pointer grab, we might get thrown into a loop
8636         otherwise.
8637         (gtk_list_button_press): grab the pointer *before* selecting the child,
8638         because selection of items may cause the lists children to change,
8639         resulting in a grab release.
8640         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
8641         children.
8642         (gtk_list_shutdown): remove all children from the list.
8643         (gtk_real_list_unselect_child): 
8644         (gtk_real_list_select_child): *always* put our internal structures into
8645         sane state *before* signal emisions (i.e. list->selection updates prior
8646         to gtk_list_item_[de]select() calls).
8647
8648         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
8649         focused child walks out of the window.
8650         removed CAN_FOCUS for the combo arrow's button since it doesn't react
8651         to keyboard events ("clicked" connection is missing).
8652
8653 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
8654
8655         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
8656         getting colormap for FOREIGN windows to go along with
8657         Raster's fix for visuals.
8658
8659 Merges from gtk-1-0
8660 ===================
8661         
8662 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
8663
8664         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
8665         Check to catch the case when the viewport fits in either
8666         direction or both, instead of flip-flopping infinitely.
8667
8668         Only show/hide the scrollbars once at the end.
8669
8670 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
8671
8672         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
8673         Include the scrollbars in the foreach call.
8674         (gtk-fortier-980405-0.patch; 
8675          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
8676
8677         The notebook widget
8678         really should also include its tabs, but that might cause
8679         problems for programs if they
8680
8681 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
8682
8683         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
8684         resize if the size actually changed. 
8685         (gtk-johannes-980414-0.patch ;  
8686          johannes@nada.kth.se (Johannes Keukelaar) )
8687
8688 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8689
8690         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8691           ltmain.sh ltconfig config.sub config.guess:
8692
8693         Reverted back to libtool-1.2 (plus minor patches) so as not to
8694         force the issue for everyone else.
8695
8696 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
8697
8698         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
8699         Updated to libtool 1.2a.
8700
8701         * gtk/gtkclist.c: Draw the in-between lines with style->base
8702         instead of style->white.
8703         
8704 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8705
8706         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
8707         Cache the colormap and children of a window locally
8708         instead of fetching them from the server when needed.
8709         Huge performance difference for creating/destroying
8710         windows.
8711
8712         * gtk/gtkstyle.c: Find the depth from the cached
8713         visual, instead of asking the server.
8714
8715         * gtk.m4: Distribute the new version which tries to
8716         figure out what went wrong and give helpful error
8717         messages.
8718
8719         * ltmain.sh ltconfig config.sub config.sh: 
8720         Updated to libtool 1.2a
8721
8722         * gtk/gtktext.c: Fixed a bug where the drawn level
8723         was being messed up when the text was scrolled
8724         during a deletion.
8725         
8726 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
8727
8728         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
8729         the filesystem under you (fix from Josh)
8730
8731 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
8732
8733         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
8734         if the viewport already exists before iterating over it, maybe we
8735         haven't been constructed yet.
8736
8737 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
8738
8739         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
8740         the GtkBin widget already has a child.
8741
8742         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
8743         check that child->parent == NULL;
8744
8745 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
8746
8747         * gtk/gtkselection.c (gtk_selection_clear): Only return
8748         FALSE when the clear event is been rejected, not when
8749         widget has already lost the selection. (Which should
8750         only happen when we are setting the selection to another
8751         widget ourself.)
8752         
8753 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
8754
8755         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
8756
8757         Removed the "check visibility after gtk_widget_unparent" bug 
8758         in hopefully the last three places.
8759
8760 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
8761
8762         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
8763         rc-files.
8764
8765 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
8766
8767         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
8768         for CAN_FOCUS widgets.
8769
8770         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
8771         adjustments for the table.
8772         (create_list): feature automatic adjustment of the scrolled window to
8773         always contain the focused child.
8774         (create_main_window): keep the focussed button always inside of the
8775         scrolled windoww.
8776
8777         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
8778         adjustments, to contain the allocation of the currently focused child.
8779         (gtk_container_set_focus_hadjustment): new functin to set the
8780         horizontal focus adjustment.
8781         (gtk_container_set_focus_vadjustment): new functin to set the vertical
8782         focus adjustment.
8783
8784         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
8785         clamp the currents adjustment page into a specific range.
8786
8787         * random GtkType fixups for gtk_*_get_type() functions.
8788
8789 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
8790
8791         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
8792         Account for the fact that gtk_tree_item_remove_subtree
8793         will be called recursively. 
8794
8795         Handle removing a collapsed subtree.
8796
8797         (From Andy Dustman <adustman@comstar.net>)
8798         
8799         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
8800         root tree when removing items from a non-previously
8801         mapped tree.
8802
8803         * gtk/testgtk.c: Added a remove_subtree button.
8804         
8805 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
8806
8807         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
8808         before object removing data. This change fixes a bug where 
8809         removing the last weak references would cause it to be 
8810         triggered.
8811
8812 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8813
8814         * gdk/Makefile.am: Removed mostly useless dependency that
8815         was causing problems for SGI's make, when used with
8816         the 'make dist' form of GTK+. (Dependency caused dependencies
8817         to be redone when BUILT_SOURCES changed)
8818
8819 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
8820
8821         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
8822         like a menu.
8823         
8824         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
8825         to gtkitem.c so dragging can also work in lists.
8826
8827         * gtk/gtklist.[ch]: Track child enter events and use
8828         those to allow dragging the selection. 
8829
8830 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
8831
8832         * gtk/gtktext.c: Try enabling background pixmaps for editable text
8833         widgets.  There is a bit of flashing, but not too bad. If you
8834         don't want the flashing, you can always not set a background
8835         pixmap.
8836
8837 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
8838
8839         * gtk/gtktext.c: Fixed a bug where the drawn level
8840         was being messed up when the text was scrolled
8841         during a deletion.
8842         
8843 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8844
8845         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
8846         bug:  There is no need to set the ExposureMask in the XGrabPointer
8847         (this caused DnD programs to crash).
8848
8849 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
8850
8851         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
8852         field to be of type guint.
8853         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
8854         ref_count>0;
8855         (gtk_accelerator_table_install): keep a per object list of accelerator
8856         tables that refer to this object.
8857         (gtk_accelerator_table_remove): remove the accelerator table from the
8858         per object list.
8859         (gtk_accelerator_table_clean): warn if there are any object references
8860         left in an accelerator table upon destruction.
8861         (gtk_accelerator_tables_delete): new function to delete object
8862         references from the accelerator tables associated with this object.
8863
8864         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
8865         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
8866         of an accelerator can be prevented by gtk_signal_emit_stop().
8867         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
8868         so there are no stale pointers in accelerator tables left.
8869
8870 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8871
8872         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
8873         visible before we unparent it.
8874
8875 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
8876
8877         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
8878         running_timeouts list with the tmp_list link itself, not with a new
8879         GList structure pointing to our link. that would fill up memory and
8880         causes the GList.data fields of the running_timeouts list to point to
8881         GList structures and not GtkTimeoutFunction structures which is a
8882         *really* bad thing.
8883         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
8884         the above entry ;).
8885
8886 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
8887
8888         * gtk/gtkradiomenuitem.h: 
8889         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
8890         ala gtk_radio_button_set_group.
8891         (gtk_radio_menu_item_init): assure that we always have at least a group
8892         that points to self.
8893
8894         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
8895         added g_return_if_fail() statements.
8896         (gtk_radio_button_init): assure that we always have at least a group
8897         that points to self.
8898
8899 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
8900
8901         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
8902
8903 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
8904
8905         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
8906         (Damon Chaplin), which i got wrong when applying Damon's patch the last
8907         time.
8908
8909 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
8910
8911         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
8912         that when we are running with a non-installed colormap,
8913         in 8-bit pseudo-color, we actually are using the system
8914         visual. (Fixes *Bad Match* errors on Digital Unix machines
8915         with multiple 8-bit pseudo-color visuals)
8916
8917 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
8918
8919         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
8920         by whoever thought that randomly changing ints to unsigned int
8921         without reviewing the code was a good idea.  It is, btw not
8922         mentioned in the ChangeLog as usual, but I know it was not Elliot
8923         the culprit this time. 
8924
8925 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
8926
8927         * Released GTK+ 1.0.0