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