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