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