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