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