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