]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Return TRUE to prevent the scroll event to be propagated upwards.
[~andy/gtk] / ChangeLog.pre-2-10
1 2000-02-19  Anders Carlsson  <andersca@gnu.org>
2
3         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
4         to prevent the scroll event to be propagated upwards.
5
6 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
7
8         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9         OwnerGrabButtonMask from button entries for
10         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11
12         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
13         to the event mask (which will result in button/press release
14         being added to the event mask on Unix) so scrolling works
15         for layouts in scroll windows.
16
17         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
18
19         Patch from Anders Carlsson  <andersca@gnu.org> to add
20         a scroll event.
21
22         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
23         scrolling to the "Test Scrolling" part of testgtk.
24  
25         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
26  
27         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
28         it against GDK_SCROLL.
29  
30         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
31         way of mouse wheel scrolling.
32  
33         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
34  
35         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
36  
37         * gtk/gtkmain.c: Removed previous mouse wheel hack.
38  
39         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
40         gdk_event_mask_table.
41  
42         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
43         GdkEventScroll handler.
44  
45         * gdk/gdkevents.h: Added GdkEventScroll structure.
46  
47 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
48
49         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
50         and Anders Carlsson to change the Paned widgets so that they
51         can be dragged from anywhere along the length. Also change
52         the way that this is drawn to make this apparent.
53
54         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
55         from George Lebl to check that option_menu->menu is present
56         before getting history.
57
58 2000-02-14  Tor Lillqvist  <tml@iki.fi>
59
60         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
61         before the assertion for non-NULL segment list.
62
63         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
64         Seems that pattern brushes *must* be 8x8 pixels! At least on my
65         machine, but it might be display driver dependent. Sigh, so make
66         sure the stipple is that size. Does Windows suck or what?
67
68         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
69         places.
70
71 2000-02-13  Havoc Pennington  <hp@pobox.com>
72
73         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
74         refcount to 1
75         (gdk_cursor_new): init refcount to 1
76
77         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
78
79 2000-02-13  Tor Lillqvist  <tml@iki.fi>
80
81         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
82         so that we don't have to do unnecessary settings to the HDC.
83
84         * gdk/win32/gdkdrawable-win32.c
85         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
86         gdk_gc_predraw.
87
88         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
89         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
90         GDI paths, call WidenPath to get the outline of the stroken path,
91         and then fill the outline (with the brush that was built from the
92         stipple).
93
94         * gdk/win32/gdkgc-win32.c: Factor out common code from
95         _gdk_win32_gc_new and gdk_win32_gc_set_values into
96         gdk_win32_gc_values_to_win32values. Use correct colour for
97         SetBkColor() (Until now the code actually used a random colour in
98         the call to SetBkColor()... but that didn't show up as not many
99         GDI APIs use the background colour. Pattern (opaque stippled)
100         brushes do.)
101
102         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
103         gdk_win32_api_failed): New functions for error logging.
104
105         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
106         WIN32_API_FAILED to call them, passing function or file name and
107         line number.
108
109         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
110
111         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
112         GdkColor for foreground and background in GdkGCWin32Data.
113
114         * gdk/makefile.cygwin: Link in the resource object separately.
115
116         * gdk/win32/rc/gdk.rc
117         * gtk/gtk.rc (New file)
118         * gdk/win32/makefile.cygwin
119         * gtk/makefile.cygwin: Update build number in DLLs automatically,
120         as in GLib.
121
122 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
123
124         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
125         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
126         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
127         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
128         parameters given and cursor->ref_count. coding style fixups.
129
130         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
131         not GtkWidget.
132         
133         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
134         fix up widget macros and add _GET_CLASS() variant.
135         
136         * gtk/*.c: some GtkType fixups.
137
138 2000-02-09  Tor Lillqvist  <tml@iki.fi>
139
140         * gdk/win32/gdkproperty-win32.c
141         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
142         were reversed.
143
144 2000-02-04  Tor Lillqvist  <tml@iki.fi>
145
146         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
147         g_filename_to_utf8 to convert the font names Windows gives us from
148         whatever is the default codepage to UTF-8.
149         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
150         in the other direction.
151
152         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
153         error in debugging output.
154
155 2000-02-02  Tor Lillqvist  <tml@iki.fi>
156
157         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
158         and height parameters to gdk_window_clear_area(). Not minus one.
159
160 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
161
162         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
163         checks if the widget passed to gtk_drag_get_data() was not the
164         dest widget.
165
166 2000-02-01  Tor Lillqvist  <tml@iki.fi>
167
168         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
169         g_filename_from_utf8 functions (which were added a moment ago to
170         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
171         size buffers.
172
173         gtk_file_selection_get_filename returns the filename in the C
174         runtime encoding. It calls g_filename_from_utf8, but copies the
175         returned string to a static buffer, which is returned. I think
176         this is better than returning the result from g_filename_from_utf8
177         directly, which would mean all apps that use it would have to free
178         the return value. Or should this function care about this issue at
179         all? Maybe a new function with clearly defined semantics.
180
181         * gtk/gtkfilesel.h: Add comment about
182         gtk_file_selection_get_filename returning the filename in the C
183         runtime's encoding.
184
185         * README.win32
186         * gdk/gdk.def
187         * gdk/makefile.{cygwin,msc}
188         * gtk/gtk.def: Updates.
189
190         * gdk/gdkcursor-win32.c: Initialise refcount.
191
192 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
193
194         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
195
196 2000-01-30  Havoc Pennington  <hp@pobox.com>
197
198         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
199         destroy
200
201         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
202
203         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
204         implemented in platform-specific code
205
206         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
207
208         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
209         underscore in front
210
211         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
212         put an underscore in front
213
214         * gdk/gdkcursor.c: new file, implements
215         gdk_cursor_ref/gdk_cursor_unref
216
217         * gdk/gdkcursor.h: Refcount GdkCursor
218
219         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
220
221 2000-01-29  Tor Lillqvist  <tml@iki.fi>
222
223         * gdk/gdkwindow.h
224         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
225
226 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
227
228         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
229         structures to properly inherit from GtkWidget not GtkBin.
230
231 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
232
233         * gtk+.spec.in: Added lib/gtk+/include/* to %files
234         (bug #5178 - Peter Wainright)
235         
236         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
237         so that it will be installed.
238         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
239
240 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
241
242         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
243         for the GtkStyleClass vtable const.
244
245         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
246         take a const string argument like GtkTranslateFunc. This will
247         require changes in use code.
248
249 2000-01-19  Tor Lillqvist  <tml@iki.fi>
250
251         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
252         semantics (to mimic the X11 backend, which just calls XClearArea)
253         is to check for zero width (and height), and in that case use the
254         window's width minus x (height minus y). This fixes for instance
255         some redraw problems with gtkclist, which were easily noticeable
256         in the gtk file selection widget.
257
258         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
259         windows.
260
261 2000-01-13  Tor Lillqvist  <tml@iki.fi>
262
263         * configure.in
264         * gdk/Makefile.am
265         * gdk/x11/Makefile.am
266         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
267         (bug #5177).
268         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
269         out later.
270
271 2000-01-09  Tor Lillqvist  <tml@iki.fi>
272
273         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
274         WM_MOVE for iconified or invisible windows. This fixes various
275         problems when minimising windows. Thanks to Bernd Herd.
276
277 2000-01-05  Tor Lillqvist  <tml@iki.fi>
278
279         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
280         backend's draw_lines method, not draw_points.
281
282 2000-01-02  Tor Lillqvist  <tml@iki.fi>
283
284         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
285         before Owen's reorganisation: Don't have queued_events and
286         queued_tail statics in this file, but use gdk_queued_events and
287         gdk_queued_tail. This makes exposure event compression work again.
288
289         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
290         seem to be needed?
291
292 1999-12-30  Tor Lillqvist  <tml@iki.fi>
293
294         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
295         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
296         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
297         doesn't do anything.
298
299         * gdk/gdk.def: Add gdk_xid_table_insert.
300
301         * gdk/win32/gdkprivate-win32.h
302         * gdk/win32/gdkevents-win32.c
303         * gdk/win32/gdkinput-win32.c
304         
305         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
306         extension_events field in the GdkWindowWin32Data struct. Use only
307         the extension_events field in GdkWindowPrivate. Previously one was
308         set, and the other one tested, which broke tablet
309         functionality. Thanks to Keishi Suenaga for pointing this out.
310
311 1999-12-18  Tor Lillqvist  <tml@iki.fi>
312
313         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
314         When handling a single character (text length == 1), don't handle
315         it as if it was UTF-8.
316
317 1999-12-11  Tor Lillqvist  <tml@iki.fi>
318
319         * Makefile.am: Distribute README.win32.
320         
321         * gdk/Makefile.am
322         * gdk/win32/Makefile.am: Distribute Win32 files.
323
324         * gdk/makefile.msc: New file.
325
326         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
327         after label).
328
329         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
330         gdk_error_code as GDKVAR, as they are referred outside GDK.
331
332         * gdk/win32/makefile.msc: Update.
333
334         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
335         tweaks. Check only if at least one of those Unicode subrange bits
336         we care for is set. If no code page bits are set, guess (wildly)
337         based on the charset.
338
339         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
340
341         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
342         non-NULL.
343
344         * gtk/gtkdnd.c
345         * gtk/gtklayout.c
346         * gtk/gtkplug.c
347         * gtk/gtkselection.c
348         * gtk/gtksocket.c
349         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
350         appropriate. There must be a cleaner way to handle this?
351
352         * gtk/gtkrc.c: Must include windows.h on Win32.
353
354         * gtk/testgtk.c: No need to include gdkx.h.
355
356         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
357
358 1999-12-07  Tor Lillqvist  <tml@iki.fi>
359
360         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
361         the rbearing is set to the same as the width, but this should be
362         fixed.
363
364 1999-12-06  Tor Lillqvist  <tml@iki.fi>
365
366         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
367         function. If Windows doesn't tell us what Unicode subranges a font
368         covers, guesstimate based on the codepages it covers. This will
369         hopefully help those Windows versions or fonts that don't give us
370         any useful Unicode subrange information with GetTextCharsetInfo.
371         Call this function in gdk_font_load_internal.
372
373         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
374         minor changes.
375
376 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
377
378         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
379         New function, long needed.
380
381 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
382
383         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
384         only_if_exists argument of gdk_atom_intern to
385         bool.
386
387 1999-11-25  Tor Lillqvist  <tml@iki.fi>
388
389         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
390         Fix two copy&paste errors.
391
392         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
393         win32 has changed.
394
395         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
396         GdkWin32SingleFont struct.
397
398         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
399         subranges of loaded fonts. Clear font signature first, in case
400         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
401         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
402
403         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
404         Unoffset clip region.
405
406 1999-11-23  Tor Lillqvist  <tml@iki.fi>
407
408         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
409         event->any.window before calling filter functions.
410
411 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
412
413         * gtk/gtkgamma.h: Adapt cast macros to standard.
414
415 [ Merges from 1.2 ]
416
417 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
418
419         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
420         If translation does not include a '/', use entire
421         translation instead of crashing.
422
423 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
424
425         * docs/gtk_tut.sgml:
426         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
427
428 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
429
430         * gtk/gtkselection.c (gtk_target_list_remove): Use
431         g_list_remove_link, not g_list_remove.
432
433         [ From Geert Bevin <gbevin@thunderstorms.org> ]
434         
435 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
436
437         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
438         statement upon unselection (how the heck did that slip in?).
439
440 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
441
442         * gtk/gtktext.c (gtk_text_freeze): 
443         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
444         in frozen state (and aparently crashes). patch provided by Anders
445         Melchiorsen <and@kampsax.dtu.dk>.
446
447 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
448
449         * fix insensitive default/focus widget activation,
450         reported by Matt Goodall <mgg@isotek.co.uk>.
451
452         * gtk/gtkwindow.c (gtk_window_key_press_event): 
453         (gtk_window_activate_default):
454         (gtk_window_activate_focus):
455         return handled=FALSE for actiavtion of insensitive default
456         widgets. return handled=TRUE for activation of insensitive
457         focus widgets. don't activate in either case.
458
459 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
460
461         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
462         and $glib_cflags to match library order and in the
463         theory that an old version of GLib is more likely to
464         be in the include directory for X then vice-versa.
465         (Bug #2776)
466
467 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
468
469         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
470         to determine the locale for fontsets, not LC_MESSAGES;
471         the user may want English messages with a handling
472         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
473         will still be broken) (Bug #2891)
474
475 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
476
477         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
478
479 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
480
481         * gtk/gtkrc.ko: Changed the Korean default fontset.
482
483 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
484
485         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
486         where when scrolling to the left or top double exposes
487         were done, causing major slowdowns.
488
489 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
490
491         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
492         names to lowercase and alphanumeric, before looking
493         them up.
494
495         * gtk/Makefile.am: Install codeset variant gtkrc files
496         with normalized names.
497
498 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
499
500         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
501         popup menus when the menu is already visible, but its parent
502         is still hidden, (happens after tornoff window got hidden).
503
504 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
505
506         * gtk/Makefile.am (install-data-local): Fix
507         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
508         deleted, causing error messages on install.
509
510 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
511
512         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
513         the handle as well, since we now sometimes ignore
514         exposes on the handle while resizing.
515
516 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
517
518         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
519         extra g_free introduced in one of the last one or two 
520         commits.
521
522 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
523
524         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
525         consistent, put each style that a gtkrc.* file creates
526         in a unique namespace, remove old files before installing.
527
528 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
529
530         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
531         gtk_rc_init is called multiple times. (Yes, people who
532         do that have bugs in their code.)
533
534 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
535
536         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
537         Remove it since it's generated by the Makefile anyway
538
539 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
540
541         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
542         device->info.axes for core pointer.
543
544 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
545
546         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
547         idle_id, to deal with obsolete, broken C libraries.
548
549 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
550
551         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
552         allocation->x/y twice!
553
554         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
555         consistent with gtk_vscale_pos_trough().
556
557 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
558
559         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
560         be queueing a resize on a toplevel container between
561         the time we show it and when we map it. So, we need
562         to test GTK_WIDGET_VISIBLE() for toplevels, and only
563         use GTK_WIDGET_DRAWABLE() for child windows.
564
565 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
566
567         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
568         (fixes bug #2144)
569
570 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
571
572         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
573         container DRAWABLE (instead of VISIBLE), so we don't queue
574         resizes on non-toplevel containers.
575
576 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
577
578         * gtk/gtkselection.[ch]: Make the data argument
579         const guchar *.
580
581 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
582
583         * gtk/gtkwindow.c: Try to behave sensibly if 
584         the focus widget is the window itself. (Should
585         we allow this at all?)
586
587 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
588
589         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
590         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
591         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
592         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
593         in prototypes and implementations consistent (Tomas Ogren).
594
595         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
596         before the widget is unparented (reported by damon).
597
598         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
599         since we provide unsigned data anyways.
600
601 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
602
603         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
604         the call to gtk_tooltips_layout_text() until later.
605
606         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
607         Call gtk_widget_ensure_style() before using the style.
608
609 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
610
611         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
612         for old widgets that don't propagate draws to all
613         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
614
615 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
616
617         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
618         for a redraw but just the widget that requested the resize.
619
620 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
621
622         * gtk/gtkcontainer.c: added new widget level method
623         gtk_container_set_reallocate_redraws() and a GtkContainer flag
624         reallocate_redraws : 1 to reflect the setting, exported this through
625         the argument system as a boolean ::reallocate_redraws.
626
627         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
628         on the widget because the allocation changes, do so as well for
629         widget->parent if the parent has reallocate_redraws set to TRUE.
630         with that containers requesting reallocation redraws get automatically
631         redrawn if their children changed allocation (this unfortunately
632         affects also other children that didn't change allocation, but we
633         cannot work around that before 1.3).
634
635 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
636
637         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
638         _and_ height are >0 (not _or_).
639
640         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
641         instead of gtk_container_queue_resize(), which is a core gtk internal
642         function (must have been on crack when i queued that).
643
644         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
645         we can check more reliably if we want to discard expose events.
646         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
647         flag.
648         
649         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
650         we simply trust these events. for deciding whether to discard exposes,
651         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
652         
653 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
654
655         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
656         queues of areas that are completely off screen.
657
658         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
659         logic for handleboxes.
660
661         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
662         check on width/height.
663
664 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
665
666         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
667         we are fine with using $@ the way we do (if we actually encounter
668         brokeness with $@ in VPATH builds because of additional path prefixes,
669         we need to use $(@F) actually).
670
671 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
672
673         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
674         short lived bugs, that would allow language bindings to do surgeries
675         to our guts.
676
677 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
678
679         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
680         where comparison was being done against an uninitialized
681         value causing intermittant results depending on
682         compiler flags. Also make it clearer that we aren't
683         ever initializing the child as 0x0 (though this will
684         be caught in gtk_widget_size_allocate())
685
686 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
687
688         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
689         gtk_window_unset_transient_for() call after we do checks
690         involving the old transient parent.
691         [ From Lance Capser <lmc@cyberhighway.net> ]
692
693 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
694
695         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
696         an empty file.
697
698 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
699
700         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
701         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
702
703 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
704
705         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
706         `$@' is valid only in the build dir, not after we've done 
707         `cd $srcdir'.  Also use `test -f' instead of less portable
708         `test -e'.
709
710 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
711
712         * gtk/gtktext.c (correct_cache_insert): Rewrite
713          for simplicity, and hopefully correctness.
714          (Fixes bug #1322, which was a segfault when
715           on some insertions with the properties around
716           the insertion set up just wrong.)
717
718         * gtk/gtktext.c (gtk_text_adjustment): When we receive
719          a "changed" signal, clamp the new value to the adjustment
720          bounds to avoid segfaulting if someone tries to change
721          the adjustment to a bogus value. (Bug #1795)
722
723 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
724
725         * gtk/gtkmain.c: Ignore unexpected destroy notifies
726         for children, for toplevel windows handle them
727         like delete_event.
728
729         * gtk/gtkplug.c: Add an unrealize handler so that
730         we unref plug->socket_window when we are done
731         with it.
732
733 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
734
735         * gtk/gtktext.c (clear_area): Fix stupid signedness
736          problem that was causing background to sometimes
737          be misaligned.
738
739 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
740
741         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
742         
743         * gtk/gtkmenu.c (gtk_menu_position): Make
744          sure we never position menus with negative x, y,
745          since gtk_widget_set_uposition() can't handle that.
746
747         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
748          Modify the positioning code a bit so that we always
749          put the top-left corner onscreen. (This is for
750          UI reasons, gtk_menu_position() now takes care of
751          gtk_widet_set_uposition() brokeness.)
752
753 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
754
755         * gtk/Makefile.am: fixed up things for -jx, x > 1.
756
757 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
758
759         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
760           RC style that is passed in. The lack of the ref
761           before was a bug. If people worked around this
762           bug, this will introduce a slight memory leak
763           in their code. The code should typically look like:
764
765             rc_style = gtk_rc_style_new ();
766             [...]
767             gtk_widget_modify_style (widget, rc_style);
768             gtk_rc_style_unref (rc_style);
769
770         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
771           the style if it was already set.
772
773         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
774           style if it was set before.
775
776 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
777
778         * gtk/testgtk.c (main): Add a check to see if we
779           are being run from the correct directory and
780           to quit nicely if we are not.
781
782         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
783           static.
784
785 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
786
787         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
788
789         * gtk/gtkwindow.c:
790         queue resizes unconditionally (gtk_widget_queue_resize will figure
791         what to do if the window is not realized).
792         (gtk_window_move_resize): only recenter the window
793         for GTK_WIN_POS_CENTER_ALWAYS.
794         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
795         the same way as GTK_WIN_POS_CENTER.
796
797 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
798
799         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
800         with (!(info->last_flags & GDK_HINT_POS)) instead of
801         (!info->last_flags & GDK_HINT_POS).
802
803         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
804         new_height unconditionally, because we use these values even if
805         !default_size_changed && !hints_changed.
806         comented the (default_size_changed || hints_changed) case with
807         respect to resize rejects from the window manager.
808
809         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
810         in the zvt condition hack, since this includes the window hints, set
811         the hints after the handling_resize case.
812
813         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
814         window is initially shown with to the geometry.
815
816 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
817
818         * gtk/gtkwindow.c (gtk_window_move_resize):
819         s/size_changed/default_size_changed/g so i know what's
820         really going on (frying brain on smaller flame now).
821
822 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
823
824         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
825         we have size_changed upon handling_resize. this is a gross
826         workaround for the broken zvt widget and should be removed in
827         1.3 again (search for FIXME).
828         Owen provided an accurate comment for this:
829
830         /* We could be here for two reasons
831          *  1) We coincidentally got a resize while handling
832          *     another resize.
833          *  2) Our computation of size_changed was completely
834          *     screwed up, probably because one of our children
835          *     is broken. It's probably a zvt widget.
836          *
837          * For 1), we could just go ahead and ask for the
838          * new size right now, but doing that for 2)
839          * might well be fighting the user (and can even
840          * trigger a loop). Since we really don't want to
841          * do that, we requeue a resize in hopes that
842          * by the time it gets handled, the child has seen
843          * the light and is willing to go along with the
844          * new size. (this happens for the zvt widget, since
845          * the size_allocate() above will have stored the
846          * requisition corresponding to the new size in the
847          * zvt widget)
848          *
849          * This doesn't buy us anything for 1), but it shouldn't
850          * hurt us too badly, since it is what would have
851          * happened if we had gotten the configure event before
852          * the new size had been set.
853          */
854
855 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
856
857         * gtk/gtkrc.c: deal properly with the fact that RC
858           style lists may include rc styles more than once.
859
860         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
861           unused static function.
862
863         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
864           stack of directories of RC files currently being
865           parsed and implicitely add them to pixmap path.
866           
867           This fixes a bug where the directory would get
868           appended then overwritten by pixmap_path declarations.
869
870           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
871
872         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
873           theme's exit function. (Patch from Peter Wainwright,
874           bug #1454)
875
876         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
877           Add a destroy() handler to take care of removing
878           group for menu item. (Fixes bug #1197)
879
880         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
881           in warning message.
882
883 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
884
885         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
886         roundtrip to figure window's width and height, since we know that
887         anyways from widget->allocation.
888
889 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
890
891         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
892           the hints after we request the new size.
893
894 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
895
896         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
897           GTK_WIDGET_REALIZED() assertion - we can compute the
898           hints before we are realized.
899
900         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
901           hint changing so that we have a value of hints_changed
902           when we decide whether to constrain the window size.
903
904         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
905
906         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
907         change back to G_MAXINT.
908
909 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
910
911         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
912         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
913         contain uncluttered values.
914         (gtk_window_compute_hints): simply assert that window is realized
915         and that geometry_info is valid, since we rely on this anyways.
916         (gtk_window_constrain_size): major cleanups to the code.
917         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
918         for the base size, instead of the minimums. use 32767 as max width
919         and height (like in gtkwindow.c) instead of G_MAXINT.
920
921 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
922
923         * cleaned up the GtkContainer.need_resize flag handling mess, we
924         only need to force resize requests when we were prematurely
925         realized, or our widget tree was modified when we were temporarily
926         hidden. handling these cases directly upon showing the window (i.e.
927         while the GdkWindow is still unmapped) avoids the need to wait for
928         a configure event response and therefore makes the GUI more snappier
929         and avoids blank windows during the roundtrip.
930
931         * gtk/gtkwidget.c:
932         (gtk_widget_hide): 
933         (gtk_widget_show): don't queue resizes on toplevels, they know how
934         to deal with matters.
935
936         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
937         flag directly for not visible resize containers and spare us unecessary
938         signal emissions.
939
940         * gtk/gtkwindow.c:
941         (gtk_window_realize): if we need to enforce premature size allocation,
942         queue a container resize so we are correctly resized later on.
943         (gtk_window_init):
944         (gtk_window_size_request):
945         don't freak around with the ->need_resize flag,
946         gtk_container_queue_resize() will care about that.
947         (gtk_window_show):
948         handle initial resizing issues here, we can handle matters better in
949         this place, especially since we know that our GdkWindow is still
950         unmapped.
951         (gtk_window_move_resize):
952         don't care about ->need_resize at all.
953         handle size changes properly that occoured while we waited for a
954         configure event.
955
956 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
957
958         * gtk/gtkwidget.c (gtk_widget_set_uposition):
959         * gtk/gtkwindow.[hc] (gtk_window_reposition):
960         Move the hint setting code from gtk_widget_set_uposition
961         to here; set the hints so that we respect any previously
962         set geometry hints.
963
964         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
965         change the window hints here or move the window here,
966         let that happen in gtk_window_move_resize().
967
968 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
969
970         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
971         to already queued resizes (and therefore redraws) on a widget, check
972         its anchestry as well.
973
974         * gtk/gtkcontainer.c:
975         (gtk_container_queue_resize): clear resize widgets for resize
976         containers before aborting prematurely. this is especially important
977         for toplevels which may need imemdiate processing or their resize
978         handler to be queued.
979         (gtk_container_dequeue_resize_handler): added new internal function for
980         gtkwindow.c.
981
982         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
983         configure event, take possible changes in window position into account
984         as well.
985         if we request a new window size, queue up a resize handler that will
986         last until the configure event response arrives.
987         combined the ->need_resize case (initial show) with the general size
988         (hints) changed case and added even more comments.
989         if !auto_shrink, only revert to the old allocation if the new size
990         is smaller than the current allocation.
991
992 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
993
994         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
995                            gtk_window_set_geometry_hints
996                            gtk_window_set_default_size):
997         When hints are set, queue a resize so that the hints will
998         be eventually reset on the toplevel.
999
1000         * gtk/gtkwindow.c (gtk_window_show): Use
1001         gtk_window_compute_default_size(). Clear the need_resize flag
1002         on the initail map so that we don't unnecessarily trigger the
1003         resize code.
1004
1005         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
1006         into separate functions. Compare the hints we are setting
1007         with what we set last time so that we can accurately
1008         tell when we need to reset the hints.
1009
1010         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
1011         function to figure out the size from requisition
1012         and default_size.
1013
1014         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
1015         from fvwm to constrain a size to the geometry hints.
1016
1017         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
1018         to compare two sets of geometry hints.
1019
1020         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
1021         from gtk_window_set_hints(), just compute the hints,
1022         don't set them.
1023
1024         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
1025         code from gtk_window_move_resize() to separate function,
1026         rationalize a bit.
1027
1028 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
1029
1030         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
1031         structure into a new private structure.
1032
1033         * gtkrc.c: Split GtkRcStyle into public/private.
1034         In the private part, add a list of pointers to the
1035         RcStyle lists this RcStyle participates in.
1036
1037         * gtkrc.c: When a RcStyle is free, remove all
1038         lists referencing it from the 
1039         realized_style_ht hash, and free those lists.
1040         
1041         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
1042         gtk_rc_init(), since that adds the default styles
1043         to the list of parsed RC files again.
1044
1045         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
1046         
1047 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
1048
1049         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
1050         checks that ensure that a widget's allocation is at least 1 in width
1051         and height. (GNOME note: this doesn't affect old panel code anymore,
1052         because GtkSocket will request width and height of at least 1 since
1053         Fri Jul 23).
1054
1055         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
1056         allocated yet (happens if the user realizes the window prematurely),
1057         size request and allocate it.
1058         (gtk_window_size_allocate): guard against guint underflows.
1059
1060 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
1061
1062         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
1063         in gtk_built_sources, so gtk.defs gets built prior to all other
1064         sources.
1065
1066 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
1067
1068         * gtk/Makefile.am:
1069         invoke indent on gtkmarshal.*. 
1070         rewrote source generation rules, use COPYING as oldest source tag for
1071         a piggyback rule to generate all sources from (don't touch it ;).
1072         major cleanups, strip spaces on build rules for GNU Make.
1073
1074         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
1075         source and target files from commandline arguments. don't invoke indent.
1076
1077 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
1078
1079         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
1080         notebook after switch to avoid drawing problems.
1081         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
1082         
1083         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
1084         show them instead. 
1085         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1086
1087 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
1088
1089         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
1090         notebook after switch to avoid drawing problems.
1091         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
1092         
1093         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
1094         show them instead. 
1095         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1096
1097 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
1098
1099         * gtk/gtkwindow.c:
1100         we use window->need_resize from configure_event now, to indicate that
1101         the gtkwindow should keep its allocation (e.g. because the user resized
1102         the window through window manager handles). resize_count is now reliably
1103         used to figure whether we got the allocation we requested from the
1104         window manager.
1105         configure events get queued as resizes now, the real stuff (size
1106         computation and allocation) now only goes on in gtk_window_move_resize().
1107         GtkWindow's requisition now contains its *real* requisition (like all
1108         other widgets), *not* taking usize into account.
1109         geometry_info->last_{width|height} is now updated from set_hints() only
1110         so it always contains the last hints we set for the window manager.
1111         made some event handlers return TRUE instead of FALSE.
1112         the overall code should be much more straight forward now, and the
1113         significant code portions are accompanied by comments now.
1114         (gtk_window_set_hints):
1115         removed requisition argument and made it
1116         fetch the requisition through gtk_widget_get_child_requisition.
1117         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
1118         does that now.
1119         (gtk_window_show):
1120         ensure that the widget is realized before calling 
1121         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
1122         ensure that we got properly size requested and allocated before
1123         realization.
1124         (gtk_window_configure_event):
1125         ignore plain window moves, or reallocate the widget tree through the
1126         resize queue otherwise.
1127         (gtk_window_move_resize):
1128         mostly rewrote this function to figure window manager hints more
1129         reliably, coalesce window moves and resizes to reduce configure events
1130         and do actuall size allocations.
1131
1132 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
1133
1134         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
1135         that have a resize pending, because a redraw is already queued for them.
1136
1137         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
1138         hack to clear resize_widgets.
1139
1140         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
1141         for resize containers prior to size allocation. (this is also a bit
1142         ugly, but avoids side effects for stopped emissions and is thus more
1143         reliable).
1144         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
1145
1146         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
1147         function from gtk_tooltips_expose, as we connect to ::expose_event
1148         *and* ::draw now.
1149
1150 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
1151
1152         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
1153         checks.
1154         (gtk_target_list_unref): Likewise.
1155
1156         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
1157
1158 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
1159
1160         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
1161         guard against division by zero. (Fixes bug #1339)
1162
1163 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
1164
1165         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
1166         Prevent the trivial leak of information of allowing
1167         word motion when the entry is not visible.
1168
1169 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
1170
1171         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
1172         modality to error dialog as well as confirmation dialogs.
1173         (Bug #1803, reported by Rosanna Wing Sze Yuen)
1174
1175 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
1176
1177         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
1178         tree->view_lines.
1179         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
1180
1181         * gtk/Makefile.am (install-data-local): Solaris apparently
1182         has various troubles with ln -f; use rm first instead.
1183         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
1184
1185 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
1186
1187         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
1188         use `cp' followed by `rm' (the `rm' was already there).
1189
1190 July 30, 1999 Elliot Lee <sopwith@redhat.com>
1191         
1192         * configure.in: Fix autoconf warnings about cross compilation by
1193         trying to provide sane defaults for AC_TRY_RUN.
1194         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
1195         put them into $(srcdir) when generated. Also add a dependency of
1196         gtksignal.h on gtkmarshal.h for -j builds. 
1197         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
1198
1199 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
1200
1201         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
1202         GDK_THREADS_{LEAVE,ENTER} pair.
1203         (From Paul Fisher <pnfisher@redhat.com>)
1204
1205 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
1206
1207         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
1208         width and height are always >0 (owen).
1209
1210 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
1211
1212         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
1213         change that assured that a widget's allocated with and height are
1214         always >1, since this breaks *buggy* panel code. unfortunately this
1215         back-breaks the gimp's color selector.
1216
1217         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
1218         allocation is always >0 in width and height, before sending the
1219         configure event; this is a *gross* hack to get the gimp back to work.
1220         
1221         * marked both cases with TODO-1.3
1222
1223 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
1224
1225         * gtk/gtktext.c: Don't display wrap indicators when
1226         text is not editable and word wrap is on.
1227
1228 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
1229
1230         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
1231         option menus here as they are not derived from menu shell, assure that
1232         the option menu has a menu we can add items to.
1233
1234 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
1235
1236         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
1237         width/height to (gint) before calculations and check against < 0 to
1238         avoid guint wraparounds.
1239
1240 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
1241
1242         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
1243         width and height is never zero. sanity check both dimensions against
1244         32767 and issue a warning if the allocation is greater than that.
1245
1246 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
1247
1248         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
1249         to g_main_pending() as well.
1250
1251 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
1252
1253         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
1254         call to g_main_iteration() - since that will regrab
1255         GTK+ lock to process events.
1256
1257 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
1258
1259         * gtk/gtkwindow.c
1260         - Regularize with the rest of GTK+ by making widget->requisition
1261           not reflect the set_usize()
1262         - Always recompute geometry hints, then check if they
1263           changed before sending them to the X server. The
1264           previous checks for changes would fail in a number
1265           of circumstances. 
1266
1267 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
1268
1269         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
1270
1271 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
1272
1273         * gtk/gtkdnd.c:
1274         - Code cleanups
1275         - Instantaneously update on modifier key presses
1276         - Allow cancellation of the drag with Escape.
1277
1278 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
1279
1280         * gtk/testgtk.c (create_handle_box): Set the policy
1281         to auto_shrink - otherwise the appearance is rather
1282         strange when flipping between horizontal and vertical.
1283
1284 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
1285
1286         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
1287         (gtk_window_set_default_size): don't change a value if it's < 0.
1288         queue a resize.
1289
1290 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
1291
1292         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
1293
1294 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
1295
1296         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
1297         add an extra "/" when concating "/" + filename.
1298         (From Matt Grossman <mattg@oz.net>)
1299
1300 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
1301
1302         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
1303         for fg_gc if we set it for drawing pixmap.
1304
1305 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
1306
1307         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
1308         
1309         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
1310         already set, call old engine's destroy function and
1311         unref the old engine.
1312
1313 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
1314
1315         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
1316
1317 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
1318
1319         * gtk/gtkaccelgroup.h: mark certain functions as internal.
1320
1321 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
1322
1323         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
1324         expand behaviour changed.
1325
1326         * gtk/gtklabel.c (gtk_label_set_pattern):
1327         (gtk_label_set_justify):
1328         (gtk_label_set_line_wrap):
1329         don't bother invoking queue_clear, the reallocation does
1330         that for us, always free_words so the upcoming resize will
1331         relayout the label's contents.
1332
1333 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
1334
1335         * applied argument implementation patches from Elena Devdariani
1336         <elena@cogent.ca>.
1337
1338         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
1339         ::space_style, ::relief
1340         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
1341         * gtk/gtkpreview.c: ::expand
1342         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
1343         * gtk/gtknotebook.c: ::homogeneous
1344         * gtk/gtklabel.c: ::wrap
1345         * gtk/gtklist.c: ::selection_mode
1346         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
1347         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
1348         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
1349         * gtk/gtkclist.c: ::sort_type
1350         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
1351         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
1352
1353 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
1354
1355         * gtk/gtkstyle.c: Removed ill-thought-out part of last
1356         comment.
1357
1358 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
1359
1360         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
1361         counting right when we have to attach a new style
1362         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
1363
1364         * gtk/gtkstyle.c: Documented the refcounting
1365         peculularities of gtk_style_attach.
1366
1367 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
1368
1369         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
1370         window types.
1371
1372         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
1373         of GTK_TOPLEVEL for creating the window.
1374
1375 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
1376
1377         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
1378         the last argument (reported by Per Winkvist).
1379         
1380 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
1381
1382         Fixes for invisible XOR lines (Frank Loemker
1383         <floemker@TechFak.Uni-Bielefeld.DE>)
1384         
1385         * gtk/gtkclist.c (gtk_clist_realize): Always use
1386         a non-zero pixel for GDK_XOR.
1387
1388         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
1389         Use GDK_INVERT instead of GDK_XOR.
1390
1391 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
1392
1393         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
1394         signals if h/voffsets differ from adjustment values.
1395         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
1396
1397 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
1398
1399         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
1400         ::selection-done emissions up to the topmost menu shell.
1401
1402 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
1403
1404         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
1405         the user data on the window before destroying it.
1406
1407         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
1408         unrealize handler to take care of destroying 
1409         notebook->panel properly. 
1410         (Bug #1198 - Morten Welinder <terra@diku.dk>)
1411
1412         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
1413         of g_new and g_realloc to stop memory leak. (Actually,
1414         we could just use g_realloc(), but I'm not 100% sure
1415         that is portable).
1416         (Bug #1196 - Morten Welinder <terra@diku.dk>)
1417
1418 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
1419
1420         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
1421
1422         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
1423         for fontsets.
1424
1425         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
1426         with bin/button confusion.
1427
1428 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
1429
1430         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
1431         and show how preselection of radio items is done.
1432
1433 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
1434
1435         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
1436         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
1437         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
1438         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
1439         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
1440         * gtk/gtktable.c (gtk_table_attach): 
1441         * gtk/gtklist.c (gtk_list_insert_items): 
1442         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
1443         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
1444         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
1445         * gtk/gtkbin.c (gtk_bin_add): 
1446         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
1447         * gtk/gtkfixed.c (gtk_fixed_put): 
1448         * gtk/gtklayout.c (gtk_layout_put):
1449         general fixups to container_add logic. always realize child if
1450         child->parent is realized, only map the child and queue a resize
1451         if child and child->parent are both visible.
1452
1453 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
1454
1455         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
1456         instead of gtk_container_foreach to walk and unrealize children, so
1457         composite children get also unrealized.
1458         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
1459         (gtk_widget_map): assert that the widget is visible (basic constrain).
1460         (gtk_widget_real_map): assert that the widget is realized (basic
1461         constrain).
1462
1463 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
1464
1465         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
1466
1467 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
1468
1469         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
1470         file for iso-8859-2 locales.
1471
1472         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
1473
1474 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
1475
1476         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
1477          (Pointed out by andy@rz.uni-karlsruhe.de and others).
1478          Remove some suspicious and useless lines. 
1479
1480 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
1481
1482         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
1483         width,height = 0, 0 to mean - here to edge of window,
1484         instead of -1, -1, since the former is all we support.
1485
1486 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
1487
1488         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
1489         when removing from quit_functions list.
1490
1491 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
1492
1493         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
1494
1495 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
1496
1497         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
1498          When redrawing characters on non-visible entry, use appropriate
1499          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
1500
1501 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
1502
1503         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
1504         from drag coordinates.
1505         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
1506         use drag_dest_cell.
1507
1508         * gtk/gtktree (drag_dest_cell)
1509         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
1510         (Bug #1129)
1511
1512 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
1513
1514         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
1515         translate_* fields.
1516         (gtk_item_factory_finalize): invoke translate_notify independant from
1517         translate_data.
1518         (gtk_item_factory_set_translate_func): likewise.
1519         (gtk_item_factory_destroy): only remove ifactory pointer from those
1520         widgets that belong to us (stupid me).
1521
1522 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
1523
1524         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
1525         rc_style list when lookup succeeeds.
1526
1527 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
1528
1529         * gtk/gtkctree.c (resync_selection): 
1530         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
1531         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
1532         bug.
1533
1534 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
1535
1536         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
1537         Add some missing GDK_THREADS_ENTER()/LEAVE around
1538         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
1539
1540 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
1541
1542         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
1543         rather than emit_by_name.
1544
1545         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
1546         on the widget across multiple signal emissions.
1547         (gtk_editable_delete_text): same here.
1548         (gtk_editable_class_init): set widget_class->activate_signal after
1549         editable_signals[ACTIVATE] has been created.
1550
1551 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
1552
1553         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
1554         position here prematurely -- we might not have the
1555         right ->min_position and ->max_position yet.
1556
1557 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
1558
1559         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
1560         Add error traps so if the other end of the connection
1561         dies, we survive.
1562
1563         * gtk/gtkselection.c (gtk_selection_notify): Clean
1564         up properly when selection property retrieval fails.
1565         
1566         * gtk/gtkselection.c (gtk_selection_request): Correctly
1567         reject SelectionRequest notifies where the handler
1568         returns no data.
1569
1570 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
1571
1572         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
1573         when we've previously highlighted.
1574
1575         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
1576         emit two "drag_leave" signals for Motif drops.
1577
1578         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
1579         back the correct status messages when dropping from
1580         Motif onto a proxy window that is rejecting the
1581         drop.
1582
1583 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
1584
1585         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
1586         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
1587         to compare two argument values. added gtk_arg_to_valueloc() to set a
1588         variable from an arg through its location (pointer).
1589
1590         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
1591         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
1592         as gfloat*, uchars are collected as guchar*, ints are collected as
1593         gint*, etc...
1594
1595 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
1596
1597         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
1598         Include <string.h> instead of <strings.h>.
1599
1600         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
1601         (actually, a lot more duplicate includes occur if
1602          you trace through the sequence of #include's)
1603         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
1604         
1605 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
1606
1607         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
1608         gtk-a-higuti-990322-[0-3]
1609
1610         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
1611         that was causing -DX_LOCALE not to work.
1612
1613         * gtk/gtkrc.c (gtk_rc_init):
1614         X_LOCALE will never have LC_MESSAGES defined
1615
1616 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
1617
1618         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
1619         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
1620
1621         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
1622         left/right as well (gtk-michael-980726-0.patch.gz).
1623
1624         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
1625         for pointer values, use gchar instead of char. fixed uline allocation
1626         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
1627         chunks instead of G_ALLOC_ONLY.
1628         (gtk_label_size_request): always alter requisition as passed and leave
1629         widget->requisition alone.
1630         (gtk_label_set_text): allow NULL strings.
1631         (gtk_label_new): likewise.
1632
1633 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
1634
1635         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
1636
1637 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
1638
1639         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
1640         *and* mapped (i.e. drawable).
1641         (gtk_bin_expose): only send exposes to drawable children.
1642
1643         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
1644         (gtk_box_expose): only send exposes to drawable children.
1645
1646         * gtk/gtkhscale.c (gtk_hscale_draw): 
1647         * gtk/gtkvscale.c (gtk_vscale_draw):
1648         hm, this is an ugly one. we first compute the size of our trough area
1649         here (window relative) and then check intersection with the draw_area
1650         which is parent relative because we're a NO_WINDOW widget, so we need
1651         to offset the trough area by allocation.x and allocation.y before the
1652         check. (this must not be done for the background area though, since
1653         that's already computed parent relative).
1654
1655 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
1656
1657         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
1658         unrealize title buttons.
1659
1660 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
1661
1662         * gtk/gtkclist.c (gtk_clist_column_title_passive)
1663         (gtk_clist_column_title_active): 
1664         only connect/disconnect to GtkWidgetClass::event to block mouse events.
1665
1666         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
1667         zero initialize event, removed superfluous gdk_window_get_pointer call
1668
1669         * gtk/gtklist.c (gtk_list_vertical_timeout)
1670         (gtk_list_horizontal_timeout): removed superfluous
1671         gdk_window_get_pointer call
1672
1673 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
1674
1675         * plugging problems reported by "Bruce Mitchener, Jr."
1676         <bruce@puremagic.com> due to a purify session.
1677
1678         * gtk/gtkstyle.c:
1679         (gtk_style_ref): 
1680         (gtk_style_unref): assert ref_count to be > 0.
1681
1682         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
1683         the requisition.
1684         (gtk_clist_set_shift): likewise.
1685
1686         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
1687         adjustments.
1688
1689         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
1690         event before sending it and set send_event to TRUE (which needs to
1691         be done for *all* synthesized events).
1692         (gtk_list_vertical_timeout): likewise.
1693
1694         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
1695         leaks.
1696
1697         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
1698         to TRUE when synthesizing events.
1699
1700 [ *** end of merges from 1.2 *** ]      
1701         
1702 1999-11-21  Tor Lillqvist  <tml@iki.fi>
1703
1704         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
1705         (or copied from gdkconfig.h.win32 on Win32, sigh).
1706
1707         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
1708
1709         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
1710
1711         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
1712
1713         * gdk/gdkconfig.h.win32: New file.
1714
1715         * gdk/win32/makefile.cygwin: Build just a static archive here.
1716
1717         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
1718         for the DLL from the static archive built above.
1719
1720         * gdk/gdk.def: Moved here from the win32 subdirectory.
1721
1722         * gdk/win32/*: Adapt for the changed private struct organisation.
1723
1724         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
1725
1726 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
1727
1728         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
1729         for wheel mice (buttons 4 and 5).
1730
1731 1999-11-18  Tor Lillqvist  <tml@iki.fi>
1732
1733         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
1734         drawables use just the pixel field in the foreground and
1735         background GdkColor of the GdkGC.
1736
1737         gdk_gc_set_{fore,back}ground() are called in the GIMP with
1738         GdkColors containing uninitialized (red,green,blue) fields, and
1739         just the pixel field filled in, and furthermore in the
1740         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
1741         It thus turns out that we really don't need to have the full
1742         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
1743         it later to have just the pixel values.
1744
1745 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
1746
1747         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
1748
1749 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
1750
1751         * docs/gtkfaq.sgml: threads example from Erik Mouw.
1752         New question on GtkLabel background colors.
1753
1754         * docs/gtk_tut.sgml:
1755           - Correct the example code callback
1756             function definitions.
1757           - Update the gtkdial example code, from Frans van Schaik.
1758           - Update setselection.c to current API.
1759
1760         * examples/Makefile examples/*/*.c: Update to code
1761         listed in tutorial.
1762
1763 1999-11-10  Tor Lillqvist  <tml@iki.fi>
1764
1765         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
1766         subrange table (from the "Developing International Software for
1767         WIndows 95 and Windows NT" book) was missing the Hangul syllable
1768         block... Get the loaded font's charset correctly.
1769
1770         (Note that this, and the other *-win32.c files, still really are
1771         the old ones, the win32 subdirectory is not ready for compilation
1772         yet after the reorg.)
1773
1774 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
1775
1776         * gtk/gtkclist.c: Fix off-by-one bug in parameter
1777         check.
1778
1779 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
1780
1781         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
1782         on results of XQueryDeviceState().
1783
1784 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
1785
1786         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
1787         we need to accesss only ->children. We need an accessor
1788         for the children.
1789
1790         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
1791         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
1792         to get rid of gdkx.h include.
1793         
1794         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
1795         and random references to 'None'.
1796
1797         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
1798         Get rid of unused #include <gdk/gdkx.h>
1799
1800         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
1801         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
1802         gdkconfig.h.
1803
1804 1999-11-08  Tor Lillqvist  <tml@iki.fi>
1805
1806         * gdk/win32/gdkdraw.c
1807         * gdk/win32/gdkfont.c
1808         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
1809         following yesterday's changes. (Unrelated to Owen's reorg.)
1810
1811 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
1812
1813         * gdk/x11/gdkinput-gxi.c: Add missing include,
1814           fix GdkWindowPrivate => GdkDrawablePrivate.
1815
1816         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
1817
1818         * gdk/x11/Makefile.am (xinput_sources): Add missing
1819         backslash to fix building with --with-xinput=none
1820
1821 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
1822
1823         Move all X specific code into the x11/ directory.
1824         Aside from shuffling things around, did the following:
1825
1826        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
1827          gdk_arg_context_* - a simple argument parsing system
1828          in the style of popt.
1829
1830        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
1831          gdk/x11/gdkprivate-x11.h:
1832          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
1833          add ->klass and ->klass_data fields. The klass_data
1834          field points to an auxilliary structure that is
1835          windowing system dependent.
1836
1837        * gdk/gdkfont.c: Make most of the measurement functions
1838          simply wrappers around gdk_text_extents().
1839
1840        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
1841          _gdk_font_strlen() function that hides the weird
1842          behavior in gtk+-1.[02] where a string is interpreted
1843          differently for 8-bit and 16-bit fonts.
1844
1845        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
1846          to store common code for synthesizing double/triple
1847          press events.
1848         
1849        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
1850          Make all the function that modify an existing GC
1851          simply wrappers around gdk_gc_set_values().
1852          
1853        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
1854          for throwing out later.
1855
1856        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
1857          GdkImagePrivate and GdkColormapPrivate to have a
1858          windowing system dependent part (GdkFontPrivateX etc.)
1859          that "derives" from the system-independent part.
1860
1861        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
1862          Got rid of the included-source-files for XInput in
1863          favor of automake conditionals. (Which didn't exist
1864          when XInput support was originally added.)
1865
1866        * gdk/gdkrgb.c: Remove the visual id from the debugging
1867          statements since that is X11 specific; print out
1868          type/depth info instead.
1869          
1870
1871 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
1872
1873         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
1874         loading duplicates of hashed fonts.
1875
1876         * gdk/gdk.c (gdk_keysym_convert_case): rename
1877         gdk_XConvertCase to gdk_keysym_convert_case, allow
1878         results to be NULL in the GTK+ style.
1879
1880         * gdk/gdkcompat.h: Started compatibility header
1881         for renames.
1882
1883 1999-11-07  Tor Lillqvist  <tml@iki.fi>
1884
1885         * gdk/win32/gdkprivate.h: New font private structures, related to
1886         fontsets.
1887
1888         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
1889         gdk_font_list_free(). On X11, will just be wrappers to
1890         XListFonts() and XFreeFontNames(). On Win32, the code previously
1891         in gtkfontsel.c is now here.
1892
1893         New function gdk_font_xlfd_create(). On X11 will get the FONT
1894         property of the font (for GDK_FONT_FONTs), or call
1895         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
1896         builds a XLFD style name from the font information in the LOGFONT
1897         struct(s).
1898
1899         New function gdk_font_xlfd_free(), which correspondingly frees the
1900         string returned by gdk_font_xlfd_create().
1901
1902         Implement fontsets on Win32. Add a function that iterates over a
1903         wide char string and calls a callback function for each substring
1904         of wide chars from the same Unicode subrange (and thus probably
1905         available in the same real font).
1906
1907         Improve the XLFD emulation a bit.
1908
1909         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
1910
1911         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
1912         Beta3, WM_IME_CHAR messages don't seem to contain the composed
1913         multi-byte char as with the Active IMM on Win9x. Oh well, handle
1914         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
1915         ImmGetCompositionStringW() to get the composed Unicode chars.
1916
1917         * gdk/win32/gdkgc.c
1918         * gdk/win32/gdkdraw.c: Changes needed because of the font private
1919         struct changes.
1920
1921         * gdk/win32/gdk.def: Add the new functions.
1922
1923 1999-11-04  Tor Lillqvist  <tml@iki.fi>
1924
1925         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
1926         get the Platform SDK to get <dimm.h>.
1927
1928         * gdk/win32/gdkevents.c: More event handling fixes and
1929         simplification. Never generate motion events with is_hint true. We
1930         used to do that on bogus grounds earlier. Windows sends
1931         WM_MOUSEMOVE messages on button events even if the mouse hasn't
1932         moved, ignore these.
1933
1934         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
1935
1936         * gdk/win32/gdkglobals.c
1937         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
1938         the TrackMouseEvent function, and use it.
1939
1940         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
1941         char before calling WideCharToMultiByte in order to get a string
1942         for the window title.
1943
1944         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
1945
1946         * gdk/win32/gdk.def: Remove obsolete functions.
1947
1948         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
1949         /nodefaultlib and /defaultlib switches.
1950
1951         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
1952
1953 1999-10-31  Tor Lillqvist  <tml@iki.fi>
1954
1955         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
1956         EuroSign).
1957
1958         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
1959         same type as GdkWChar, especially on Win32.
1960
1961         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
1962
1963         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
1964         before passing to Windows GDI for drawing etc. Convert to the
1965         system default codepage before passing to Windows as window
1966         titles.
1967
1968         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
1969         support changing input locale on the fly.
1970
1971         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
1972         on-the-fly changes. Convert incoming characters from the current
1973         codepage to Unicode (and then to a UTF-8 multi-byte string) based
1974         on the current input language. Use keysym<->Unicode mapping tables
1975         and functions borrowed from xterm sources.
1976
1977         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
1978         editions of Win9x, use the ActiveX-based Active IMM (Input Method
1979         Manager) if available. IMEs and the Active IMM are available under
1980         the disguise of Chinese, Korean and Japanese support for IE and
1981         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
1982         support is present in all editions (as long as you install it).
1983
1984         Call DispatchMessage from gdk_events_queue() (and thus
1985         gdk_WindowProc()), instead of duplicating the code in
1986         gdk_WindowProc().
1987
1988         Reworked the grab handling and propagation code, factored out
1989         duplicated code snippets into separate functions. Other cleanups,
1990         too.
1991
1992         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
1993         the <dimm.h> header describing the Active IMM.
1994
1995         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
1996         just do the same as for "single" fonts.
1997
1998         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
1999         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
2000         the new keysyms from gdkkeysyms.h.
2001
2002         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
2003         fontset, so that gtkentry uses wide characters.
2004
2005         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
2006         GTk+'s system directory "gtk+", not "gtk".
2007
2008 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
2009
2010         * docs/gtkfaq.sgml: FAQ update
2011
2012 1999-10-21  Tor Lillqvist  <tml@iki.fi>
2013
2014         * gdk/win32/gdkprivate.h: Add more font private data.
2015
2016         * gdk/win32/gdkfont.c
2017         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
2018         fonts and strings. Now works much better. You still have to
2019         have a correct font selected, though. No fontset emulation yet.
2020
2021 1999-10-19  Tor Lillqvist  <tml@iki.fi>
2022
2023         * gtk/maketypes.awk: Use G_OS_WIN32.
2024
2025         * gtk/gtk.def: Add some missing entry points. Also some non-public
2026         ones, but PyGTK porter claims to need them.
2027
2028         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
2029         built-in type generation.
2030
2031 1999-10-14  Tor Lillqvist  <tml@iki.fi>
2032
2033         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
2034         GDK_FONT_FONT fonts (which is all we have for now, we don't
2035         emulate fontsets). The X11 version uses plain XDrawString in that
2036         case, too. The string passed to gdk_draw_text_wc seems to be in
2037         fact (at least, when used by gtkentry and gtktext) either in a
2038         single-byte charset, or a DBCS. Not Unicode.
2039
2040         This fixes the problem in gtkfontsel, where even if you had
2041         selected a font with a non-Latin1 charset (windows-greek, for
2042         instance), the preview still used Latin-1 glyphs.
2043
2044         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
2045         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
2046         (gdk_font_load): Recognize the demibold etc weights, even if we
2047         don't have the corresponding constants in the headers.
2048         (gdk_font_hash_insert): Use same hash mechanism as in the X11
2049         version. Should save font resources a bit, when we don't have
2050         multiple HFONTs for the same font.
2051
2052         * gdk/win32/gdkprivate.h: Add the names field as in the X11
2053         version.
2054
2055 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
2056
2057         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
2058         X values
2059
2060 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
2061
2062         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
2063         layout support (as mentioned on
2064         http://www.jcinteractive.com/gnome-ui/software/widgets/)
2065
2066 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
2067
2068         * gtk/fnmatch.c
2069         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
2070
2071 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
2072
2073         * configure.in (ALL_LINGUAS): Added Galician (gl)
2074
2075 1999-10-05  Tor Lillqvist  <tml@iki.fi>
2076
2077         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
2078
2079         * gdk/win32/gdkcompat.c: New file, actually provide an
2080         implementation for the deprecated functions. (Just temporarily.)
2081
2082         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
2083
2084         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
2085
2086         * gdk/win32/gdk.def gtk/gtk.def: Updates.
2087
2088 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
2089
2090         * configure.in: Added "uk" to ALL_LINGUAS.
2091         
2092 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
2093
2094         * configure.in: correct checking for BeOS check
2095
2096         * gdk/gdktypes.h
2097         * gtk/fnmatch.c
2098         * gtk/gtkfilesel.c
2099         * gtk/gtkitemfactory.c
2100         * gtk/gtkmain.[ch]
2101         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
2102
2103 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
2104
2105         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
2106         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
2107         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
2108         by Bulgarian). 
2109
2110 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
2111
2112         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
2113         Fix a reference to window_private->destroyed.   
2114
2115         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
2116         (ugly) setting of an internal GdkWindow member to use
2117         a _slightly_ cleaner macro.
2118
2119         * gdk/gdkprivate.h: Split GdkWindowPrivate into
2120         GdkDrawablePrivate and GdkWindowPrivate.
2121         Add extra macros for accessing GDK_DRAWABLE_ components.
2122
2123         * *.[ch]: Massive adjustments for the above, use the
2124         new macros in a lot of places.
2125
2126 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
2127
2128         * gdk/gdktypes.h: Make GdkDrawable the base type,
2129         not GdkWindow.
2130
2131 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
2132
2133         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
2134
2135 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
2136
2137         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
2138
2139 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
2140
2141         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
2142         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
2143
2144         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
2145
2146         * docs/gtk-config.1: Now autogenerated.
2147         * docs/Changes-1.4.txt: started
2148         
2149 1999-10-03  Tor Lillqvist  <tml@iki.fi>
2150
2151         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
2152         to #ifdef also here.
2153
2154         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
2155         Owen did to the X11 backend.
2156
2157         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
2158         ScrollWindowEx when blitting inside a window, it can't be correct
2159         in the general case.
2160
2161         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
2162         WM_GETMINMAXINFO is easier.
2163
2164         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
2165         depth equal to the bitspixel value, not the visual's depth.
2166
2167         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
2168         to 24 even if the bitspixel value is 32.
2169
2170         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
2171         need to check for depth==32 when bpp==32, depth will always be 24.
2172
2173 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
2174
2175         * docs/Changes-1.4.txt: Started
2176         
2177         * gtk/Makefile.am (gdk_headers): Include all the new headers.
2178
2179         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
2180         
2181         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
2182         into C file.
2183         
2184         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
2185         header to gdkinputprivate.h.
2186
2187         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
2188         unused since before 1.2.
2189
2190 1999-09-30  Tor Lillqvist  <tml@iki.fi>
2191
2192         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
2193         expand possible hex escapes in the font family (put there by
2194         logfont_to_xlfd if the font name isn't a legal XLFD font family,
2195         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
2196         On Win32, add hex escapes here, too.
2197
2198 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
2199
2200         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
2201         to #ifdef GDK_WINDOWING_X11.
2202
2203 [ Merges from gtk-1-2 ]
2204
2205 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
2206
2207         * configure.in: fixed "GNU Make" check to pass with new make version
2208         3.77.95.
2209
2210 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
2211
2212         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
2213         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
2214         AM_PATH_GTK() macros don't get confused by the -pre1.
2215
2216 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
2217
2218         * configure.in (REBUILD): Change check for perl5
2219           to check explicitely for v >= 5.002. (5.001
2220           does not work with our scripts.)
2221
2222 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
2223
2224         * configure.in: evaluate $PERL for the perl version check. added
2225         --disable-rebuilds to give the user an option to completely disable
2226         any source autogeneration rules.
2227
2228 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
2229
2230         * configure.in: evaluate $ac_make when checking for GNU Make.
2231
2232 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
2233
2234         * docs/Makefile.am: added generation.txt.
2235
2236         * Makefile.am: require automake 1.4, build README from README.in and
2237         INSTALL from INSTALL.in in dist-hook.
2238         
2239         * README.in:
2240         * INSTALL.in: new files to autogenerate README and INSTALL from.
2241
2242         * configure.in: figure whether we have GNU Make
2243
2244         * docs/generation.txt: minor additions/corrections.
2245
2246 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
2247
2248         * docs/gtkfaq.sgml: FAQ Update
2249
2250 July 30, 1999 Elliot Lee <sopwith@redhat.com>
2251         
2252         * configure.in: Fix autoconf warnings about cross compilation by
2253         trying to provide sane defaults for AC_TRY_RUN.
2254
2255 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
2256
2257         * ltconfig
2258         * ltmain.sh: upgrade to libtool 1.3.3
2259
2260 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
2261
2262         * INSTALL: Indicate that the --with-glib= configure
2263         time flag is unsupported.
2264
2265 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
2266
2267         * docs/generation.txt: Added a file that gives
2268         documenation about the autogeneration process for
2269         various autogenerated files.
2270         
2271 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
2272
2273         * configure.in (LIBS): Look for libgmodule in the
2274         right location.
2275
2276 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
2277
2278         * docs/gtk_tut.sgml: Removed references to
2279         code examples in my directory on gtk.org as
2280         they should all be in the tutorial now.
2281
2282         * docs/gtk_tut.sgml: Added sources for dial-test
2283         and scribble-xinput programs that were previously
2284         missing.
2285
2286 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
2287
2288         * TODO: Added entry about menu keyboard navigation, removed
2289         some finished items.
2290
2291 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
2292
2293         * acinclude.m4: Standardize on func_dgettext
2294         not func_gettext, so that the checks for dgettext
2295         actually are paid attention to.
2296
2297 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
2298
2299         * configure.in (LIBS): Add $INTLLIBS into $LIBS
2300         directly, rather than repeating the checks for
2301         gettext.
2302
2303         * INSTALL: Added information about gettext and
2304         NLS support.
2305
2306         * acinclude.m4 (LIBM): Check for dgettext, not
2307         just gettext. This should hopefully fix things wrt
2308         systems with old versions of GNU gettext installed.
2309
2310 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
2311
2312         * configure.in (LIBS): Look for libgmodule in the
2313         right location.
2314
2315 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
2316
2317         * autogen.sh: add --enable-maintainer-mode
2318
2319         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
2320
2321 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
2322
2323         * docs/gtk-config.1.in:
2324           docs/Makefile.am:
2325           configure.in: gtk-config is now generated.
2326
2327         * docs/gtk-config.1: Removed, now generated.
2328
2329 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
2330
2331         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
2332         handle CreateNotify itself, still put out a debuging message for
2333         --gdk-debug=events. made the ReparentNotify debugging message more
2334         verbose.
2335         wrap xcoords translation for ConfigureEvents into an error trap,
2336         a destroy event may already be pending, and in that case, the
2337         actuall coordinate values are not at all critical.
2338
2339 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
2340
2341         * gdk/gdkcc.c: Stop leaking the color_hash all over
2342         the place. Simplify and improve the logic.
2343
2344 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
2345
2346         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
2347         for prototypes and function implementations consistent (reported
2348         by Tomas Ogren).
2349
2350 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
2351
2352         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
2353         send_event set in debugging output.
2354         (gdk_compress_exposures): default initialize the event so we don't
2355         operate on bogus values (namely send_event).
2356
2357 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
2358
2359         * gdk/gdkwindow.c: When we receive an unexpected
2360         destroy notify on one of our windows, don't just
2361         warn about it, also mark our windows as destroyed.
2362
2363 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
2364
2365         * gdk/gdkfont.c (gdk_font_hash_insert): Add
2366           name => font and name => fontset hashes. The 
2367           name => fontset hash is a _big_ win since we
2368           weren't previously caching fontsets at all and loading
2369           fontsets is expensive. The name => font hash
2370           is less of a win, but it does save us from doing
2371           repeated XQueryFont calls on the same font.
2372
2373         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
2374           list so we can remove font/fontset from hash.
2375
2376 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
2377
2378         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
2379           and slightly confusing test. [ XInternAtom (,,TRUE)
2380           will never return None ].
2381
2382 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
2383
2384         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
2385           gdk/gdkwindow.c (gdk_window_set_hints):
2386
2387         Don't omit setting the properties if flags == 0 -
2388         there may be an existing set of properties there
2389         already. (Very old bug. Would it be better to
2390         delete the property instead?)
2391
2392         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
2393           spelling error in comment.
2394
2395 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
2398           to avoid stomping over gdk_error_warnings.
2399
2400         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
2401           as (bits_per_pixel + 7) / 8. This gives the same
2402           result as before for multiples of 8, but actually
2403           a "reasonable" value for 1bit or 4bit displays.
2404
2405 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
2406
2407         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
2408         GNU Make.
2409
2410 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
2411
2412         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
2413         discarding configure events.
2414
2415 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
2416
2417         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
2418         refcount is greater than zero.
2419
2420         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
2421
2422         * gdk/gdkfont.c (gdk_font_unref): Likewise.
2423
2424         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
2425
2426         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
2427
2428 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
2429
2430         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
2431         that format 32 => sizeof(item) == 4. It really is
2432         sizeof(long).
2433
2434 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
2435
2436         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
2437         core dump at all on X IO errors, only core dump
2438         if --enable-debug for X errors.
2439
2440 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
2441
2442         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
2443         unknown window:" message. disabled ConfigureNotify discarding code,
2444         because it led to events being processed out of order.
2445
2446 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
2447
2448         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
2449
2450         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
2451         we export this function, supress error warnings and don't reset the
2452         error code in the first half of this function.
2453
2454         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
2455         code (instead of just -1) so gdk_error_trap_pop() reveals something
2456         actually informative about the error that happened.
2457
2458         * gdk/*.c:
2459         don't rely on gdk_error_code being -1 if an error occoured, but just
2460         gdk_error_code != 0.
2461
2462 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
2463
2464         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
2465         pointer *before* invoking the filter function, so we at least don't
2466         crash if a filter is removed that is currently executed. window filters
2467         *really* need to be made truely reentrant at some point.
2468
2469 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
2470
2471         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
2472         PropertyNotify debug messages.
2473
2474 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
2475         
2476         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
2477         
2478         * gdk/gdkim.c: Fix cut-and-paste errors for 
2479         x/y and PreeditAttributes/StatusAttributes.
2480
2481 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
2482
2483         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
2484         G_MAXINT to 2^16 to alleviate overflow problems in
2485         various window managers.
2486
2487 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
2488
2489         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
2490         for fontsets.
2491
2492 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
2493
2494         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
2495         Initialize size_hints.x and size_hints.y because kwm
2496         brokenly pays attention to them.
2497         (Bug #1181 -  Lars Heete <hel@admin.de>)
2498
2499 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
2500
2501         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
2502         return value of gdk_list_visuals(). 
2503         (Bug #1193 - Morten Welinder <terra@diku.dk>)
2504
2505 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
2506
2507         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
2508         XSetIMValues to (void *) when comparing to NULL, to workaround
2509         the problem of some compilers barfing since older X headers don't
2510         have the prototype for it.
2511
2512 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
2513
2514         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
2515         for pseudocolor where colormap->colors was double
2516         allocated.
2517
2518         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
2519         color value in the hash table with the pixel filled
2520         in so when we do later hash table lookups, the color
2521         value is correct.
2522         
2523 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
2524
2525         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
2526         making the call
2527
2528 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
2529
2530         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
2531         pointed out by Morten Welinder <terra@diku.dk>.
2532
2533 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
2534
2535         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
2536           default filter from the list
2537
2538 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
2539
2540         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
2541           default filter from the list
2542
2543 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
2544
2545         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
2546
2547         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
2548         g_strdup_printf instead of calcing the length separately
2549
2550 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
2551
2552         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
2553         that we don't do in many other places. (Fixing duplicate 
2554         #include of config.h)
2555
2556         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
2557         Otherwise, #ifndef XINPUT_NONE check in the latter
2558         doesn't work. (Bug #546)
2559
2560 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
2561
2562         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
2563         "None" case insensitive.
2564
2565 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
2566
2567         * gdk/gdkselection.c: 
2568         Add error traps so if the other end of the connection
2569         dies, we survive.
2570
2571 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
2572
2573         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
2574         dest_xid field into two fields - one for the window
2575         to send in messages, one to indicate the last looked
2576         up window for caching purposes. This is needed, so
2577         that Leave messages get the correct window.
2578
2579 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
2580
2581         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
2582         Fix warning created by people mucking around
2583         with the gsource API.
2584
2585         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
2586         Change mapping between GIOCondition and GdkInputCondition
2587         to match the way the Linux kernel does it. This should
2588         fix problems where closed pipes were no longer signalling
2589         GDK_INPUT_READ on systems with a native poll().
2590
2591 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
2592
2593         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
2594         explicitly for the string "None" - it is in the XPM
2595         spec and some servers treat unknown colors in odd ways
2596         (like asking the user!)
2597
2598 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
2599
2600         * gdk/gdkevents.c: made "->" into a "." of previous change so
2601         it compiles
2602
2603 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
2604
2605         * gdk/gdkevents.c (gdk_compress_exposures): Set the
2606         window field of the event structure before calling
2607         user filters.
2608
2609 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2610
2611         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
2612         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
2613
2614 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
2617         intermediate text property - prevents major memory
2618         leak when gdk_use_mb.
2619         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
2620
2621 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
2622
2623         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
2624         gtk-a-higuti-990322-[0-3]
2625
2626         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
2627         sizeof(wchar_t) != sizeof (GdkWChar)
2628
2629         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
2630         that was causing -DX_LOCALE not to work.
2631
2632         * gtk/gtkrc.c (gtk_rc_init):
2633         X_LOCALE will never have LC_MESSAGES defined
2634
2635         * gdk/gdk.c (gdk_init_check):
2636         Remove --xim-preedit and --xim-status from argv properly.
2637
2638         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
2639         that the client window is present on the X server
2640         before we pass it to the input method.
2641
2642 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
2643
2644         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
2645         if --display is specified on the command line, than
2646         the drag window will not be created on that display.
2647         
2648 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
2649
2650         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
2651         lookups with only_if_exists == TRUE were inserting
2652         bogus values into the atom cache.
2653
2654 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
2655
2656         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
2657         then reset it to NULL.
2658
2659         * gdk/gdkcolor.c:
2660         (gdk_colors_free): 
2661         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
2662         key for g_hash_table_remove() in both functions, this prevents us
2663         from accessing possibly uninitialized portions of a GdkColor structure
2664         where we are only interested in its pixel value.
2665
2666 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
2667
2668         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
2669         font hash table, if we have a GdkFontPrivate entry for this font
2670         already, simply increment its reference count, provided by Olaf Dietsche
2671         <olaf.dietsche+list.gtk@netcologne.de>.
2672
2673 1999-09-21  Tor Lillqvist  <tml@iki.fi>
2674
2675         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
2676         just to be sure.
2677
2678         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
2679         unused variables, leftovers from the X11 version.
2680
2681         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
2682
2683         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
2684         downcase fields on X11.
2685
2686 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
2687         
2688         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
2689         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
2690
2691 1999-09-17  Tor Lillqvist  <tml@iki.fi>
2692
2693         * gdk/win32/gdk.def: Add gdk_threads_mutex.
2694
2695         * gtk/makefile.msc: Correct path to libintl.
2696
2697         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
2698         use of gint vs. int, and gint vs. gboolean in headers and
2699         definitions. Use GtkType for the *_get_type functions. Note that
2700         these changes preserve binary compatibility.
2701
2702         * gdk/gdk.c
2703         * gdk/win32/gdk.c
2704         * gdk/gdk.h: Fix inconsistencies: gint vs int.
2705
2706         * gtk/gtkmain.c
2707         * gtk/gtkclist.c
2708         * gtk/gtkmenufactory.c
2709         * gtk/gtknotebook.c
2710         * gtk/gtkwidget.c: Fix inconsistencies, also gint
2711         vs. gboolean.
2712
2713         * gtk/gtkcolorsel.[ch]
2714         * gtk/gtkcombo.[ch]
2715         * gtk/gtkdrawingarea.[ch]
2716         * gtk/gtkgamma.[ch]
2717         * gtk/gtkhandlebox.[ch]
2718         * gtk/gtkhpaned.[ch]
2719         * gtk/gtkhruler.[ch]
2720         * gtk/gtkplug.[ch]
2721         * gtk/gtkpreview.[ch]
2722         * gtk/gtkruler.[ch]
2723         * gtk/gtksocket.[ch]
2724         * gtk/gtkstatusbar.[ch]
2725         * gtk/gtktoolbar.[ch]
2726         * gtk/gtkvbbox.[ch]
2727         * gtk/gtkvpaned.[ch]
2728         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
2729         functions.
2730
2731         * gtk/gtkgamma.h: Fix bug, missing () in call of
2732         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
2733
2734 1999-09-14  Tor Lillqvist  <tml@iki.fi>
2735
2736         * gdk/gdkcolor.c (gdk_colormap_new)
2737         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
2738         colormap->colors was allocated twice.
2739
2740         * gdk/win32/gdk.c: Remove some unused stuff.
2741
2742         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
2743         colormap.
2744
2745         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
2746         * gtk/gtklabel.h (gtk_label_get_type)
2747         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
2748         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
2749         in a couple of places, not guint.
2750
2751 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
2752
2753         * configure.in,po/et.po: added Estonian language file
2754
2755 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
2756
2757         * configure.in,po/da.po: added Danish file
2758
2759 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
2760
2761         * docs/gtkfaq.sgml: Minor FAQ Update
2762
2763 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
2764
2765         * docs/gtkfaq.sgml: FAQ update
2766
2767 1999-08-27  Tor Lillqvist  <tml@iki.fi>
2768
2769         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
2770         way to get window contents continually refreshed while resizing. I
2771         didn't like the effects myself, so it's not on by default.
2772
2773         * gdk/win32/gdkprivate.h: New flag variable
2774         gdk_event_func_from_window_proc, FALSE by default.
2775
2776         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
2777         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
2778         are passed --gdk-event-func-from-window-proc.
2779
2780         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
2781         and we have am event_func, call it instead of enqueing the event.
2782
2783 1999-08-23  Tor Lillqvist  <tml@iki.fi>
2784
2785         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
2786         Kelley: Set expose_count in GdkEventExposes correctly.
2787
2788         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
2789         MULTIPLE_WINDOW_CLASSES).
2790
2791         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
2792         for bug in NT, apparently NT *does* draw the end pixel, too, in
2793         LineTo with a one-pixel pen, so we don't have to do it ourselves.
2794
2795 1999-08-21  Tor Lillqvist  <tml@iki.fi>
2796
2797         Improvements by Hans Breuer: 
2798
2799         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
2800
2801         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
2802         CS_?REDRAW flags as they cause lots of (late) redraws when "show
2803         window contents while dragging" is turned on. Allocate at least
2804         one unique class for every GdkWindowType. If support for single
2805         window-specific icons is ever needed (eg. Dialog specific), every
2806         such window should get its own class.
2807
2808 1999-08-19  Tor Lillqvist  <tml@iki.fi>
2809
2810         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
2811         error that caused crashes.
2812
2813 1999-08-17  Tor Lillqvist  <tml@iki.fi>
2814
2815         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
2816         window, use ScrollWindowEx, and call UpdateWindow. This prevents
2817         bugs when for instance part of the window was outside the
2818         display. Thanks to Philippe Colantoni for finding and fixing this.
2819
2820 1999-08-16  Tor Lillqvist  <tml@iki.fi>
2821
2822         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
2823         endpoint calculations which were totally wrong. (A little RTFMing
2824         helps a lot ;-)
2825
2826         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
2827         from a separate directory, not from gettext, because of licensing
2828         issues (we want to use the LGPL version).
2829
2830         * README.win32: Mention the intl from glibc vs from gettext issue.
2831
2832 1999-08-13  Tor Lillqvist  <tml@iki.fi>
2833
2834         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
2835         in the key event handling: Now AltGr chars work again. Also,
2836         now Alt-digits are passed up as well as Control-digits.
2837         Pass keypad plus and minus as normal plus and minus.
2838
2839 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
2840
2841         * docs/gtkfaq.sgml: FAQ Update
2842
2843 1999-07-25  Tor Lillqvist  <tml@iki.fi>
2844
2845         * README.win32
2846         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
2847         the Wintab SDK.
2848
2849         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
2850         OK, but getting closer. Guard against bogus tilt data from Wacom
2851         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
2852         enable easier building without Wintab.
2853
2854         * gdk/win32/gdkinput.h
2855         * gdk/win32/gdkevents.c 
2856         * gdk/win32/gdkwindow.c: Minor changes related related to above.
2857         
2858         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
2859         code. As we have just one visual on Win32, no sense to have it in a
2860         table, and no need for the hash table.
2861
2862         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
2863         better on white background.
2864
2865 1999-07-21  Tor Lillqvist  <tml@iki.fi>
2866
2867         * README.win32: Update gcc build instructions. Mention gettext is
2868         GPL.
2869
2870         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
2871         supported cursor size with GetSystemMetrics.
2872
2873         * gdk/win32/gdkfont.c
2874         * gtk/gtkfontsel.c: Guard against some font weight and charset
2875         symbols being undefined (in mingw32 headers).
2876
2877         * gdk/win32/makefile.cygwin
2878         * gtk/makefile.cygwin
2879         * gtk/gtkthemes.c: No longer need to have differently named
2880         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
2881
2882 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
2883
2884         * docs/gtkfaq.sgml: Long awaited FAQ update.
2885
2886 1999-07-15  Tor Lillqvist  <tml@iki.fi>
2887
2888         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
2889         it. Obscure bit manipulation needed.
2890
2891         * gdk/win32/gdkevents.c: Logging.
2892         
2893         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
2894         style (file name include compiler name) for theme engines.
2895
2896 1999-07-13  Tor Lillqvist  <tml@iki.fi>
2897
2898         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
2899
2900         * gdk/win32/gdkevents.c: Fix long-standing bug in key
2901         events. The key.string wasn't zero-terminated, still we strdup'ed
2902         it in gdk_event_copy(). Synthesize crossing events for button
2903         events before possible propagation.
2904
2905         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
2906
2907         * gdk/win32/makefile.cygwin
2908         * gtk/makefile.cygwin: Use new DLL naming style for the
2909         GCC-compiled ones.
2910
2911         * gdk/win32/makefile.msc
2912         * gtk/makefile.msc: Cosmetics mostly.
2913
2914         * gtk/gtk.def: Add missing entry points.
2915
2916         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
2917
2918 1999-07-09  Tor Lillqvist  <tml@iki.fi>
2919
2920         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
2921         or height is zero. Don't print a warning if Pie or Arc fails, they
2922         always fail (?) for very narrow ellipses.
2923
2924         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
2925         the part or the destination window corresponding to source area
2926         outside of the source drawable's boundary.
2927
2928         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
2929         anything if less than two points.
2930
2931         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
2932         return NULL. Gtk cut-and-paste inside a single program works
2933         better this way. (It always gets the clipboard contents from
2934         Windows, not from its own copy, which is cleared anyway. I can't
2935         say I fully understand what happens... Emulating the X selection
2936         and property stuff is a bit of a mess.)
2937
2938         * gdk/win32/gdkevents.c
2939         * gdk/win32/gdkproperty.c: A bit more verbose logging.
2940
2941         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
2942         that never got deleted). Revamp gdk_region_shrink.
2943
2944         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
2945         after use.
2946
2947         * gtk/gtk.def: Add some missing entry points.
2948
2949         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
2950         component.
2951
2952 1999-07-04  Tor Lillqvist  <tml@iki.fi>
2953
2954         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
2955         Control-digits specially.
2956
2957 1999-07-03  Tor Lillqvist  <tml@iki.fi>
2958
2959         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
2960
2961 1999-06-28  Tor Lillqvist  <tml@iki.fi>
2962
2963         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
2964         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
2965         finding this.)
2966
2967 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
2968
2969         * gtk+.spec.in: Corrected some typos in files section.
2970         
2971 1999-06-15  Tor Lillqvist  <tml@iki.fi>
2972
2973         * README.win32: Mention using GNU gettext.
2974         * config.h.win32: Enable NLS stuff.
2975         * gtk/makefile.msc: Use GNU gettext.
2976         * gdk/win32/gdkdnd.c: Minor header reorg.
2977         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
2978         cosmetics.
2979         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
2980         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
2981
2982 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
2983
2984         * acinclude.m4
2985         * config.guess
2986         * config.status
2987         * ltconfig
2988         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
2989
2990 1999-05-30  Tor Lillqvist  <tml@iki.fi>
2991
2992         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
2993         SafeAdjustWindowRectEx. Don't override all calls to
2994         AdjustWindowRectEx by it, but use it only in two places: When
2995         creating a new top-level window and when moving a top-level
2996         window.
2997
2998         Use screen coordinate rectangle, not client rectangle, in
2999         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
3000         when we try to place a window so that the decoration (mainly,
3001         title bar) isn't visible.
3002
3003         These changes fix the bug that showed up for instance as the
3004         GIMP's saved top-level windows moving right and down (by an amount
3005         equal to the window decoration) for each session. This bug showed
3006         up also in testgtk's "Saved Position".
3007
3008         gdk_window_resize also redone a bit.
3009
3010 1999-05-25  Tor Lillqvist  <tml@iki.fi>
3011
3012         * gtk/testgtkrc: Add (commented out) Windows-style theme
3013         include line.
3014
3015         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
3016
3017 1999-05-18  Tor Lillqvist  <tml@iki.fi>
3018
3019         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
3020         gdkx.h to a gdk subdirectory, so that applications can include
3021         these with <gdk/*.h> without trouble.
3022
3023         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
3024         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
3025         have their bitmap destroyed.
3026
3027         * gdk/win32/gdk.def: Add gdk_root_parent.
3028
3029 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
3030
3031         * configure.in
3032           gtk-config.in
3033           ltconfig
3034           ltmain.sh     
3035           gtk/Makefile.am: changes to compile nicely (with xlib) 
3036           on BeOS
3037
3038 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
3039
3040         * acinclude.m4
3041         * config.guess
3042         * config.sub
3043         * ltconfig
3044         * ltmain.sh: upgrade to libtool 1.3
3045
3046 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
3047
3048         * gtk/gtkclist.c:
3049         * gtk/gtkctree.c: merges from gtk-1-2
3050
3051 1999-04-25  Tor Lillqvist  <tml@iki.fi>
3052
3053         Support added for building using a GNU toolchain on Win32,
3054         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
3055
3056         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
3057         * config.h.win32: Changes for gcc.
3058         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
3059         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
3060         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
3061         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
3062         Protect shl stuff unavaiilable with mingw32 headers.
3063         * gdk/win32/gdkevents.c: Fix typo.
3064         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
3065         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
3066         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
3067         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
3068         the mingw32 headers.
3069         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
3070         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
3071         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
3072         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
3073         Test for NATIVE_WIN32, not _MSC_VER.
3074         * gtk/gtkmain.c: No use warning about developer version on Win32,
3075         there aren't any non-developer versions anyhow.
3076         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
3077         * gtk/makefile.msc: Use pthread from another directory. Minor other
3078         changes. 
3079
3080 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
3081
3082         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
3083           default filter from the list
3084
3085 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
3086
3087         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
3088          when gtk_widget_grab_default() is called for a widget that
3089          is not within a GtkWindow.
3090
3091 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
3092
3093         * docs/gtk_tut.sgml, examples/clist.c: use a
3094           scrolled window in the clist example. Minor
3095           tutorial fixes.
3096
3097 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
3098
3099         * docs/gtk_tut.sgml: Style check from David King
3100           <dking@youvegotmail.net>
3101
3102 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
3103
3104         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
3105         compile with unknown value of GDK_WINDOWING
3106
3107 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
3108
3109         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
3110         after the rule is fired.
3111         (install-exec-local): Install gdkconfig.h only if the contents are
3112         different from the currently installed gdkconfig.h.
3113
3114 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
3115
3116         * gdk/Makefile.am (configexecincludedir): Rename from 
3117         configincludedir so that gdkconfig.h will be installed 
3118         as part of `make install-exec'. 
3119
3120 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
3121
3122         * acinclude.m4
3123         * config.guess
3124         * config.sub
3125         * ltconfig
3126         * ltmain.sh: upgrade to libtool 1.2f
3127
3128         * autogen.sh: libtool is not required to autogen gtk+
3129
3130         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
3131         needed)
3132
3133 1999-03-18  Tor Lillqvist  <tml@iki.fi>
3134
3135         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
3136         declaring gdk variables exported/imported from the DLL. New image
3137         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
3138         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
3139         GDK_DRAG_PROTO_OLE2.
3140
3141         * gdk/gdk.h: Merge in Win32 version: Two new functions,
3142         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
3143         declared only for the Win32 version, but could be in the X11
3144         version as well. (Needed for a Xlib-less gdk_imlib.)
3145         gdk_color_hash should have only one parameter. Declare
3146         gdk_threads_mutex with GDKVAR.
3147         
3148         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
3149         just one parameter.
3150
3151         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
3152         per pixel, not bits.
3153
3154         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
3155         Fetch bpp (which means bits-per-pixel here) from another place on
3156         Win32. Accept also depth==32 (which we might get on Win32) with
3157         bpp==32.
3158
3159         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
3160         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
3161         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
3162         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
3163         in the backend-dependent directory, not in the common gdk
3164         directory.
3165
3166         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
3167         headers.
3168
3169 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
3170
3171         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
3172         want to use the Gtk+ devel version (which is true, and yes - even i am
3173         currently working with the 1.2.x branch). so everyone reading this, you
3174         probably want to issue
3175         cvs checkout -r glib-1-2 glib
3176         and
3177         cvs checkout -r gtk-1-2 gtk+
3178         as your next two comands.
3179
3180 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
3181
3182         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
3183         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
3184
3185         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
3186         file. strongly deprecated the GTK_HAVE_* macros, we provide
3187         GTK_CHECK_VERSION() for people that need to check for certain
3188         Gtk+ versions.
3189
3190         * gtk/gtkcompat.h: removed this from CVS.
3191         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
3192         idea right from the start, it just didn't seem like that back then.
3193
3194 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
3195
3196         * merges from gtk-1-2:
3197
3198 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
3199
3200         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
3201         item factory class has been created.
3202         (gtk_item_factory_parse_rc): likewise.
3203
3204         * gtk/gtkmenu.c:
3205         keep proper references for old_active_menu_item.
3206         (gtk_menu_reparent): unset the usize of the new parent,
3207         so the menu can sanely be size requested and we don't get nasty screen
3208         artefacts upon next reparentation.
3209         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
3210         enter notify. only synthesize enter notifies if the pointer really is
3211         inside the event window.
3212         (gtk_menu_popdown): use gtk_menu_shell_deselect().
3213         (gtk_menu_popup): move the background setting stuff into
3214         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
3215
3216         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
3217         gtk_menu_shell_select_item() to select the new item.
3218         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
3219         do the right thing for deselection as well.
3220
3221 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
3222
3223         * gtk/gtkwidget.[hc]:
3224         (gtk_widget_accelerators_locked): return whether a widget's accelerators
3225         are locked.
3226
3227         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
3228         existing accelerators if the widget's accelerators are locked.
3229
3230 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
3231
3232         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
3233
3234         * gtk/gtkmenu.c: truely forward key press and key release events to
3235         the menu widget from the toplevel or tearoff window. we can't simply
3236         connect to that, we need to stop further processing of the events as
3237         well.
3238
3239 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
3240
3241         * gtk/gtkmenu.c:
3242         (gtk_menu_key_press): pass event->keyval, event->state to
3243         gtk_accelerator_valid, instead of event->keyval twice.
3244         refuse to install single letter accelerators for menus that use
3245         single letter shortcuts.
3246
3247         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
3248         gtk_menu_ensure_uline_accel_group().
3249
3250         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
3251         which will always return an uline accel group, made
3252         gtk_menu_get_uline_accel_group() return NULL if the group isn't
3253         yet created.
3254
3255 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
3256
3257         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
3258
3259         * gtk/gtkclist.c (gtk_clist_column_title_passive):
3260         Leave button sensitive, trap  button_press, button_release,
3261         motion_notify, enter_notify and leave_notify events instead.
3262         (gtk_clist_column_title_active): disconnect event handler.
3263         (gtk_clist_drag_data_get): fixed memory leak. Reported by
3264         Guillaume Laurent <glaurent@worldnet.fr>
3265
3266 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
3267
3268         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
3269         width/height mixups.
3270
3271         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
3272         if needed.
3273
3274 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
3275
3276         * gtk/testgtk.c (create_item_factory): unref the item factory after
3277         window's destruction.
3278
3279         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
3280         count on the menu shell around the menu item's activation, since the
3281         signal emission may cause menu shell destruction.
3282
3283         * gtk/gtkitemfactory.c:
3284         the previous code leaked one accel group per menu. we use
3285         gtk_menu_get_uline_accel_group() now to fix that, and with that
3286         also create the underline accelerator group of the menus only if
3287         required (i.e. an underline accelerator has been specified).
3288         (gtk_item_factory_construct):
3289         (gtk_item_factory_create_item): removed code that would create an
3290         extra accel group for the menu (and leak references).
3291         (gtk_item_factory_create_item): adapted the underline accelerator
3292         installation code to properly feature gtk_menu_get_uline_accel_group().
3293
3294         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
3295         menu->accel_group, this may return NULL if the accelerator group
3296         hasn't been set yet.
3297         added gtk_menu_get_uline_accel_group() to retrive the underline
3298         accelerator group of the menu, this will be created on demand
3299         and proper care is taken about its reference count.
3300
3301         * gtk/gtkitemfactory.h:
3302         * gtk/gtkitemfactory.c:
3303         dumped the approach of keeping a widgets by action list on the
3304         factory since the factory<->widget destroy negotiation didn't work
3305         and would be hard to get going at all. instead we keep a list of
3306         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
3307         persistant throughout a program's life time).
3308         also, i removed the static const gchar *key_* variables, and made
3309         them inline strings (they weren't actually used anyways).
3310         (gtk_item_factory_add_item): update ifactory->items.
3311         (gtk_item_factory_destroy): destroy ifactory->items (and remove
3312         the item factory pointer from the remaining ifactory widgets).
3313         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
3314         list to find the widget.
3315         (gtk_item_factory_get_item): new function that works around
3316         gtk_item_factory_get_widget() limitations, this function will only
3317         return menu items, even for <Branch> entries.
3318
3319 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
3320
3321         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
3322         font hash table, if we have a GdkFontPrivate entry for this font
3323         already, simply increment its reference count, provided by Olaf Dietsche
3324         <olaf.dietsche+list.gtk@netcologne.de>.
3325
3326         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
3327         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
3328
3329 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
3330
3331         * gtk/gtkcontainer.c:
3332         (gtk_container_add_with_args):
3333         (gtk_container_addv):
3334         (gtk_container_add): before adding a child to a conatiner, make sure
3335         it is (default) constructed, this is neccessary because under certain
3336         circumstances the child will get relized and mapped immediatedly, in
3337         which case it has to be constructed already.
3338
3339 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
3340
3341         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
3342         values > 1 as TRUE also.
3343
3344 1999-03-16  Tor Lillqvist  <tml@iki.fi>
3345
3346         * README.win32: New file.
3347                 
3348         * configure.in: Check for lstat.
3349
3350         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
3351         completeness.
3352
3353         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
3354
3355         * gtk/gtk.def: Removed CRs.
3356
3357         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
3358         ..\gdk\win32).
3359
3360         * gdk/win32/makefile.msc: Correct upwards relative paths.
3361         
3362 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
3363
3364         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
3365           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
3366           it was connecting a void function to expose_event and the int
3367           returning function to the draw signal
3368
3369 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
3370
3371         * configure.in:
3372         Use correct path to libgmodule.la when ref'ing uninstalled copy
3373         of glib.  (Already in stable branch, Bug #417)
3374
3375 1999-03-15  Tor Lillqvist  <tml@iki.fi>
3376
3377         Win32 merge and general portability stuff:
3378                 
3379         * acconfig.h,configure.in: Check for <sys/time.h>.
3380
3381         * gdk/win32: New directory (actually, been there for a while).
3382         
3383         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
3384         NATIVE_WIN32, and use these. Always case fold on Win32. No
3385         backslashed escapes on native Win32.
3386
3387         * gtk/{gtk.def,makefile.msc}: New files.
3388
3389         * gtk/Makefile.am: Add above new files.
3390         
3391         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
3392         instead of <strings.h>.
3393
3394         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
3395         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
3396         <unistd.h> appropriately.
3397
3398         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
3399         Use ABS() (from <glib.h>) instead of abs().
3400         
3401         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
3402         of gtk (and thus glib) headers, so that WIN32 will be
3403         defined. With MS C, include <direct.h> for mkdir prototype.
3404
3405         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
3406         some casts, needed by MS C.
3407
3408         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
3409         implemented).
3410
3411         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
3412         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
3413         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
3414
3415         * gtk/gtkmain.h: Mark variables for export/import on Win32.
3416                 
3417         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
3418         the event is not a hint, or its window is not the slider. Needed
3419         on Win32, at least.
3420
3421         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
3422         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
3423         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
3424         a subdirectory of the Windows directory as gtk system
3425         configuration directory.
3426
3427         * gtk/gtkselection.c: No chunks on Win32.
3428
3429         * gtk/gtksocket.c: Not implemented on Win32.
3430
3431         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
3432
3433         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
3434
3435         * gtk/maketypes.awk: Declare variables with a macro that expands to
3436         necessary export/import magic in the case of Win32.
3437                 
3438         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
3439
3440 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
3441
3442         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
3443         since those were meant only for gdki18n.h.  
3444         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
3445         for widechar tests.
3446         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
3447
3448 1999-03-13  Tor Lillqvist  <tml@iki.fi>
3449
3450         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
3451         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
3452
3453         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
3454         installed) to CFLAGS.
3455
3456         * gdk/Makefile.am: Add rules for gdkconfig.h.
3457
3458         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
3459         APIs.
3460
3461         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
3462         gdkx.h anyway when compiling for X11.
3463         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
3464         general): Merge in Win32 version.
3465         
3466         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
3467         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
3468         expansion (if we don't have HAVE_PWD_H), allow for drive
3469         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
3470         included code from Craig Setera's port to Win32 (the one that uses
3471         X11, and the cygwin dll), even if it probably will be abandoned.
3472
3473         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
3474         the user entered one herself.  This way one can complete *.h and
3475         don't get matches on any .help files, for instance.
3476         
3477 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
3478
3479         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
3480         font hash table, if we have a GdkFontPrivate entry for this font
3481         already, simply increment its reference count, provided by Olaf Dietsche
3482         <olaf.dietsche+list.gtk@netcologne.de>.
3483
3484         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
3485         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
3486
3487 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3488
3489         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
3490         the number of calls to gdk_draw_point() (and thus to X) by
3491         clipping the points by hand.
3492
3493         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
3494         the clip parameter.
3495         (gtk_handle_box_paint): Only paint the handle if the expose area
3496         intersects it.
3497
3498 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
3499
3500         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
3501
3502 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
3503
3504         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
3505         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
3506
3507 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
3508
3509         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
3510          textmode (O_TEXT) for OS/2 version.
3511
3512 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
3513
3514         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
3515         GtkSpinButton, "input" and "output", to make the output more flexible.
3516         The user has to provide a mapping between adjustment->value and the
3517         output string (and vice versa, if the spin button is editable). 
3518         See testgtk for examples.
3519
3520 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
3521
3522         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
3523         new one.
3524         
3525         * configure.in: set gtk+ version to 1.3.0.