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