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