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