]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Point -rpath to the right install location.
[~andy/gtk] / ChangeLog.pre-2-2
1 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
2
3         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4         -rpath to the right install location.
5
6         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7         -export-dynamic.
8
9         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10         properly.
11
12 2000-11-15  Havoc Pennington  <hp@pobox.com>
13
14         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
15         patch from Mikael Hermansson to temporarily stop blinking while
16         the user is using the keyboard to type or navigate. 
17
18         Also, when blinking, stay on for longer than we stay off. Also,
19         return from start_cursor_blink if !cursor_visible, to save
20         checking that flag all over the place before we call
21         start_cursor_blink.
22
23 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
24
25         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
26         only contain a "fontset" line, which is now ignored.
27
28         * gtk/gtkentry.c (gtk_entry_button_release): Make 
29         double-click-to-select-word work.
30         
31 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
32
33         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
34         Don't move back one char when we are actually at the end of the 
35         paragraph.
36
37 2000-11-15  Robert Brady  <robert@suse.co.uk>
38
39         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
40         'o' < 'p'.
41         
42         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
43         bind_textdomain_codeset.
44
45         (gtk_init_check): Make the warning about translating default:LTR
46         sterner.
47         
48 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
49
50         * **/Makefile.am : remove unecessary rules for win32-specific
51         config-substituted targets. If you want these rules, use
52         --enable-maintainer-mode (called automatically by autogen.sh).
53         Stops a lot of unneccessary make-time warnings.
54
55         * gtk/gtktext{layout,display}.c: Factor in total width as
56         well as screen when figuring alignment for word-wrap as well as
57         no wrap; this is necessary to handle lines that cannot be wrapped
58         at all.
59
60 2000-11-15  Havoc Pennington  <hp@redhat.com>
61
62         * gtk/testtext.c: Implement essential color cycling feature
63
64 2000-11-15  Havoc Pennington  <hp@redhat.com>
65
66         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
67         when we invalidate the main window.
68
69         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
70         GtkTextView will now invalidate the side windows for us when text
71         changes.
72
73 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
74
75         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
76         unconditionally, since we may need to update the horizontal
77         scrollbars even if the height didn't change.
78
79         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
80         the extra attrs, since some of them affect size.
81
82         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
83         x_offset correctly.
84
85 2000-11-15  Havoc Pennington  <hp@redhat.com>
86
87         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
88         don't move the first line out into the margin, instead move the
89         whole paragraph in order to make space for the first line within 
90         the margin
91
92 2000-11-15  Havoc Pennington  <hp@redhat.com>
93
94         * gtk/gtktextview.c (changed_handler): offset redraw rect by
95         xoffset in addition to yoffset, so horizontal scrolling doesn't
96         break redraws
97
98 2000-11-15  Havoc Pennington  <hp@redhat.com>
99
100         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
101         from the cursor
102         (render_layout_line): fix reversed test that caused weird
103         underlines to get drawn
104
105 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
106
107         * gdk/linux-fb/gdkprivate-fb.h:
108         Fix debug macros.
109         
110 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
111
112         * gdk/linux-fb/gdkprivate-fb.h:
113         Added virtual functions set_pixel, get_color,
114         fill_span and draw_drawable to the GC.
115         Added global _gdk_fb_screen_gc to use instead of
116         NULL when drawing to the screen.
117         Added _gdk_fb_gc_calc_state() prototype.
118
119         * gdk/linux-fb/gdkgc-fb.c:
120         Call _gdk_fb_gc_calc_state() on any gc state change.
121
122         * gdk/linux-fb/gdkglobals-fb.c:
123         Add _gdk_fb_screen_gc
124                 
125         * gdk/linux-fb/gdkdrawable-fb2.c:
126         _gdk_fb_gc_calc_state() calculates best functions
127         for the GC state and depth.
128         Moved bpp specialized code to separate functions.
129         Added optimized 24 bpp AA draw_drawable.
130
131         * gdk/linux-fb/gdkevents-fb.c:
132         Silence gcc warning.
133
134         * gdk/linux-fb/gdkimage-fb.c:
135         Use _gdk_fb_screen_gc
136
137         * gdk/linux-fb/gdkwindow-fb.c:
138         Init and use _gdk_fb_screen_gc
139
140         * gdk/linux-fb/mitypes.h:
141         Remove unused types.
142
143 2000-11-14  Havoc Pennington  <hp@pobox.com>
144
145         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
146         to pixels
147
148 2000-11-14  Havoc Pennington  <hp@pobox.com>
149
150         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
151
152         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
153         unknown char, no real reason we were using a variable. 
154         Remove gtk_text_unknown_char variable. Fix all the text widget
155         files accordingly.
156
157         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
158         since the Unicode spec seems to prefer that character for our
159         purposes.
160
161 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
162
163         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
164         value of g_getenv() isn't freeable, so g_strdup it.
165
166         * modules/input/inuktitut.c: Inuktitut input method.
167
168         * modules/input/Makefile.am: Build this.
169         
170 2000-11-14  Elliot Lee  <sopwith@redhat.com>
171
172         * gtk/Makefile.am: Install gtk.immodules, needed for operation
173         of gtk programs.
174
175 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
176
177         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
178         reversed > that was causing Home to go to end of previous line.
179
180         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
181         modified-keypresses (leave for bindings.)
182
183         * modules/input/Makefile.am: Remove useless -export-dynamic
184         from module LDFLAGS.
185
186 2000-11-14  Havoc Pennington  <hp@redhat.com>
187
188         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
189         higher.
190
191         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
192         account. Also, render rise, underline, background, etc. for
193         pixbufs as well as text. Also, draw underlines one pixel higher.
194
195         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
196         PangoAttribute for the rise, so it gets drawn properly. Also,
197         add the GtkTextAppearance attribute for pixbuf/widget segments
198         as well; we should go ahead and have rise, underline, background,
199         stipple work for those
200
201         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
202         Pango
203
204 2000-11-15  Tor Lillqvist  <tml@iki.fi>
205
206         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
207
208         * gtk/gtk.def: Update.
209
210         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
211         included.
212         (gtk_rc_get_im_module_file): Use run-time installation directory
213         on Win32.
214
215         * gdk/win32/rc/gdk.rc: Remove.
216         * gdk/win32/rc/gdk.rc.in: New file.
217         * gdk/win32/rc/Makefile.am: New file
218         * gdk/win32/Makefile.am: Corresponding changes.
219
220         * gtk/gtk.rc: Remove.
221         * gtk/gtk-win32.rc.in: New file.
222         * gtk/Makefile.am: Corresponding changes.
223
224         * configure.in: Corresponding changes.
225
226         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
227         has a built gtkcompat.h. Developers using CVS code on Win32 can
228         hand-edit it from gtkcompat.h.in.
229
230         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
231         gtkcompat.h from gtkcompat.h.win32.
232
233 2000-11-14  Havoc Pennington  <hp@redhat.com>
234
235         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
236         to default to GDK_ACTION_MOVE if the drag is within a single
237         widget. Defaults to GDK_ACTION_COPY between widgets.
238
239 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
240
241         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
242
243         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
244
245         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
246         srcdir != builddir
247
248         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
249
250         * configure.in (GTK_VERSION): Up to 1.3.2
251
252         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
253         gtkimcontextxim.h
254
255         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
256         missing doc comment.
257
258 2000-11-14  Alexander Larsson  <alexl@redhat.com>
259
260         * modules/linux-fb/basic.c:
261         Use the glib iconv wrappers.
262
263 2000-11-13  Havoc Pennington  <hp@pobox.com>
264
265         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
266         still more bugs.
267
268         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
269         scroll the GdkWindows before realization.
270
271 2000-11-13  Havoc Pennington  <hp@redhat.com>
272
273         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
274         where GC didn't always get updated properly
275
276         * demos/gtk-demo/textview.c (create_tags): Use subattributes
277         of fonts instead of setting the entire font
278
279         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
280         setting entire font
281
282         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
283
284         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
285         a bunch of individually-settable font attributes. You can still 
286         use the "font" and "font_desc" args, they just set all the font
287         attributes at once.
288
289 2000-11-13 Elliot Lee <sopwith@redhat.com>
290
291         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
292
293 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
294
295         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
296         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
297
298         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
299         work better.
300
301 2000-11-13  Havoc Pennington  <hp@redhat.com>
302
303         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
304         the module file.
305
306         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
307         dest->language
308
309         * gtk/testtext.c: Test pixels above/below/inside paragraphs
310         settings
311
312         * gtk/gtktextview.c: Implement object args and setters/getters for
313         all the aspects of the GtkTextAttributes that are not set from
314         GtkWidget attributes. This is spacing, justification, margins,
315         etc.
316
317         (gtk_text_view_set_arg)
318         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
319         args
320         (gtk_text_view_class_init): Add args for justify, left_margin,
321         right_margin, indent, and tabs
322         
323
324         * gtk/gtktextlayout.c (set_para_values): fix to display indent
325         attribute properly
326
327         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
328         replace with indent attribute
329
330         * gtk/gtktextlayout.c (set_para_values): multiply indent by
331         PANGO_SCALE
332
333         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
334         rearranging code to do that
335         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
336         i.e. don't subtract the top_margin first, just to keep
337         all margin-futzing in one place.
338
339         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
340
341         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
342         special case of last line, Pango now handles this itself.
343         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
344         Y coordinate
345         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
346         (find_display_line_above): wasn't moving the byte index as it
347         iterated over lines, so always returned byte 0. Also, port to use
348         PangoLayoutIter.
349         (find_display_line_below): same problem as
350         find_display_line_above. Also, port to use PangoLayoutIter.
351
352 2000-11-13  Alexander Larsson  <alexl@redhat.com>
353
354         * gdk/linux-fb/*.[ch]:
355         Massive reindent to gtk+ standard. My hands hurt.
356
357         * gdk/linux-fb/gdkcolor-fb.c:
358         Move GdkColorPrivateFB from inherited to windowing_data
359
360         * gdk/linux-fb/gdkcursor-fb.c:
361         _gdk_cursor_new_from_pixmap made static
362
363         * gdk/linux-fb/gdkdnd-fb.c:
364         GdkDragContextPrivate moved to windowing_data
365
366         * gdk/linux-fb/gdkdrawable-fb2.c:
367         Removed endian.h, use glib endianness macros instead
368         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
369         and GDK_DRAWABLE_IMPL_FBDATA
370
371         * gdk/linux-fb/gdkfont-fb.c:
372         Add empty gdk_font_load(). Needed for linking of Gtk+.
373
374         * gdk/linux-fb/gdkimage-fb.c:
375         Removed endian.h, use glib endianness macros instead
376         Moved GdkImagePrivateFB to windowing_data
377         gdk_image_new_bitmap didn't always allocate enough
378         memory.
379
380         * gdk/linux-fb/gdkinput-ps2.c:
381         Added semi-working support for MS serial mice.
382
383         * gdk/linux-fb/gdkprivate-fb.h:
384         s/GdkWindowPrivate/GdkWindowObject/
385         Removed GdkWindowPrivate typedef
386         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
387         Removed GDK_DRAWABLE_P
388         Move GdkColorPrivateFB from inherited to windowing_data
389         Moved GdkImagePrivateFB to windowing_data
390
391         * gdk/linux-fb/gdkvisual-fb.c:
392         Removed some unused debug code.
393
394         * gdk/linux-fb/gdkwindow-fb.c:
395         Use stock cursors instead of including X headers.
396         s/GdkWindowPrivate/GdkWindowObject/
397
398         * gdk/linux-fb/mitypes.h:
399         Removed unused types.
400
401         * modules/linux-fb/basic.c:
402         Use the pango fribidi wrappers.
403
404 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
405
406         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
407         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
408         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
409         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
410         GEqualFunc where applicable.
411         
412         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
413         pango_font_description_equal as changed in pango.
414         
415         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
416
417         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
418
419         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
420
421         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
422
423         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
424
425         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
426
427         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
428         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
429
430         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
431         gtk_rc_styles_compare -> gtk_rc_styles_equal.
432
433 2000-11-12  Havoc Pennington  <hp@pobox.com>
434
435         * demos/gtk-demo/Makefile.am (democodedir): change demo install
436         dir to datadir/gtk+-2.0/demo
437
438         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
439         sorts of text widget and Pango font bugs. Urgh.
440
441         * demos/gtk-demo/Makefile.am (demos): Add textview.c
442
443         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
444         tree that you should double click to see the demo. Fix 
445         types of variables to reflect changed return values from 
446         GtkTreeStore and GtkTreeViewColumn constructors.
447
448         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
449         newly-created buffer to prepare for GObject semantics
450
451         * gtk/testtext.c: don't leak the buffer with GObject semantics
452
453         * gtk/testtextbuffer.c: ditto
454         
455 2000-11-12  Havoc Pennington  <hp@pobox.com>
456
457         Rename this testgtk to gtk-demo to avoid confusion, and 
458         install it so people can use it as a supplement to 
459         the documentation.
460         
461         * demos/gtk-demo: Moved from demos/testgtk
462
463         * demos/testgtk: Removed
464
465         * configure.in: make Makefile in gtk-demo
466         
467         * demos/gtk-demo/Makefile.am: Install sample source to 
468         datadir/gtk-demo (maybe there's a better place?), and 
469         rename the binary to gtk-demo
470         
471         * demos/gtk-demo/main.c (load_file): Load installed sample
472         source if source isn't found in pwd.
473
474 2000-11-09  Havoc Pennington  <hp@pobox.com>
475
476         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
477         argument to set the char displayed when visibility == FALSE
478         (gtk_entry_create_layout): If !entry->visible, replace 
479         all chars with the "invisible char"
480
481         * gtk/testgtk.c: Test the invisible_char deal
482         
483 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
484
485         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
486         can't get a native font in the right encoding.
487
488 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
489
490         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
491         respectively.
492
493 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
494
495         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
496         Fix warning when moving between paragraphs.
497
498         * gtk/gtkentry.[ch]: Change move => move_cursor, 
499         delete => delete_from_cursor, insert => insert_at_cursor
500
501 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
502
503         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
504
505         * modules/input/imthai-broken.c: A Thai input method for use if
506         Thai keys are really generating Latin1 keysyms.
507
508         * modules/input/Makefile.am: Build these.
509
510 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
511
512         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
513         g_filename_{to,from}_utf8 now takes an extra parameter.
514
515         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
516         strftime into UTF-8.
517
518         (column_from_x, gtk_calendar_paint_day_names): Support RTL
519         calendars.
520
521         (gtk_calendar_paint_day_names): Draw day names in the right 
522         place.
523         
524 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
525
526         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
527         problem with using result of g_get_charset() backwards -
528         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
529
530         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
531         negative min_width/height and max_width/height to
532         mean "requisition"; this allows setting a window
533         to be user-resizable in only one direction easily.
534
535         * gtk/testgtk.c (create_main_window): Remove hard-coded
536         usize - set a default size in the vertical direction.
537
538 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
539
540         * gtk/gtkrange.c: Add some missing casts. Support 
541         2 and 3 button clicks on the arrows to mean 
542         "move by pages" and "jump to end". (Like gtkspinbutton)
543
544 2000-11-12 Hans Breuer <Hans@Breuer.Org>
545
546         * gdk/win32/makefile.msc : reflect build module changes
547
548         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
549         from GdkPixmap*, cast implementation member instead.
550
551         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
552         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
553         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
554         more Gdi functions return value checking. 
555         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
556         GdkImagePrivateWin32 *.
557
558         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
559         menus useable again. Add #pragma message to keep reminded on this issue.
560         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
561         windows. This allows to enable backing store on Win32!
562
563         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
564         in drawable is of impl type. Correct specific type checks appropriate.
565  
566         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
567         GDK_WINDOW_DESTROYED before allocating new resources.
568
569         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
570
571         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
572         (gdk_window_foreign_new) initialize parent handle.
573         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
574
575         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
576         Let the GDI invalidate the window on MoveWindow call to fix scrolling
577         problems (e.g. main buttons in testgtk). 
578
579 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
580
581         * gtk/gtkentry.c (gtk_entry_key_press): Call 
582         gtk_widget_activate for GDK_Return.
583
584         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
585         of preedit cursor position.
586
587 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
588
589         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
590         static.
591
592 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
593
594         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
595         out support for multiple locales; that simple doesn't
596         work reliably with current Xlib
597
598         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
599         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
600         Add support for positioning the cursor within the preedit string.
601
602 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
603
604         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
605         at XIM input method module.
606
607         * gtk/gtktextview.c: Check for bindings after passing
608         events to im context filter.
609
610 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
611
612         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
613         empty attribute lists properly.
614
615 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
616
617         * gtk/queryimmodules.c (main): Return non-zero exit
618         status if errors were encountered querying any
619         modules.
620
621         * modules/input/Makefile.am (moduledir): remove
622         leftover bin program target.
623
624         * docs/make-todo: Fix typo in error message.
625
626 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
627
628         * configure.in: Add modules/input/Makefile
629
630 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
631
632         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
633         don't include gtkthemes.h.
634
635         * gtk/testgtk.c gtk/testtext.c: Set environment variables
636         to point
637
638         * gtk/Makefile.am: Add new .c and .h files, build 
639         gtk-query-immodules and use it to create a gtk.immodules
640         file for use of test programs.
641
642         * gtk/gtkpreview.c: remove extra blank line.
643
644 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
645
646         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
647         Add the ability to add extra tables beyond the default
648         one, and also the ability to have compose sequences 
649         that are prefixes of other compose sequences. 
650
651         * gtk/gtkimcontextsimple.c: Export a preedit string which
652         consists of possible candidates for keystrokes that have
653         been entered but not yet committed.
654
655         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
656         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
657
658         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
659         Add a function to add input-method switching menu items
660         to a menu.
661
662         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
663         when switching input methods.
664
665         * gtk/gtkimcontextsimple.[ch]: Change the format of
666         the compose table to allow compose tables of different
667         lengths / sequence.
668
669 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
670
671         * gtk/gtkimmodule.[ch]: Support routines for loading
672         GtkIMContext implementations dynamically at runtime.
673
674         * modules/input/imcyrillic-translit.c: A sample input
675         method (based on GtkIMContextSimple with an extra table),
676         which demonstrates preedit strings and the module
677         system for input modules
678
679         * gtk/queryimmodules.c: Program to query the available
680         input modules and write the results into a file.
681          
682         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
683         extra config options "im_module_file" (cache file for
684         input method modules), and "im_module_path" - path
685         to look for modules when generating cache file.
686
687         This doesn't scale.
688
689 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
690
691         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
692         generic code from gtkthemes into a new abstraction
693         GtkModule which has the logic for implementing
694         a loadable module which implements a number of 
695         GObject types.
696
697 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
698
699         * gtk/gtkeditable.[ch]: Convert GtkEditable from
700         a class into an interface  
701         
702         * gtk/gtkoldeditable.[ch]: Move the old editable
703         implementation into here, so legacy widgets can
704         still rely on the implemenation. GtkOldEditable
705         exports GtkEditable. Make selection handling
706         code use new text conversion functions (and
707         handle UTF-8 as a side-effect). Use GtkClipboard
708         for CLIPBOARD.
709
710         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
711         Adopt to match above changes.
712
713         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
714         avoid GtkOldEditable implementation. Restructure
715         to reduce number of places that modify state directly.
716         Move to GtkBindingSet. Display the preedit string.
717         Queue recomputation of PangoLayout and scroll position
718         to improve effiency of doing complex changes naively.
719         Add a menu with cut/copy/paste and input method selection.
720
721 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
722
723         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
724         to set preedit string and attributes; display preedit string by
725         inserting string and attributes at cursor when creating the
726         GtkTextLineDisplay.
727
728         * gtk/gtktextlayout.c: Move all conversions between byte
729         positions in PangoLayout and GtkTextIter into new functions
730         line_display_iter_to_index/index_to_iter that properly
731         handle the preedit string.
732
733         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
734         it to return const char * (eventually will end up
735         as GCONST char *, most likely.)
736
737         * gtk/gtktextview.[ch]: Handle the preedit string, call
738         gtk_im_context_reset() as necessary, add a menu to switch
739         input methods.
740         
741         * gtk/gtktextlayout.[ch]: Remove useless
742         gtk_text_layout_get_log_attrs() function.
743
744 2000-11-11  Tor Lillqvist  <tml@iki.fi>
745
746         * gdk/gdk.def
747         * gtk/gtk.def: Update.
748
749         * gdk/win32/*.c: Add last argument to g_type_register_static()
750         calls.
751
752         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
753
754         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
755         generated by older wheel mouse drivers. Get the correct y
756         coordinate from WM_MOUSEWHEEL messages.
757
758         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
759         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
760         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
761         Debugging functions.
762
763         * gdk/win32/gdkprivate-win32.h: Declare them.
764
765         * gdk/win32/gdkinput-win32.h: Add declaration for
766         gdk_input_window_destroy().
767
768         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
769
770 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
771
772         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
773         function to help handle keeping things in sync.
774
775 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
776
777         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
778         BOXED marshallers.
779
780         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
781         (gtk_list_store_class_init): use the new BOXED marshallers.
782
783         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
784         new_with_values to new_with_types.
785         (gtk_tree_store_get_column_type): add this.
786         (gtk_tree_store_class_init): use the new BOXED marshallers.
787
788         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
789         mirror some POINTER marshallers.
790
791 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
792
793         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
794         allow more interesting iterators.  Also, made the lifecycle of
795         iterators more explicit.
796
797         * gtk/gtktreemodelsort.[ch]: New model for sorting.
798
799         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
800         types.
801
802 2000-11-09  Alexander Larsson  <alexl@redhat.com>
803
804         * demos/testgtk/menus.c:
805         Changes to make the new testgtk compile after
806         gtk_menu_append was removed.
807
808         * gdk/linux-fb/gdkdrawable-fb2.c
809         (gdk_fb_get_depth, gdk_fb_get_visual,
810         gdk_drawable_impl_fb_class_init): Implement
811         these drawable functions. Now GtkImages work again.
812
813         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
814
815         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
816         
817         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
818         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
819         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
820         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
821
822 2000-11-08  Havoc Pennington  <hp@pobox.com>
823
824         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
825         visible_set args, don't know where these had gone, I thought they
826         used to be there
827
828         * gtk/testtext.c: Add a menu item to apply invisibility tag;
829         now we can test the feature and see that it's totally broken.
830
831 2000-11-08  Havoc Pennington  <hp@pobox.com>
832
833         Make DND copy pixbufs and tags when source and target share a 
834         tag table.
835         
836         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
837         in-process GTK_TEXT_BUFFER_CONTENTS target
838         (gtk_text_view_drag_data_received): Paste from
839         GTK_TEXT_BUFFER_CONTENTS if we receive it.
840
841 2000-11-08  Alexander Larsson  <alexl@redhat.com>
842
843         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
844         API changes.
845
846         * gtk/gtkmenu.c: Add support for scrolling menus.
847         Remove gtk_menu_append/prepend/insert, these have been moved to
848         gtkcompat.h as #defines.
849
850         * gtk/gtkcompat.h.in:
851         Add compatibility #defines for gtk_menu_append/prepend/insert
852
853         * gtk/gtkmenu.h: Add data needed for scrolling menus.
854         GtkMenuPositionFunc gets an extra argument push_in.
855         gtk_menu_append/prepend/insert removed.
856         
857         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
858         positioning behaviour to fit to scrolling menus.
859
860         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
861         into menuitem->submeny. That is wrong, and broke torn
862         off submenus of torn off menus, since they were unrealized
863         when the first menu was unrealized.
864
865         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
866         gtk_menu_shell_select_item() since these need to be overridden in
867         GtkMenu.
868
869         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
870         positioning behaviour to fit to scrolling menus.
871         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
872         the current item so that it is prelighted when the menu pops up.
873         This is a workaround to the fact that the menu doesn't get the
874         initial enter event (due to grabs).
875
876         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
877         s/gtk_menu_append/gtk_menu_shell_append/
878
879         * gtk/gtknotebook.c:
880         s/gtk_menu_insert/gtk_menu_shell_insert/
881
882         * gtk/testgtk.c (create_menu, create_menus):
883         Create the first menu with 50 items so that menu scrolling
884         can be tested.
885         
886         
887         Patch from Jonathan Blandford  <jrb@redhat.com>
888
889         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
890         system to handle size requests.  First, we ask what the size of
891         the toggle is.  Then, when allocating the size, we allocate the
892         toggle_size first.  This way we can have multiple menu-item
893         classes w/o needing a seperate class for each.
894
895         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
896         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
897
898         * gtk/gtkcheckmenuitem.c
899         (gtk_check_menu_item_toggle_size_request): New function to handle
900         the toggle size-request.
901
902 2000-11-07  Havoc Pennington  <hp@redhat.com>
903
904         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
905         Half-ass somewhat fix this function, so that scrolling to the
906         insertion point works. Pango hacking is in the future to really
907         fix it.
908
909         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
910         length of data, no longer used.
911
912         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
913         method contents in here, get rid of destroy method
914         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
915         that were backward. Remove debug spew.
916         (cut_or_copy): Make the clipboard work with insert_range to
917         preserve tags and pixbufs, not just the primary selection.
918
919 2000-11-07  Havoc Pennington  <hp@redhat.com>
920
921         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
922         to gtk_text_mark_get_visible
923
924         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
925         bug that was generating an invalid iterator
926
927         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
928         ensure_char_offsets() in front of code placing the iter in an
929         invalid state.
930
931         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
932         make override_location arg const
933         (paste): Replace the selection if we paste into the 
934         current selection
935
936         * gtk/gtkselection.h: Remove "GtkSelectioData"
937         (struct _GtkSelectionData): move the definition here.
938
939         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
940         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
941
942         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
943
944         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
945         (gtk_text_buffer_insert_range_interactive): implement
946         (gtk_text_buffer_get_tags): Remove, replaced by
947         gtk_text_iter_get_tags()
948
949         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
950         limit parameter, to avoid infinite linear scan.
951         (gtk_text_iter_backward_search): Add search limit
952         (gtk_text_iter_forward_find_char): Add search limit
953         (gtk_text_iter_backward_find_char): Add search limit
954
955 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
956
957         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
958         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
959         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
960         gdk/linux-fb/gdkwindow-fb.c:
961         use g_object_new() instead of g_type_create_instance() which
962         is a private function for fundamental type implementations.
963
964         * gdk/linux-fb/gdkinput-ps2.c:
965         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
966         instead just store the current modifier state. Add a (somewhat broken)
967         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
968         Rename exported function gdk_input_ps2_get_mouseinfo to
969         gdk_input_get_mouseinfo.
970
971         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
972         gdk/linux-fb/gdkwindow-fb.c:
973         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
974         
975
976 2000-11-02  Havoc Pennington  <hp@redhat.com>
977
978         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
979         use stock buttons. Should be 100% source compatible, appropriate
980         filesel fields now point to dialog->vbox and dialog->action_area.
981         On the bizarre side, dialog->action_area and filesel->action_area
982         are not the same widget.
983         (gtk_file_selection_init): Put some padding around the selection
984         entry, so it isn't touching the GtkDialog separator.    
985
986         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
987         use stock buttons, etc. Should also be source compatible.
988         Set the dialog default title in _init not _new().
989         
990         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
991         Use stock buttons; don't put a button box inside the existing
992         dialog button box. Don't bother with push/pop colormap anymore.
993
994         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
995         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
996         for message dialog, and necessary for the font selection and color
997         selection with help and apply buttons.
998         
999         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
1000         to the created button widget. Set GTK_CAN_DEFAULT on the button.
1001         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
1002         between buttons, put less padding around the action area.
1003         (gtk_dialog_run): Exit on unmap rather than on destroy. 
1004         This will also exit the loop if the widget is hidden.
1005         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
1006         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
1007         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
1008         special-case delete event.
1009
1010         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
1011         formatting
1012         
1013 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
1014
1015         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
1016         button to temporarily disable position recording in the
1017         "saved position" test.
1018
1019 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
1020
1021         * gtk/gtkthemes.c: added compat code that temporarily implements
1022         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
1023         going to be revamped by owen's upcoming GtkModule patches, but
1024         untill then people want gtk to build, right? ;)
1025
1026 2000-11-04  Havoc Pennington  <hp@pobox.com>
1027
1028         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
1029         list
1030
1031         * docs/Changes-2.0.txt: Add note about
1032         gtk_container_get_toplevels()
1033
1034         * gtk/gtktextview.h: formatting
1035         
1036         * gtk/gtktextview.c: don't start descriptions with "Returns",
1037         confuses gtk-doc
1038
1039 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
1040
1041         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
1042         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
1043
1044 2000-11-03  Havoc Pennington  <hp@redhat.com>
1045
1046         * gtk/gtktexttagtable.c: Docs
1047         (gtk_text_tag_table_size): return a signed int
1048
1049         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
1050         (gtk_text_tag_event): make the event_object a GObject
1051
1052         * gtk/gtktextview.c: Write API docs for all functions.
1053
1054         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
1055         for gtk_text_view_get_window_type() called on one of the private
1056         windows.
1057
1058         * gtk/gtktextview.c: Instead of accessing text_view->buffer
1059         directly, call get_buffer() which demand-creates a default
1060         buffer. So gtk_text_view_new() can be used to create a view with a
1061         default buffer in it, if you just want an empty text box users can
1062         put data in. Useful for GUI builders also.
1063
1064 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
1065
1066         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
1067         the charset encodign portion MUST be in lowercase.
1068         * gtk/gtkrc.az: added file for Azeri language
1069
1070 2000-11-03  Havoc Pennington  <hp@redhat.com>
1071
1072         Get widgets working on the btree/buffer side. Display of them 
1073         still doesn't work.
1074         
1075         * gtk/gtktextview.c: start implementing child widget stuff
1076
1077         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
1078
1079         * gtk/gtktextlayout.c: handle embedded widgets
1080
1081         * gtk/gtktextdisplay.c: handle embedded widgets
1082
1083         * gtk/gtktextchild.c: Implement all the child anchor goo
1084
1085         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
1086         function
1087
1088         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
1089         (insert_pixbuf_or_widget_segment): abstract out common portions of 
1090         creating a child anchor or a pixbuf segment.
1091         (gtk_text_btree_create_child_anchor): new function
1092         (gtk_text_btree_unregister_child_anchor): new function
1093
1094         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
1095         allocate_child signal on GtkTextLayout
1096
1097         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
1098         values
1099         (gtk_text_iter_get_child_anchor): new function
1100
1101         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
1102         default handler for the changed signal, which calls
1103         gtk_text_buffer_set_modified(), instead of just always emitting
1104         changed then calling set_modified() manually. I guess this is
1105         maybe more flexible. It seems logical.
1106
1107 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
1108
1109         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
1110         now.
1111
1112         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
1113
1114 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
1115
1116         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
1117         been marked static.
1118
1119 2000-11-02  Havoc Pennington  <hp@redhat.com>
1120
1121         * gtk/testgtk.c (create_labels): had a test backward
1122
1123         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
1124         fields, so the dest GC ends up with the correct clip origin, 
1125         etc. Fixes a bug where colored labels didn't redraw 
1126         properly.
1127
1128 2000-11-02  Alexander Larsson  <alexl@redhat.com>
1129
1130         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
1131         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
1132         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
1133         Add last argument to t_type_register_static call.
1134         
1135         * gdk/linux-fb/gdkdrawable-fb2.c:
1136         Add last argument to t_type_register_static call.
1137         export the get_image drawable virtual function.
1138
1139         * gdk/linux-fb/gdkimage-fb.c:
1140         Add last argument to t_type_register_static call.
1141         rename gtk_image_get to _gdk_fb_get_image and
1142         export it for use by gdkdrawable-fb2.
1143
1144         * gdk/linux-fb/gdkprivate-fb.h:
1145         export _gdk_fb_get_image.
1146
1147         * gdk/linux-fb/gdkselection-fb.c:
1148         Add new api call stubs.
1149
1150         * gtk/Makefile.am:
1151         Missing ( in linux-fb part.
1152
1153         * modules/linux-fb/Makefile.am:
1154         Must link with gdk_pixbuf or get unresolved symbol.
1155
1156 2000-11-01  Havoc Pennington  <hp@pobox.com>
1157
1158         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
1159         GTK_TYPE_TEXT_ITER and BOXED marshallers
1160
1161         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
1162
1163         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
1164         
1165         * gtk/gtk-boxed.defs: add GtkTextIter
1166
1167         * gtk/gtkmarshal.list: Add marshallers for text widget that 
1168         properly use OBJECT and BOXED
1169
1170 2000-11-01  Havoc Pennington  <hp@redhat.com>
1171
1172         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
1173
1174         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
1175         before returning it. 
1176         
1177 2000-11-01  Havoc Pennington  <hp@redhat.com>
1178
1179         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1180         Clip the rectangle to be rendered to the drawable, since
1181         get_from_drawable() requires a region within the drawable
1182
1183 2000-11-01  Havoc Pennington  <hp@redhat.com>
1184
1185         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
1186         from coordinates.
1187
1188 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
1189
1190         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
1191         it isn't NULL.
1192
1193 2000-11-01  Havoc Pennington  <hp@pobox.com>
1194
1195         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
1196         on a label
1197         (gtk_label_finalize): unref the attr list if any.
1198
1199         * gtk/testgtk.c (create_get_image): close test on second click
1200         (make_message_dialog): close dialog if it exists
1201
1202         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
1203
1204         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
1205         gdk-pixbuf
1206
1207         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
1208         from Pango markup format
1209         (gtk_label_set_markup_with_accel): ditto but with accelerator
1210         parsing
1211
1212         * gtk/gtkimage.c (gtk_image_expose): reformatting.
1213
1214         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
1215         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
1216         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
1217         call gdk_window_get_origin().
1218
1219         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1220         implement GDK_PIXBUF_ALPHA_FULL
1221         
1222 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
1223
1224         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
1225         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
1226         g_signal_handlers_disconnect_matched to block/unblock and disconnect
1227         multiple handlers respectively, instead of only treating the
1228         first handler found (bug reported by owen).
1229
1230 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
1231
1232         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
1233
1234         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
1235
1236         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
1237         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
1238         gtk/gtktreeviewcolumn.h: Fixed inline docs.
1239
1240         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
1241         widget.  Needs writing someday.
1242
1243         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
1244         the docs.
1245
1246 2000-10-30  Havoc Pennington  <hp@redhat.com>
1247
1248         * gtk/gtktextview.h, gtk/gtktextview.c:
1249         Rename delete_at_cursor delete_from_cursor, and 
1250         move to move_cursor.
1251
1252 2000-10-30  Havoc Pennington  <hp@redhat.com>
1253
1254         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
1255         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
1256         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
1257         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
1258         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
1259         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
1260         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
1261         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
1262         gtktexttypes.h, gtktextview.c, gtktextview.h:
1263
1264         Massive reindentation and reformatting. Arg alignment and comments
1265         still need fixing in various places.
1266
1267 2000-10-30  Havoc Pennington  <hp@redhat.com>
1268
1269         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
1270         to be named insert_at_cursor and delete_at_cursor so C++ can
1271         handle them.
1272
1273 2000-10-28  Tor Lillqvist  <tml@iki.fi>
1274
1275         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
1276         to get a double directory separator in case the home directory
1277         ends with one. This would cause trouble especially on Windows,
1278         where the path will be confused with the syntax for an an UNC
1279         (network share) path \\server\share\path.
1280         (gtk_rc_add_initial_default_files): Ditto.
1281
1282 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
1283
1284         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
1285
1286         * gtk/gtktextview.c: Use correct marshallers.
1287
1288 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
1289
1290         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
1291         use new iter stuff, and added all the appropriate signals et al.
1292
1293         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
1294         code is internal to gtk only.
1295
1296 2000-10-28  Tor Lillqvist  <tml@iki.fi>
1297
1298         * gtk/gtk.def
1299         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
1300         glib-genmarshal etc.
1301
1302 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
1303
1304         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
1305         parallel builds.
1306
1307 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
1308
1309         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
1310
1311 2000-10-27  Robert Brady  <robert@suse.co.uk>
1312
1313         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
1314         en_GB (British), ia (Interlingua).
1315
1316 2000-10-26  Havoc Pennington  <hp@redhat.com>
1317
1318         * gtk/gtktextiter.c (my_strrstr): fix constness warning
1319
1320         Fixed output of:
1321         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
1322         
1323         * gtk/gtktextsegment.c (char_segment_new): rename
1324         (_char_segment_new_from_two_strings): rename
1325         (_toggle_segment_new): rename
1326         
1327         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
1328         (make_clipboard_widget): make it static
1329         (text_get_func): static
1330         (text_clear_func): static
1331
1332         * gtk/gtkcolorsel.c (adjustment_changed): make this function
1333         static
1334         (hex_changed): make it static
1335         (hsv_changed): make it static
1336         (opacity_entry_changed): make it static
1337
1338         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
1339         (toggle_segment_check_func): rename with _gtk
1340
1341         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
1342         (_widget_segment_new): rename
1343         (_widget_segment_add): rename
1344         (_widget_segment_remove): rename
1345         (_widget_segment_ref): rename
1346         (_widget_segment_unref): rename
1347
1348         * gtk/gtktextmark.c (_mark_segment_new): Rename
1349         _gtk_mark_segment_new   
1350
1351 2000-10-26  Havoc Pennington  <hp@redhat.com>
1352
1353         * gtk/gtkmarshal.list: add new marshallers used by the text widget
1354         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
1355         types
1356
1357         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
1358         marshaller types
1359
1360         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
1361         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
1362         license on these files.
1363
1364         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
1365         work.
1366
1367         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
1368         runtime random number different for each tree, instead of 
1369         a constant I made up.
1370
1371 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
1372
1373         * gtk/Makefile.am: buncha cleanups, kludged build sources
1374         dependencies with a Makefile: oldest-source-stamp dependancy
1375         for the moment. automake is really fighting us here, with
1376         intentionally not allowing user-defined rules or dependancies
1377         prior to it's -include $(DEP_FILES) statement. sucks rocks!
1378
1379         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
1380         to public headers. tehy have a comment stating that they are
1381         "semi-public" aren't included by gtk.h and if enums popup there,
1382         they can be /*< skip >*/-ed.
1383
1384         * gtk/gtktextlayout.h: 
1385         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
1386         added LGPL... <SIGH>
1387
1388 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
1389
1390         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
1391         GtkTreeIter.  Added iterators everywhere.
1392
1393         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
1394
1395         * gtk/gtktreeviewselection.c: Changed to use the iterators.
1396
1397         * gtk/gtktreestore.c: Changed to use the iterators.
1398
1399         * gtk/gtkliststore.c: Commented out the code.  Will convert to
1400         iterators tomorrow.
1401
1402         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
1403         iterators tomorrow.
1404
1405         * gtk/treestoretest.c: Changed to use iterators.
1406
1407         * demos/testgtk/main.c: Moved to use the new iterator system.
1408
1409 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
1410
1411         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
1412         localization misbehaviour.
1413
1414         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
1415         a useless type without copy/free.
1416
1417         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
1418         of GTK_TYPE_CTREE_NODE.
1419
1420 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
1421
1422         * gtk/gtksignal.c:
1423         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
1424         applicable.
1425
1426         * gtk/gtk-boxed.defs (GtkSelectionData): specify
1427         gtk_selection_data_copy and gtk_selection_data_free
1428         do GtkSelectionData work as params in signals.
1429
1430 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
1431
1432         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
1433         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
1434         couldn't they at least give it a non-standard name?
1435         
1436         * gtk/gtktextlayout.c: arg! yet another implementation of
1437         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
1438
1439         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
1440         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
1441         home. now i know this _is_ a conspiracy.
1442
1443         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
1444         ::state-changed.
1445
1446         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
1447         (gtk_accel_group_create_add): marshaller signature fixups.
1448
1449         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
1450         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
1451
1452         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
1453         anymore.
1454
1455 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
1456
1457         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
1458         due to the signal system changes, it wouldn't build currently. to
1459         be fixed soon.
1460
1461         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
1462
1463         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
1464         so it needs gtk_marshal_VOID__ENUM() instead of
1465         gtk_marshal_NONE__UINT().
1466
1467         * gdk/gdk*.c: adapted type registration functions.
1468
1469         * gtk/gtkbindings.c:
1470         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
1471         gone.
1472
1473         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
1474
1475         * gtk/gtkobject.c:
1476         (gtk_object_destroy):
1477         (gtk_object_shutdown): fixed recursion guards. basically we have to
1478         catch the case where any of GObject.shutdown() or gtk_object_destroy()
1479         is called during ::destroy, and avoid recursion there.
1480
1481         * gtk/gtktypeutils.c:
1482         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
1483         boxed_copy/boxed_free. this needs a more general solution based on a
1484         publically installed code-generator utility.
1485
1486         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
1487         glib's gobject has support for that now.
1488         define GtkSignalMarshaller in terms of GSignalCMarshaller.
1489
1490 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
1491
1492         * gtk/gtksignal.[hc]:
1493         * gtk/gtkmarshal.[hc]:
1494         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
1495         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
1496         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
1497         care of that.
1498
1499         * *.c: marshaller name fixups.
1500
1501         * gtk/gtkmarshal.list: added a comment briefing the format.
1502
1503 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
1504
1505         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
1506         compatibility macros here now. more specifically, most of
1507         the API is preserved (yes, _most_, nonwithstanding the
1508         following exceptions listed, the API is stil lHUGE ;)
1509         things that got removed completely:
1510         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
1511         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
1512         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
1513         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
1514         gtk_signal_remove_emission_hook().
1515         non-functional functions variants:
1516         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
1517         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
1518         not supported anymore.
1519         (gtk_signal_compat_matched): new internal function to aid
1520         implementation of the compatibility macros, it  provides
1521         functionality to block/unblock/disconnect handlers based
1522         on func/data.
1523
1524         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
1525
1526         * *.c: adaptions to new type registration API signatures.
1527
1528 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
1529
1530         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
1531
1532 2000-10-25  Robert Brady  <robert@suse.co.uk>
1533
1534         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
1535         gdk_property_delete): If window == NULL, assume the root window.
1536         (restoring the behaviour that was in 1.2).
1537         
1538         * gtk/testtext.c (save_buffer): Allow creation of new files when
1539         saving.
1540
1541         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
1542         calls to read().
1543
1544 2000-10-25  Tor Lillqvist  <tml@iki.fi>
1545
1546         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
1547
1548         * gdk/win32/gdkdrawable-win32.c
1549         * gdk/win32/gdkimage-win32.c
1550         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
1551         X11 backend.
1552
1553         * gdk/win32/gdkcc-win32.c
1554         * gdk/win32/gdkcolor-win32.c
1555         * gdk/win32/gdkfont-win32.c
1556         * gdk/win32/gdkinput-win32.c
1557         * gdk/win32/gdkmain-win32.c
1558         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
1559
1560 2000-10-24  Havoc Pennington  <hp@redhat.com>
1561
1562         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
1563         it a static function
1564
1565         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
1566         redraw text when a tag is applied to it.
1567
1568         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
1569         (gtk_text_tag_affects_nonsize_appearance): private functions to
1570         see if a tag requires various kinds of redraw/layout to be queued
1571         up.
1572
1573         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
1574
1575         * gtk/testtext.c (fill_example_buffer): Put the cursor 
1576         at the start of the buffer, so search works by default
1577
1578         * gtk/gtktextiter.c (lines_match): init match_start always
1579
1580         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
1581         function, get iter at a line + a byte index
1582
1583         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
1584         to set byte position within a line
1585         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
1586
1587 2000-10-23  Havoc Pennington  <hp@redhat.com>
1588
1589         * gtk/testtext.c: Re-enable the "find" dialog
1590
1591         * gtk/testgtk.c: Add test for gdk_drawable_get_image
1592         
1593         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
1594         the arguments to gdk_draw_drawable were in the wrong order
1595         (gdk_window_paint_init_bg): This function was ignoring the
1596         init_region, instead of clipping to it, so the entire backing
1597         pixmap was cleared on every begin_paint()
1598         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
1599         was in here again, the loop kept using the same GtkWindowPaint
1600         over and over.
1601         (gdk_window_begin_paint_region): Fix a bug where we had two
1602         x_offset instead of x_offset and y_offset
1603
1604         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
1605         before we get the image.
1606         (gdk_draw_drawable): get the composite before we draw the drawable.
1607         (gdk_drawable_real_get_composite_drawable): default
1608         get_composite_drawable implementation that returns the drawable 
1609         itself
1610
1611         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
1612         get_composite_drawable virtual function
1613
1614         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
1615         list-walking bug
1616
1617         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
1618         make this work if the source drawable is a GdkDrawableImplX11
1619         instead of a public drawable type. This is really broken; the
1620         problem is that GdkDrawable needs a virtual method get_xid(), but
1621         of course that doesn't work in practice. Enter RTTI.
1622
1623         Also, improve mismatched depth message.
1624
1625         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
1626         GdkPixmap
1627
1628         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
1629         install _gdk_x11_get_image as our implementation of get_image
1630         
1631         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
1632         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
1633
1634         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
1635         gdk_drawable_get_image
1636
1637         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
1638
1639         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
1640         get_image
1641
1642         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
1643         trailing semicolon after for loop
1644
1645 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
1646
1647         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
1648         where font_desc for widget's context lagged widget's font_desc by
1649         one step.
1650
1651 2000-10-22  Tor Lillqvist  <tml@iki.fi>
1652
1653         * gdk/win32/gdkgc-win32.c
1654         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
1655
1656         * gtk/makefile.mingw.in
1657         * gtk/gtk.def: Updates.
1658
1659         * gtk/testgtk.c: sleep() is called _sleep in MS's C
1660         library.
1661
1662         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
1663
1664         * gtk/makefile.msc: Remove
1665
1666         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
1667
1668         * gtk/Makefile.am: Add it.
1669
1670         * configure.in: Generate it.
1671
1672         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
1673         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
1674         something even if not implemented, to satisfy picky MSVC.
1675
1676         Patches by Hans Breuer:
1677         
1678         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
1679         SetBkMode() and SetTextAlign() before calling
1680         pango_win32_render().
1681
1682         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
1683         Set hcliprgn to NULL after destroying it.
1684         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
1685
1686         * gdk/win32/gdkgeometry-win32.c
1687         (_gdk_windowing_window_queue_antiexpose): More effective
1688         implementation.
1689
1690         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
1691         depth as default, not the visual's.
1692
1693         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
1694         against empty title.
1695
1696         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
1697         IMAGE_PRIVATE_DATA.
1698
1699         * gdk/win32/gdkimage-win32.c: Use it.
1700
1701 2000-10-22  Robert Brady  <robert@suse.co.uk>
1702
1703         * configure.in: Check for bind_textdomain_codeset
1704
1705         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
1706         present, make use of it.
1707
1708         Add a translatable string "default:LTR" which, if translated
1709         to "default:RTL", will cause the default direction to be
1710         Right-to-Left.
1711
1712         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
1713         direction if marked as flippable.
1714
1715         * gtk/gtkhscale.c: Mark widget as flippable.
1716         
1717 2000-10-04  Havoc Pennington  <hp@redhat.com>
1718
1719         * gtk/testgtk.c (create_buttons): create some stock buttons
1720         with the default accel group
1721         (create_image): test some new GtkImage features
1722         (make_message_dialog): test GtkMessageDialog
1723         (create_modal_window): fix someone's bizzarro indentation
1724
1725         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
1726         GTK_WIN_POS_CENTER_ON_PARENT. 
1727         Add "destroy with parent" setting, which means the window goes
1728         away with its transient parent.
1729         (gtk_window_get_default_accel_group): get the default accel group
1730         for the window.
1731         (gtk_window_set_destroy_with_parent): set/unset destroy with
1732         parent flag
1733         (gtk_window_read_rcfiles): invalidate icon set caches
1734         after reloading rcfiles 
1735
1736         * gtk/gtkenums.h (GtkWindowPosition): add
1737         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
1738         on its parent window when the dialog is mapped for the first time.
1739
1740         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
1741         a simple message dialog class
1742         
1743         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
1744         handler to emit response signal, and maybe later it would
1745         honor a hide_on_delete flag - though that isn't there yet.
1746         Set border width on the vbox to 2, so we get some padding.      
1747         Use a button box for the action area.
1748         (gtk_dialog_key_press): synthesize a delete event if Esc
1749         is pressed and the GtkWidget key press handler didn't 
1750         handle the escape key.
1751         (gtk_dialog_new_with_buttons): new function creates a dialog
1752         with some default buttons in it.
1753         (gtk_dialog_add_action_widget): add an activatable widget
1754         as a button in the dialog - you can also add a non-activatable
1755         widget by accessing the action area directly.
1756         (gtk_dialog_add_button): add a simple button - stock ID or 
1757         label - to the action area
1758         (gtk_dialog_response): emit response signal
1759         (gtk_dialog_run): block waiting for the dialog, return 
1760         the response. Override normal delete_event behavior, so that 
1761         delete_event does nothing inside gtk_dialog_run().
1762
1763         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
1764         emitted when an action widget is clicked or the dialog gets
1765         delete_event
1766
1767         * gtk/gtk.h: add gtkmessagedialog.h
1768
1769         * gtk/Makefile.am: add gtkmessagedialog.[hc]
1770
1771 2000-10-18  Havoc Pennington  <hp@redhat.com>
1772
1773         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
1774         where any number of empty lines would get skipped
1775
1776         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
1777         edge.
1778
1779         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
1780         warning about invalid iterators (explain more thoroughly)
1781         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
1782
1783         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
1784         big
1785
1786         * demos/*.c: Add error handling
1787
1788         * gtk/gtktextbuffer.c: don't modify const iterators
1789
1790         * gtk/gdk-pixbuf-loader.c: Add full error handling here
1791
1792         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
1793         on file load
1794
1795         * gtk/gtkiconfactory.c: Update to reflect addition of error
1796         handling to gdk-pixbuf loaders
1797
1798 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
1799
1800         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
1801         move to new modularized testgtk.
1802
1803 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
1804
1805         * gtk/gtktreeview.c: Draw the arrows correctly.
1806
1807         * gtk/gtktreemodel.c: Added user docs.
1808
1809         * gtk/gtk.h: remove gtktreedatalist.h.
1810
1811         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
1812         parent when generating my type.
1813
1814         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
1815         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
1816
1817 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
1818
1819         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
1820         GtkTreeModel from object to interface.
1821
1822 2000-10-16  Havoc Pennington  <hp@redhat.com>
1823
1824         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
1825         compilation
1826
1827 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
1828
1829         * gtk/gtktreeselection.c: Add API documentation to all public
1830         functions.
1831
1832         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
1833         functions.
1834
1835 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
1836
1837         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
1838         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
1839         docs to all public functions.
1840
1841         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
1842         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
1843         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
1844         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
1845         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
1846         issue.
1847
1848 2000-10-14  Robert Brady  <robert@suse.co.uk>
1849
1850         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
1851
1852 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
1853
1854         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
1855         values other then G_TYPE_STRING.
1856         * gtk/gtktreeselection.c: Minor commenting updates.
1857         * gtk/gtktreeview.c: Format updates.
1858
1859 2000-10-09  Tor Lillqvist  <tml@iki.fi>
1860
1861         * README.win32: Update.
1862
1863         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
1864         lines that had been deleted by mistake (?).
1865
1866         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
1867         also the case fg==white and bg==black (but still not randomly
1868         coloured cursors). Thanks to Wolfgang Sourdeau.
1869
1870         * gdk/win32/*.c: Silence gcc -Wall.
1871
1872         * gtk/gtk.def: Add missing entry points.
1873
1874         Fixes by Hans Breuer:
1875
1876         * gdk/makefile.msc
1877         * gdk/win32/makefile.msc: Update.
1878
1879         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
1880         some MSVC thing, presumably), cause breakpoint on failures. Add
1881         GDK_NOR case. Call g_log_set_always_fatal.
1882
1883         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
1884         should be pased by reference.
1885         
1886         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
1887         
1888         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
1889
1890         * gdk/win32/gdkevents-win32.c
1891         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
1892
1893         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
1894         implementation object.
1895
1896         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
1897         not just windows.
1898         
1899         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
1900         Use the wrapper object.
1901         
1902 2000-10-06  Havoc Pennington  <hp@redhat.com>
1903
1904         * Makefile.am (SRC_SUBDIRS): contrib subdir
1905
1906         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
1907         so it can be used in Xlib version
1908
1909         * demos/testpixbuf.c (update_timeout): error checking from 1.0
1910         tree
1911
1912         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
1913         change from 1.0 tree that returns first frame of animation
1914         if the loaded file is an animation.
1915
1916         * contrib: add new directory to hold stuff that comes with GTK+
1917         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
1918         
1919         * configure.in: add contrib/*
1920
1921 2000-10-05  Havoc Pennington  <hp@redhat.com>
1922
1923         * demos/testpixbuf-save.c: add pixbuf save test
1924
1925         * demos/Makefile.am: add testpixbuf-save.c
1926
1927 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
1928
1929         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
1930         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
1931         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
1932         * gtk/gtktreeselection.[ch]: Replaced
1933         "node_selected"/"node_unselected" signal with "selection_changed"
1934         signal.
1935
1936 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
1937
1938         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
1939         tree widget.
1940
1941 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
1942
1943         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
1944         drawing.
1945
1946 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
1947
1948         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
1949         Move list pointer forwards before removing item from
1950         list. (Crash reported by Salmaso Raffaele)
1951
1952         * gdk/gdkwindow.h: Remove spurious trailing ,
1953
1954         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
1955         dependencies on uninstalled libraries, sorry folks.
1956
1957 2000-10-04  Havoc Pennington  <hp@redhat.com>
1958
1959         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1960         gtk/gtkiconfactory.c: Fix copyrights    
1961
1962         * demos/testpixbuf.c: add inline pixbuf test
1963         
1964 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
1965
1966         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
1967         Add gdk_window_iconify.
1968
1969         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
1970         (gdk_window_set_geometry_hints): Add win_gravity
1971         to geometry structure.
1972
1973         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
1974         Implement _NET_WM_PING.
1975
1976         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
1977         Set _NET_WM_PID on the client leader.
1978
1979         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
1980         Handle UTF-8 better.
1981
1982         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
1983         UTF-8 better, set _NET_WM_NAME as well. Only set
1984         icon name if it hasn't previously been explicitely 
1985         set.
1986
1987 2000-10-03  Havoc Pennington  <hp@redhat.com>
1988
1989         * gtk/testtextbuffer.c: clean up trailing whitespace,
1990         add extensive tests for tag toggle iteration.
1991         
1992         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
1993         distance
1994
1995         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
1996         optimize case where the tag root is on level 1
1997         (gtk_text_line_previous_could_contain_tag): attempt to implement
1998         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
1999         functionality
2000
2001         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
2002         Implement this, though not very efficiently.
2003
2004         * gtk/gtktextiterprivate.h: reformat
2005
2006         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
2007         iterator
2008
2009         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
2010         this to properly revalidate the iterators.
2011
2012         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
2013         properly at the end of the line (and therefore on empty lines)
2014
2015         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
2016         maybe we should return a value...
2017
2018 2000-10-03  Tor Lillqvist  <tml@iki.fi>
2019
2020         * config.h.win32: Guard definition of alloca(). glib.h now handles
2021         that.
2022
2023         * gdk/gdk.def
2024         * gtk/gtk.def: Add new entry points.
2025
2026         Changes just to make GTK+ build without errors on Win32. No hope
2027         of it working in its current state, though...:
2028         
2029         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
2030         some functions from the X11 backend, just to make GTK+ build.
2031
2032         * gdk/makefile.mingw.in
2033         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
2034         number. Add new object files.
2035
2036         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
2037         GetMessageTime to get timestamp (where on X11 uses
2038         gdk_x11_get_server_time()).
2039
2040 2000-10-02  Havoc Pennington  <hp@pobox.com>
2041
2042         * gtk/gtktextview.c: text_window_* weren't static and should have
2043         been.
2044         Start work on child widgets; not yet complete, syncing to 
2045         office computer.
2046
2047         * gtk/gtktextchild.h: change this to contain a public interface,
2048         starting work on child interfaces.
2049         * gtk/gtktextchildprivate.h: move private interfaces here
2050
2051         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
2052
2053         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
2054         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
2055         gtk/gtktextmark.c: copyright notices
2056
2057         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
2058         internal functions      
2059
2060         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
2061         internal function
2062
2063         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2064         Reformatting    
2065
2066 2000-09-30  Havoc Pennington  <hp@pobox.com>
2067
2068         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
2069         NULL start/end pointers
2070
2071         * gtk/gtktextbuffer.c: Write some docs
2072         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
2073         NULL, so you can just check whether there's a selection.        
2074
2075         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
2076         cleanup_line or segments_changed ourselves, it gets done 
2077         in unlink_segment
2078
2079         * gtk/gtktextmark.h:
2080         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
2081         
2082         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
2083
2084         * gtk/gtktextmark.c: delete some more old Tk cruft
2085
2086         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
2087         mark before removing it, so we can emit MARK_DELETED with a valid
2088         pointer.
2089         (gtk_text_buffer_mark_set): hold ref across signal emission
2090
2091         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
2092         whining about attempts to delete special marks
2093
2094         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
2095         underscore, since it's internal.
2096
2097         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
2098         now implemented in terms of iterators in gtktextiter.h
2099
2100         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
2101         New function, destructively sets contents of buffer. Also 
2102         a convenient way to clear the buffer by setting text to ""
2103
2104         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
2105         multiline string literal
2106
2107         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
2108         text changes.
2109
2110         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
2111         is not dereferenceable
2112         (gtk_text_iter_forward_lines): fix return value
2113
2114 2000-09-29  Havoc Pennington  <hp@redhat.com>
2115
2116         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
2117
2118         * gtk/gtktextview.c: Implement drag thresholding; change functions 
2119         that set border window size to have nicer name
2120         (gtk_text_view_mark_set_handler):  Fix this to have the 
2121         right signature.
2122
2123         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
2124
2125         * gtk/testtext.c: Update with API changes, put line numbers on 
2126         both sides.
2127         
2128         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
2129         with this
2130
2131         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
2132         pixbuf; delete a big block of #if 0 Tk code
2133
2134         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
2135         insert_pixmap with insert_pixbuf
2136
2137 2000-09-29  Martin Baulig  <baulig@suse.de>
2138
2139         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
2140         confusion with the GdkPixbuf of the GNOME 1.x platform.
2141
2142 2000-09-29  Havoc Pennington  <hp@pobox.com>
2143
2144         * gtk/gtktextview.c: Implement the side windows.
2145
2146         * gtk/testtext.c: Implement simple line numbering in the 
2147         left side window; seems to make scrolling sloooow. Oops.
2148         Also, cursor blink is for some reason causing redraws
2149         of the line numbers. Should investigate...
2150
2151 2000-09-28  Havoc Pennington  <hp@redhat.com>
2152
2153         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
2154         scrolling child windows, and draw focus rectangle properly.
2155         
2156         (gtk_text_view_buffer_to_window_coords):
2157         Coordinate transformation to deal with all these freaking windows
2158         and offsets
2159         (gtk_text_view_window_to_buffer_coords): transform the other way
2160
2161         * gtk/testtext.c (create_buffer): Update to match Pango API change
2162
2163         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
2164         anonymous tags
2165         (foreach_unref): don't emit remove signal from finalize, just
2166         set tag's parent to NULL
2167
2168 2000-09-26  Havoc Pennington  <hp@redhat.com>
2169
2170         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
2171         Fix some warnings       
2172
2173 2000-09-26  Havoc Pennington  <hp@redhat.com>
2174
2175         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
2176         headers into the private header list
2177
2178         * Makefile.am (pkgconfig_DATA): install pkg-config files
2179
2180         * configure.in: add pkg-config files
2181
2182         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
2183
2184         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
2185         outstanding icon caches on theme change.
2186
2187         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
2188         important types:
2189
2190         (GtkIconSource): Specification for creating a pixbuf 
2191         appropriate for a direction/state/size triplet from 
2192         a source pixbuf or filename
2193
2194         (GtkIconSet): List of GtkIconSource objects that are used to
2195         create the "same" icon (e.g. an OK button icon), and cache for
2196         rendered icons
2197
2198         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
2199         up the icon set for a given stock ID.  GTK maintains a stack of
2200         GtkIconFactory to search, and applications or libraries can add
2201         additional icon factories on top of the stack
2202         
2203         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
2204         the set of GtkIconSource specified for a given stock ID into 
2205         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
2206         RcStyle, under the specified stock ID.
2207
2208         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
2209         render_icon used to derive a GdkPixbuf from a GtkIconSource.
2210         This allows people to theme how prelight, insensitive, etc. are
2211         done.
2212
2213         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
2214         icon factories for a style, and return the resulting 
2215         icon set if any.
2216
2217         (gtk_style_render_icon): Render an icon using the render_icon 
2218         method in the GtkStyleClass.
2219
2220         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
2221         Use the style for a given widget to look up a stock ID, get the
2222         icon set, and render an icon using the render_icon method 
2223         of the style
2224
2225         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
2226         (contains information about a stock item), the built-in stock item
2227         IDs, and functions to add/lookup stock items.
2228
2229         * gtk/stock-icons/*: Stock icons that come with GTK
2230
2231         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
2232         a button based on a GtkStockItem
2233         (gtk_button_new_accel): Takes a uline string and accel group, and
2234         installs the accelerator.
2235
2236         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
2237         image-display widget.
2238
2239 2000-09-25  Havoc Pennington  <hp@redhat.com>
2240
2241         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
2242
2243         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
2244         Fix a bug when removing node data, we didn't properly 
2245         re-splice the linked list after removing the data.
2246
2247         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
2248         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
2249
2250         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
2251
2252         * gtk/gtktextlayout.c (set_para_values): Set tab array 
2253         for the layout from the GtkTextTag.
2254
2255         * gtk/gtktexttypes.h: delete tab and search cruft, 
2256         remove g_convert() in favor of GLib version
2257
2258         * gtk/gtktexttypes.c: remove tab implementation from here,
2259         move to Pango
2260
2261         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
2262         tab stuff using new PangoTabArray from Pango
2263
2264         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
2265         unused border_width stuff
2266
2267 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
2268
2269         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
2270         glib) and now useless utf_to_latin1() latin1_to_utf()
2271
2272         * gtk/gtktextview.[ch]: Change ::move_insert and
2273         ::delete_text action signals to ::move and ::delete;
2274         create the signals with the right enumeration type,
2275         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
2276         C-v bindings, change Home, End to move to beginning/end
2277         of line, Add C-Home C-End to move to beginning/end
2278         of buffer. Change ::cut_text to ::cut_clipboard, etc;
2279         combine ::scroll_text into ::move; use new GtkSelectionData
2280         functions to simplify DND text handling.
2281         
2282         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
2283         deletion enumerations here, rename enumeration values to 
2284         be consistently plural.
2285
2286         * gtk/gtktextbuffer.c: Use new clipboard interfaces
2287         for cut/copy/paste and primary selection.
2288
2289         * gtk/gtktextbuffer.[ch]: Remove excess time and
2290         'interactive' arguments from cut/copy/paste;
2291         rename cut to cut_clipboard, etc; remove
2292         gtk_text_buffer_get_clipboard_contents().
2293
2294         * gtk/gtktextlayout.[ch]: Add 
2295         gtk_text_layout_move_iter_to_line_end() to move the iter to 
2296         line ends.
2297
2298         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
2299         Functions to set or get a UTF-8 string on the selection
2300         data.
2301
2302         * gtk/gtkclipboard.[ch]: New, simplified selection handling
2303         interfaces.
2304
2305         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
2306         created widgets - one of these is useless if we don't.
2307
2308         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
2309         a public function clear all targets registered for the
2310         widget.
2311
2312         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
2313         Never call gtk_widget_realize() - that was just asking
2314         for bizarre side-effects.
2315
2316         * gtk/gtkselection.c (gtk_selection_owner_set): Call
2317         gdk_selection_owner_set even if the widget is the
2318         same so that we reliably update the timestamp on
2319         the server.
2320
2321         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
2322         gdk_x11_get_server_time() function.
2323         
2324         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
2325         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
2326         Add some tricky filtering on serial numbers for
2327         selection clear events to fix up long-standard
2328         race condition FIXME's in gtkselection.c.
2329
2330         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
2331         routines to convert from utf8 to compound text or
2332         STRING and from a text property to UTF-8.
2333
2334         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
2335         a convenience function gdk_get_current_event_time().
2336
2337         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
2338         and free selection_data->data properly
2339
2340 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
2341
2342         * gtk/gtkthemes.c: Remove some unecessary includes.
2343
2344 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
2345
2346         * gtk/gtktextdisplay.c
2347         * gtk/gtktextlayout.c
2348         * gtk/gtktexttag.c
2349         * gtk/gtktexttag.h
2350         * gtk/testtext.c: Change the overstrike property to strikethrough,
2351         to closer match pango.
2352
2353 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
2354
2355         * gtk/gtktextview.c: Fix up visibility so that focus,
2356         cursor_visible and blink interact properly.  Reenable cursor blink
2357         which had been roughly disabled. Make blink and focus
2358         properly per-view.
2359
2360         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
2361         Add a flag for whether to display insertion cursor and
2362         a function to set the flag.
2363
2364         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
2365         get_line_y() to get_line_yrange(), to be a bit more generally
2366         useful.
2367
2368 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
2369
2370         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
2371           do stop_navigating_submenu, to clear last timeout properly.
2372           Also in gtk_menu_motion_notify move ignore_enter above
2373           the conditional to make it always happen as suggested by Owen
2374
2375 2000-09-07  Tor Lillqvist  <tml@iki.fi>
2376
2377         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
2378
2379         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
2380         w32api headers.
2381
2382         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
2383         declarations.
2384
2385         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
2386         (gdk_win32_get_colormap): A line had been deleted by mistake.
2387
2388         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
2389         (gdk_event_translate): Handle more virtual keycodes to be able to
2390         generate GDK events for Control-comma, Control-period, etc.
2391
2392         * gtk/gtk.def: Add some missing entry points.
2393
2394 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
2395
2396         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
2397         Doc comment fixing. (Mostly non-matching parameter names.)
2398
2399         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
2400         comments a little to avoid looking like a doc comment.
2401
2402         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
2403         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
2404         conversions be changed to GError?)
2405
2406         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
2407         Move private #defines into .c file.
2408
2409         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
2410         order of argument addition, remove duplicates.
2411
2412         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
2413         parent class is FrameClass, not BinClass.
2414
2415         * gtk/gtk.h: Add gtkinvisible, which was missing.
2416         (It's occasionalyl useful for client apps, if seldom.)
2417
2418         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
2419         #define.
2420
2421 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
2422
2423         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
2424         coordinates when creating window, instead of GDK-space
2425         coordinates. (Avoid BadValue on too large windows.)
2426
2427 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2428
2429         * configure.in (use_mmx_asm): Remove conftest* after use along the
2430         lines of AC_TRY_COMPILE.        
2431         
2432         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
2433         of g_dirname, which is deprecated.
2434         (gtk_rc_parse_any): Removed calls to
2435         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
2436
2437         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
2438         Removed calls to g_hash_table_{freeze,thaw}, as they are
2439         deprecated now.
2440
2441         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
2442         instead of g_basename.
2443         
2444 2000-09-04 Elliot Lee <sopwith@redhat.com>
2445         
2446         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
2447         ANSI warning.
2448
2449 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
2450
2451         * gtk/gtkwidget.h:  Add some documenting comments about 
2452           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
2453           just as owen said on irc.
2454
2455         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
2456           set HAS_DEFAULT.  Only set it if there isn't another window
2457           holding it (a focus window which RECEIVES_DEFAULT) and only unset
2458           it if the widget is not the focused window with RECEIVES_DEFAULT.
2459           This fixes weird double default bugs in dialogs which has things
2460           call gtk_window_set_default at times.
2461
2462 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
2463
2464         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
2465         Nils Barth and David Santiago to improve submenu
2466         navigation. The patch does this by creating a triangular
2467         region from the point where the pointer leaves the
2468         menu to the submenu.  While the pointer is in
2469         that region and a timeout has not expired, events 
2470         that would cause the active submenu to change are
2471         ignored.
2472
2473 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
2474
2475         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
2476         moving a toplevel window immediately after sizing it would
2477         result in it being sized back to the old size since 
2478         impl->width, impl->height aren't updated until we hear
2479         back from the server. There is still a (longstanding) bug
2480         here that gdk_window_get_size() will give the wrong size
2481         until we do hear back.
2482
2483 2000-08-31  Havoc Pennington  <hp@redhat.com>
2484
2485         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
2486         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
2487         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
2488         Rename GtkTextStyleValues to GtkTextAttributes
2489
2490 2000-08-31  Havoc Pennington  <hp@pobox.com>
2491
2492         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
2493         for rapid testing whether an iterator is the end iterator
2494         (gtk_text_btree_new): init end line cache
2495         (gtk_text_line_is_last): use fast cached line to 
2496         see if we're the last line.
2497         (get_last_line): use cached line here too, should 
2498         speed up some random unrelated code.
2499         
2500 2000-08-30  Havoc Pennington  <hp@pobox.com>
2501
2502         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
2503         signals.
2504
2505         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
2506         delete_text signals. This allows the signals to be used for
2507         implementing undo.
2508
2509         * gtk/gtktextbuffer.c: Change signal handler signatures; 
2510         provide "interactive" argument when emitting insert_text or
2511         delete_text signal.
2512         
2513 2000-08-30  Havoc Pennington  <hp@pobox.com>
2514
2515         * gtk/gtktextbuffer.c: Docs
2516
2517 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
2518
2519         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
2520         from switch statements, since Tor removed the enumeration
2521         value.
2522         
2523         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
2524         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
2525
2526 2000-08-29 Elliot Lee <sopwith@redhat.com>
2527         * */*.h: Use G_GNUC_CONST.
2528
2529 2000-08-27  Havoc Pennington  <hp@pobox.com>
2530
2531         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
2532         minor indentation fixes, inserted some FIXME about stuff I
2533         realized was broken while documenting it.
2534         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
2535         GTK convention  
2536
2537 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gtk/testgtk.c (create_styles): Fix double free of
2540         font desc.
2541
2542 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
2543
2544         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
2545         
2546         * gtk/testgtk.c (create_styles): Add a test for modifying
2547         the style through gtk_widget_modify_*.
2548
2549         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
2550         a function to get the current modifier style.
2551
2552         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
2553         of the passed in GtkRcStyle instead of ref'ing it.
2554
2555         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
2556
2557 2000-08-20  Tor Lillqvist  <tml@iki.fi>
2558
2559         * gdk/gdkimage.h
2560         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
2561         shared memory image+pixmap GdkImage type, or
2562         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
2563         I am dropping that.
2564
2565         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
2566         actually call gtk_init_abi_check(), passing also
2567         sizeof(GtkWindow). Ditto for gtk_init_check(). 
2568
2569         * gtk/gtk.def
2570         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
2571         New functions, used to check that the GTK+-using code has been
2572         compiled using the correct compiler and switches. In particular,
2573         with gcc one has to use the -fnative-struct switch as GTK+ is
2574         compiled with that.
2575
2576 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
2577
2578         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
2579         ->prev fields when merging lists. (Found simultaneously
2580         by Pawel Salek and Jakub Jelinek)
2581
2582 2000-08-12  Tor Lillqvist  <tml@iki.fi>
2583
2584         * gdk/gdk.def
2585         * gtk/gtk.def: Add missing entries.
2586
2587         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
2588         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
2589
2590         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
2591         function. Dummy implementation at this point.
2592
2593         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
2594         rules. Undefine GTK_COMPILATION when compiling the test programs.
2595         
2596         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
2597
2598 2000-08-11  Tor Lillqvist  <tml@iki.fi>
2599
2600         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
2601         to convert back and forth from UTF-8 and the "system" (or "current
2602         locale") charset when necessary. Indentation/spacing cleanup.
2603
2604 2000-08-10  Havoc Pennington  <hp@redhat.com>
2605
2606         * Makefile.am (snapshot): Change the format of the snapshot
2607         version to match glib
2608
2609         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
2610         from EXTRA_DIST since it doesn't seem to exist
2611
2612 2000-08-10  Tor Lillqvist  <tml@iki.fi>
2613
2614         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
2615         version of the directory name (not the UTF-8 one) when building
2616         the path name to stat().
2617
2618 2000-08-03  Elliot Lee  <sopwith@redhat.com>
2619
2620         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
2621         PANGO_ATTR_SHAPE set.
2622
2623 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
2624
2625         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
2626         Peter Osterlund to simplify the code while keeping the
2627         functionality the same.
2628
2629 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
2630
2631         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
2632         is_viewable() test further inside the function, since removing the 
2633         window from the redraw list without clearing ->update_area
2634         was also very broken.
2635
2636 2000-08-02  Tor Lillqvist  <tml@iki.fi>
2637
2638         * configure.in: Check for <unistd.h>.
2639
2640 2000-08-01  Martin Baulig  <baulig@suse.de>
2641
2642         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
2643         to display the message that this is a development version of GTK+.
2644
2645 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
2646
2647         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
2648         was depending on widget->allocation instead of the width of text_area,
2649         which was incorrect for subclasses like GtkSpinButton.
2650
2651         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
2652         with width == 1 tests that should be width == -1.
2653
2654 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
2655
2656         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
2657         (broken, Elliot, every single window blank on X) custom code with call
2658         to gdk_window_is_viewable() which a) prevents code duplicate and
2659         b) works. 
2660
2661 2000-07-31  Elliot Lee  <sopwith@redhat.com>
2662
2663         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order to get the GDK_PARENT_ROOT() macro to work.
2664         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
2665         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces of, windows that aren't shown.
2666         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of pointer grab stuff.
2667
2668 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
2669
2670         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
2671           s/gtk_main_iteration/g_main_iteration/
2672
2673           Did this already in change:
2674                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
2675           don't know how it got reverted.
2676
2677 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
2678
2679         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
2680         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
2681
2682         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
2683         not gdk_pixbuf.
2684
2685 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
2686
2687         * configure.in,po/{sp,sr}.po: Added Serbian files
2688
2689 2000-07-30  Tor Lillqvist  <tml@iki.fi>
2690
2691         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
2692
2693         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
2694         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
2695         GIOChannel implementation.
2696
2697         * gdk/win32/gdkinput.c
2698         * gdk/win32/gdkpango-win32.c: Update license name here, too.
2699
2700         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
2701         definition to match prototype.
2702
2703         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
2704
2705 2000-07-27  Elliot Lee  <sopwith@redhat.com>
2706
2707         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
2708         function, to allow handling image formats that cannot be detected
2709         by looking at content alone.
2710
2711 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
2712
2713         * docs/tutorial/*.gif *.jpg *.eps
2714           Update these to the same look-n-feel.
2715           Why does including images in DocBook suck so badly?
2716
2717 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
2718
2719         * gtk/gtktable.c: applied patch from Phil Thompson
2720         <phil@river-bank.demon.co.uk> that enables space settings for
2721         the last row/columns as well.
2722
2723 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
2724
2725         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
2726         updates the license headers to the GNU Lesser General Public License,
2727         as well as updating the copyright year to 2000.
2728
2729 2000-07-26  Robert Brady  <rwb197@zepler.org>
2730
2731         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
2732           and po/Makefile, was installing and looking for them under gtk20
2733           and gtk2 respectively.
2734
2735 2000-07-25  Havoc Pennington  <hp@redhat.com>
2736
2737         * gtk/testtext.c: Comment out some stuff that depends on the rest
2738         of my patches.
2739
2740 2000-07-25  Havoc Pennington  <hp@redhat.com>
2741
2742         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
2743         buffer
2744
2745 2000-07-25  Havoc Pennington  <hp@redhat.com>
2746
2747         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
2748         widget changes.
2749
2750         * gtk/gtktextview.h: To be consistent with usage of "line"
2751         throughout the API to mean "newline-terminated thingy", change
2752         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
2753         to MOVEMENT_LINE.
2754
2755         (GtkTextView): Add flags for default editability, and whether to
2756         show the cursor. Add functions to get/set that. Add 
2757
2758         (gtk_text_view_get_iter_location): new function
2759
2760         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
2761         gtktextlayout.h
2762         (g_convert): Add g_convert temporarily, will go in glib in a bit
2763         
2764         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
2765         GtkTextTagTableForeach instead of brokenly using GHFunc.
2766         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
2767
2768         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
2769         moved to public header.
2770
2771         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
2772         "invisible", since "elide" was a bad name.
2773         (gtk_text_tag_get_priority): Added
2774
2775         (GtkTextStyleValues): put this in public header, along with
2776         functions to use it.
2777
2778         * gtk/gtktextmarkprivate.h: Include more headers, since we no
2779         longer include gtktextbtree.h.
2780
2781         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
2782         gtk_text_mark_deleted
2783
2784         * gtk/gtktextlayout.h: Don't include the "really private" headers,
2785         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
2786         to make this possible. Now we only need to install
2787         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
2788         (However the Makefile.am isn't changed yet because of the
2789         logistics of merging gtk-hp-patches piecemeal)
2790
2791         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
2792         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
2793         gtk_text_iter_get_line is now used in the public API for a
2794         different purpose.
2795
2796         * gtk/gtktextiter.h: Clean up function names to be more
2797         consistent. Always call char offset "offset" and byte index
2798         "index". A "line" is always a line number. 
2799
2800         (gtk_text_iter_is_last): new function, more efficient than 
2801         the existing way to check
2802         (gtk_text_iter_is_first): new function, also more efficient
2803
2804         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
2805
2806         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
2807         gtk_text_iter_forward_char, etc.
2808
2809         (gtk_text_iter_forward_to_tag_toggle): Renamed from
2810         forward_find_tag_toggle, since this isn't a linear search
2811
2812         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
2813
2814         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
2815         New functions, search for a buffer substring.
2816
2817         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
2818         interactive and default editable (since we need to store that info
2819         until we receive the selection data).
2820
2821         Remove all the _at_char and at_line etc. versions of functions;
2822         only have iterator versions.
2823
2824         Add _interactive() versions of functions, that consider the
2825         editability of text. (FIXME add interactive flag to the 
2826         insert/delete signals per Darin's suggestion)
2827
2828         (gtk_text_buffer_get_tag_table): new function, demand-creates the
2829         tag table if necessary
2830
2831         Remove declaration of gtk_text_buffer_get_iter_from_string
2832
2833         (_gtk_text_buffer_get_btree): private/internal function, added.
2834         
2835
2836         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
2837         (gtk_text_line_is_last): new function
2838
2839 2000-07-25  Havoc Pennington  <hp@redhat.com>
2840
2841         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
2842         using GtkProgressBar. See Changes-2.0.txt for details.
2843
2844         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
2845         "pulse_step" which are the equivalent of
2846         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
2847         Implement new API.
2848         
2849         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
2850         (use_text_format) to mark whether text set on the progress bar is
2851         a format string. Deprecate entire GtkProgress interface.
2852
2853         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
2854         (gtk_progress_build_string): make this a no-op if use_text_format
2855         is FALSE
2856
2857         * docs/Changes-2.0.txt: Describe progress bar changes.
2858
2859 2000-07-25  Tor Lillqvist  <tml@iki.fi>
2860
2861         * Makefile.am: Include the build directory.
2862
2863         * configure.in: Generate build/Makefile, build/win32/Makefile,
2864         gdk/, gdk/win32/, and gtk/makefile.mingw.
2865
2866         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
2867         Add GETTEXT_PACKAGE.
2868         
2869         * gdk/gdk.def
2870         * gtk/gtk.def: Updates.
2871
2872         * gdk/gdkfont.h
2873         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
2874         need them any longer.
2875
2876         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
2877
2878         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
2879         PANGOWIN32_LIBS and gdk_pixbuf.
2880
2881         * gdk/win32: Compiles, but no doubt doesn't work at all.
2882
2883         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
2884
2885         * gdk/win32/gdkinput.c: New file, temporarily.
2886         
2887         * gdk/win32/gdkinput-win32.h: New file
2888
2889         * gdk/win32/gdkinputprivate.h: Remove.
2890
2891         * gdk/win32/gdkpango-win32.c: New file.
2892
2893         * gtk/makefile.mingw.in: New file
2894
2895         * gtk/makefile.cygwin: Removed
2896         
2897         * gtk/Makefile.am: Update accordingly.
2898
2899         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
2900         made externally visible.
2901
2902         * gtk/gtkmain.c: Use it.
2903         
2904         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
2905         is enough.
2906
2907         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
2908
2909 2000-07-24 Elliot Lee <sopwith@redhat.com>
2910         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
2911         individual backends already.
2912         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
2913         again. Yes, there really is a good reason for this, if you are using the gdkregion
2914         internals, and if you're not, why do you care?
2915         * gdk/gdkwindow.c: Fix inverted condition
2916         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
2917         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
2918         * gtk/gtkrange.c: Redraw trough when moving.
2919         * gtk/gtktypeutils.c: Fix warning by adding const cast.
2920         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
2921
2922 2000-07-23  Tor Lillqvist  <tml@iki.fi>
2923
2924         * configure.in: Check for mkstemp and sigsetjmp. Output
2925         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
2926
2927         More work on GDK for Win32. Still in an intermediate state.
2928
2929         * gdk/makefile.cygwin
2930         * gdk/win32/makefile.cygwin: Removed.
2931         
2932         * gdk/makefile.mingw.in
2933         * gdk/win32/makefile.mingw.in: New files.
2934
2935         * gdk/Makefile.am
2936         * gdk/win32/Makefile.am: Generate and distribute them.
2937
2938         * gdk/win32/gdkwindow-win32.h
2939         * gdk/win32/gdkdrawable-win32.h
2940         * gdk/win32/gdkpixmap-win32.h: New files.
2941
2942         * gdk/win32/gdkcolor-win32.c
2943         * gdk/win32/gdkcursor-win32.c
2944         * gdk/win32/gdkdrawable-win32.c
2945         * gdk/win32/gdkgc-win32.c
2946         * gdk/win32/gdkimage-win32.c
2947         * gdk/win32/gdkprivate-win32.h
2948         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
2949         Rename fields and variables called xcursor, xid, etc (these names
2950         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
2951
2952 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
2953
2954         * gtk/gtkentry.[ch]: Fix some problems with vertical
2955         alignment.
2956
2957         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
2958         char/byte confusion.
2959
2960 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
2961
2962         * gtk/gtktextview.c (changed_handler): Fix bug where
2963         redraw wasn't being done properly when height of
2964         dirty region changed.
2965
2966         * demos/Makefile.am: Remove various references to
2967         -lgmodule
2968
2969 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
2970
2971         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
2972         PangoAttrShape to reserve space for pixmaps, add 
2973         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
2974         in the display functions.
2975         
2976         * gtk/testgtk.c (create_layout): Set some more exotic
2977         scrolled window options
2978
2979         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
2980         Add function to set the shadow type of a window, to allow
2981         putting a shadow around widgets such as GtkLayout or GnomeCanvas
2982         which don't draw their own frame.
2983
2984 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
2985
2986         * docs/tutorial/package-db-tutorial.sh: New file for
2987           packaging DocBook format tutorial
2988
2989 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
2990
2991         * docs/tutorial/gtk-tut.sgml: Minor updates
2992
2993         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
2994
2995 2000-07-19  Tor Lillqvist  <tml@iki.fi>
2996
2997         * gtk/gtksignal.c: Fix C++ comment.
2998
2999         * gtk/gtkimmulticontext.c
3000         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
3001         don't return value from void functions.
3002
3003         * gtk/gtk.def: Add gtk_rc_style_unref.
3004
3005 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3006
3007         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
3008         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
3009         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
3010         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
3011         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
3012         gtk/gtktypeutils.h: Include files outside of the extern "C"
3013         block. Makes some C++ compiler happy. Reported by Denis Vakatov
3014         <vakatov@peony.nlm.nih.gov>.
3015
3016 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
3017
3018         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
3019           Completes first pass. Hurrah!
3020
3021 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
3022
3023         * docs/tutorial/gtk-tut.sgml: More clean ups.
3024
3025 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
3026
3027         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
3028         paint the background of the text area which was accidentally
3029         removed at some point.
3030
3031         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
3032           
3033          - Move most of the functionality from the theme vtable
3034            into GtkRcStyleClass and GtkStyleClass. The moved
3035            vtable functions were changed a bit in the move to
3036            work better in their new home.
3037
3038          - Get rid of the engine and engine_data fields from
3039            GtkRcStyle and GtkStyle; instead the theme
3040            engine derives theme-specific subclasses of GtkRcStyle
3041            and GtkStyle
3042
3043          - Add extra dlsym() found entry point to themes,
3044            theme_create_rc_style().
3045
3046         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
3047         in gtk_style_real_copy.
3048
3049         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
3050         to register a type associated with an engine. (The engine
3051         won't be unloaded as there is an instance of the type.)
3052
3053
3054 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
3055
3056         * docs/tutorial/gtk-tut.sgml: Clean ups.
3057
3058 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
3059
3060         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
3061           of cleaning up to do.
3062
3063 2000-07-15  Tor Lillqvist  <tml@iki.fi>
3064
3065         * gdk/testgdk.c: New file, quick hack to test backends for
3066         pixel-by-pixel correctness of the most simple graphic operations.
3067
3068 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
3069
3070         * Really release 1.3.1
3071         
3072         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
3073         include structure.
3074
3075 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
3076
3077         * Released 1.3.1
3078
3079 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
3080
3081         * gtk/gtktextlayout.c: use FALSE for size_only most
3082         of the time when calling gtk_text_layout_get_line_display()
3083         to avoid causing double reshapes when a redraw follows
3084         immediately after.
3085
3086 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
3087
3088         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
3089         appropriate region and gdk_window_process_updates() so trough
3090         updating doesn't lag behind the window being scrolled.
3091
3092         * gdk/gdkgc.c: Make parent_class pointer static.
3093          
3094 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
3095
3096         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
3097         include <string.h>.
3098          
3099         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
3100         cut-and-paste error in computing memory offset for 4 channels.
3101
3102 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
3103
3104         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
3105         gtk_rc_append_default_pixmap_path(), since it wasn't
3106         adding an interesting path and we don't have a meaningful
3107         default for this value.
3108
3109 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
3110
3111         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
3112         gtk-config to gtk-config-2.0 move gtk_.m4 to
3113         gtk-2.0.m4
3114
3115         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
3116         gdk/Makefile.am demos/Makefile.am: Change 
3117         library names to libgtk-1.3.la, etc, so that we
3118         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
3119
3120         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
3121         gdk/Makefile.am gdk/x11/Makfile.am
3122         Move include files into /usr/include/gtk-2.0, 
3123         /usr/lib/gtk-2.0/include/
3124          
3125         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
3126         gtk/gtkintl.h: Change package for gettext from 
3127         gtk+ to gtk20. Put hack in autogen.sh to modify
3128         po/Makefile.in.in after gettextize to make this
3129         possible.
3130
3131         * gtk+.spec: Some updates, not tested.
3132
3133         * gdk-pixbuf/Makefile.am: Move loaders into
3134         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
3135
3136         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
3137         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
3138         to THEMENAME/gtk-2.0/. Move engine directory  to
3139         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
3140         
3141 2000-07-12  Tor Lillqvist  <tml@iki.fi>
3142
3143         Win32 changes, still doesn't build though.
3144
3145         * gdk/makefile.cygwin
3146         * gdk/win32/makefile.cygwin
3147         * gtk/makefile.cygwin: Updates.
3148
3149         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
3150         default values for fg and bg pixel as X11 does (0 and 1), not
3151         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
3152         Use 0 for pen width by default (treated as 1 anyway later, but for
3153         apps that might check the value in the GdkGC).
3154         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
3155         interface to gdk_gc_predraw and _postdraw.
3156
3157         * gdk/win32/gdkwin32.h
3158         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
3159
3160         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
3161         extraneous semicolon.
3162
3163         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
3164
3165         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
3166         not the Win32 bitspixel value.
3167
3168         * gdk/win32/gdkcc-win32.c:
3169         * gdk/win32/gdkcolor-win32.c 
3170         * gdk/win32/gdkprivate-win32.h
3171         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
3172         GDK object structure.
3173
3174 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
3175
3176         * docs/tutorial/gtk_tut_12.es.sgml (name): 
3177         * docs/tutorial/gtk_tut_it.sgml (name): 
3178         * docs/tutorial/gtk_tut_fr.sgml (name): 
3179         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
3180         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
3181
3182 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
3183
3184         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
3185           small changes.
3186
3187 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
3188
3189         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
3190         a bug here, never been here and never fixed anything ;(
3191         (don't segfault if tree->root_tree is NULL, which happens prior
3192         to widget realization, but puke instead).
3193
3194 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
3195
3196         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
3197         add the necessary tokens.
3198
3199         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
3200         (gtk_rc_style_to_style): copy thicknesses.
3201         (gtk_rc_init_style): apply thicknesses.
3202         (gtk_rc_parse_style): parse xthickness and ythickness.
3203
3204         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
3205
3206         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
3207         (gdk_window_new): 
3208         (_gdk_windowing_window_init): 
3209         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
3210         (gdk_pixmap_create_from_data): 
3211         (gdk_bitmap_create_from_data): 
3212         (gdk_pixmap_new): 
3213         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
3214         (gdk_image_new): 
3215         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
3216         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
3217         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
3218         (gdk_colormap_get_system): 
3219         (gdk_colormap_new): 
3220         * gdk/gdkwindow.c (gdk_window_init): 
3221         * gtk/gtkstyle.c (gtk_style_new):
3222         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3223         * gdk/gdkpixmap.c (gdk_pixmap_init): 
3224         * gtk/gtkrc.c (gtk_rc_style_new):
3225         use g_object_new() instead of g_type_create_instance() which
3226         is a private function for fundamental type implementations.
3227
3228 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
3229
3230         * configure.in: Add check for db2html
3231
3232 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
3233
3234         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
3235         hack to set glib_debug_objects based on gtk_debug_flags.
3236
3237 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
3238
3239         * INSTALL.in: Update the Prerequisites section.
3240
3241         * Makefile.am demos/Makefile.am docs/Makefile.am
3242         docs/tutorial/Makefile.am gdk/x11/Makefile.am
3243         gdk/linux-fb/Makefile.am: Dist fixes
3244
3245 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
3246
3247         * NEWS: 10,000 foot view of 1.3.1 changes.
3248
3249 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
3250
3251         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
3252         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
3253         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
3254         gdk/x11/gdkmain-x11.c: 
3255
3256         Patch from George Lebl to add a GdkGrabStatus enumeration to use
3257         as a return value of gdk_*_grab(). Previously, we just
3258         returned the X11 values directly.
3259
3260 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
3261
3262         * gdk/x11/Makefile.am: Patch from George Lebl to 
3263         install all the headers in the right place.
3264
3265 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
3266
3267         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
3268           initial conversion to DocBook.
3269
3270 2000-07-04  Tor Lillqvist  <tml@iki.fi>
3271
3272         * README.win32: Improve a bit.
3273
3274         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
3275         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
3276         Alt+0nnn on the numpad (used to enter characters by numeric code
3277         from current DOS or ANSI codepage) working correctly, as in other
3278         Windows apps.
3279
3280         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
3281         same argument validity tests as in X11 version.
3282         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
3283
3284         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
3285         definitions in case missing from headers.
3286
3287         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
3288         destroy the window-specific cursor.
3289         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
3290         calling GetModuleHandle(NULL).
3291         (gdk_window_set_cursor): Reworked to always copy the passed cursor
3292         with CopyCursor before setting it as the window-specific
3293         cursor. It is OK for the caller to destroy the GdkCursor (and thus
3294         also its Windows cursor) after calling this function. Destroy any
3295         previous window-specific cursor.
3296
3297 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
3298
3299         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
3300         font charset is iso8859-1, not iso-8859-1.
3301
3302 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
3303
3304         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
3305         Use g_get_charset() instead of g_get_codeset().
3306
3307         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
3308         Comment out some strdup'ing functions to keep timj
3309         happy until we finish fighting this out.
3310
3311 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
3312
3313         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
3314         <= width or height.
3315
3316         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
3317         from 1.2 for parent/child states.
3318
3319         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
3320         of typos.
3321
3322         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
3323         event structures, replace with a generic axes field. Replace 
3324         deviceid/sourec with GdkDevice *device.
3325
3326         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
3327         to extract particular axis use value from event. (Also
3328         can be used for normal X/Y.)
3329
3330         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
3331         allow for arbitrary number of axes, namespace everything
3332         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
3333         everywhere.
3334
3335         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
3336         Get rid of the gdk_input_vtable setup if favor of simply
3337         defining the functions in gdkinput-none/gxi/xfree.c in
3338         a similar fashion to the way that the port structure is 
3339         done.
3340
3341         * gtk/gtkdnd.c: Fix fields of synthesized button press event
3342         for new event structures. 
3343
3344         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
3345         new device interfaces.
3346
3347 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
3348
3349         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
3350         set the initial text.
3351
3352         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
3353         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
3354         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
3355         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
3356
3357         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
3358         pango_layout_set_font_description to simplify.
3359
3360 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
3361
3362         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
3363         pango_layout_set_font_description to simplify.
3364
3365 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
3366
3367         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
3368         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
3369         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
3370
3371         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
3372         PANGO_PIXELS() macro.
3373
3374 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
3375
3376         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
3377         that returns a PangoContext owned by the widget and updated to
3378         match future changes in the widget. Also, make 
3379         gtk_widget_create_pango_layout() use this context. If we ever
3380         add a ::changed signal to PangoContext, this will make things
3381         much more convenient. 
3382
3383         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
3384         in the appropriate places instead of destroying the layouts and
3385         creating new ones.
3386
3387         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
3388         in a few strategic places.
3389
3390 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
3391
3392         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
3393         gtk_widget_size_request() on reparented child, if one. Otherwise,
3394         queue_resize() on the child never results in it getting size-requested
3395         at all.
3396
3397         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
3398         in option menus, so that (with luck) people won't copy it into
3399         their apps in the future.
3400
3401         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
3402         to gtk_option_menu_calc_size. This isn't perfect, but should fix
3403         a lot of problems with changing the size of the menu's menu
3404         items after adding it to the option menu.
3405
3406         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
3407
3408         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
3409         the text direction for a widget changes.
3410
3411         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
3412         ::direction_changed to get rid of various hacks.
3413
3414 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
3415
3416         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
3417         name.
3418
3419 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
3420
3421         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
3422         flag to the structure. Do not call XFreePixmap on pixmaps created
3423         by gdk_pixmap_foreign_new().
3424
3425 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
3426
3427         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
3428         value using GdkRGB functionality given GdkColormap and GdkColor.
3429         (name not final, waiting for inspiration.)
3430         
3431         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
3432         set the foreground/background of a GC using the GC's colormap
3433         and GdkRGB. (name not final, waiting for inspiration.)
3434
3435         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
3436         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
3437
3438         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
3439         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
3440         purely a function of the corresponding colormap. Make
3441         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
3442
3443         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
3444         gdk_pixbuf_*create_from_xpm_* in terms of
3445         gdk_pixbuf_new_from_xpm_data(), move into platform independent
3446         code.
3447
3448         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
3449         advantage of the new draw_rgb_32_image_dithalign.
3450
3451         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
3452
3453         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
3454         on each created GC.
3455
3456         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
3457
3458         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
3459         which we initialize from the drawable when the GC is created,
3460         if the drawable has a colormap.
3461
3462         * gdk/x11/gdkgc-x11.c: include string.h for memset.
3463
3464         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
3465
3466         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
3467
3468 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
3469
3470         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
3471         actually returning expose events, make sure to set
3472         the count field properly.
3473
3474         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
3475         accidentally reintroced bug which always cleared
3476         the graphics_exposures value. 
3477
3478 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
3479
3480         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
3481
3482 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
3483
3484         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
3485
3486 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
3487
3488         * docs/faq/gtk-faq.sgml: Start of Section 6.
3489
3490 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
3491
3492         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
3493         
3494         (Fixes problem with drawing childless frames. Pointed out
3495         by and a first patch from Anders)
3496         
3497         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
3498         compute a child_allocation, even if we don't have a child.
3499
3500         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
3501         Always chain to the parent's impl, even if we don't have a child.
3502
3503 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
3504
3505         * gdk/gdkrgb.c: If possible, create only a single shm segment and
3506         use multiple parts of it instead of creating a bunch of separate
3507         segments, since the maximum number of segments per system is not
3508         large. (This might be worth backporting to GTK+-1.2.x if we make a
3509         new release )
3510
3511         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
3512         structure in preparation for per-colormap GdkRGB.
3513
3514         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
3515         to False when we get EINVAL from shmget so that the caller of
3516         gdk_image_new can retry with a smaller segment size.
3517
3518 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
3519
3520         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
3521
3522 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
3523
3524         * configure.in: make the current version number 1.3.1 (binary age 0,
3525         interface age 0).
3526         
3527         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
3528         gtkcompat.h is all we want.
3529
3530         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
3531         GLib primitive types. fixed g_type_register_fundamental() argument
3532         ordering.
3533
3534         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
3535         compiles.
3536
3537         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
3538         object code cleanup, comment trigraph fixes, etc...
3539
3540 2000-06-23  Havoc Pennington  <hp@redhat.com>
3541
3542         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
3543         instead of making up a bogus name for first_para_mark
3544
3545         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
3546         0 as a context ID
3547
3548 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
3549
3550         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
3551
3552 2000-06-21  Havoc Pennington  <hp@pobox.com>
3553
3554         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
3555         we didn't check window->bg_pixmap != GDK_NO_BG.
3556
3557         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
3558         gdk-pixbuf
3559
3560 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
3561
3562         * docs/faq/gtk-faq.sgm: Move file to here.
3563           TODO: Update Makfile.am 
3564
3565 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
3566
3567         * docs/gtk-faq.sgm: Add Section 2
3568
3569 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
3570
3571         * docs/gtk-faq.sgm: New file. Start of DocBook
3572           version of the FAQ.
3573
3574 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
3575
3576         * configure.in (GDK_PIXBUF_MAJOR): Define version
3577         numbers for GDK_PIXBUF_*, as they get substituted
3578         into a header file. Need to consider versioning
3579         for gdk-pixbuf more carefully later.
3580
3581 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
3582
3583         Work with srcdir != builddir.   
3584         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
3585         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
3586         * demos/testpixbuf.c: Likewise.
3587         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
3588         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
3589         <gdk/x11/gdkx.h>.
3590         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
3591         "gdk-pixbuf.h".
3592         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
3593
3594 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
3595
3596         * TODO.xml: Change 1.4 version numbers to 2.0.
3597
3598 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
3599
3600         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
3601         fixups to GTK+ standard.
3602
3603 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
3604
3605         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
3606         gdk-pixbuf.
3607
3608         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
3609         fixups for GObject.
3610
3611         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
3612         gdk-pixbuf with GDK dependencies moved into GDK.
3613         
3614         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
3615         move gdk-pixbuf-loader here until GObject has signals.
3616
3617         * demos/: New directory of demos. Move demos from
3618         gdk-pixbuf here.
3619
3620         * demos/pixbuf-init.c: Small bit of code to check for
3621         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
3622         set GDK_PIXBUF_MODULEDIR appropriately.
3623
3624         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
3625         define which no longer makes sense.
3626
3627 2000-06-21  Havoc Pennington  <hp@redhat.com>
3628
3629         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
3630         gtk_get_default_language
3631
3632         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
3633         new function to get the default language
3634
3635         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
3636         s/gtk_text_view_style_values/gtk_text_style_values/
3637
3638         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
3639         Add a "language" field to tags.
3640
3641         (gtk_text_tag_set_arg): Fix bug in setting
3642         "bg_full_height_set" tag.
3643
3644 2000-06-21  Havoc Pennington  <hp@redhat.com>
3645
3646         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
3647         in the interfaces
3648
3649         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
3650         stuff instead when possible.
3651
3652         * gtk/gtktexttypes.h: Delete some unused constants
3653
3654         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
3655         testtextbuffer.c: use glib instead of custom unicode routines
3656
3657 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
3658
3659         * docs/es/: Removed mistakenly added generated sgml
3660
3661         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
3662         Remove outdated info files.
3663
3664         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
3665         Moved tutorial files into subdir
3666
3667         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
3668         subdir.
3669
3670         * docs/man/gtk_button.pod: Remove. (contents will be
3671         integrated into gtk-reference button page.)
3672
3673         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
3674         docs/faq/Makefile.am: Adjust for new organization
3675
3676 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
3677
3678         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
3679         not $(MKINSTALLDIRS)
3680
3681 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
3682
3683         * gtk/testgtk.c (create_text): Finish the job Elliot started
3684         of removing font setting test for text widget. (Since text widget
3685         and GdkFont are not deprecated, and cause portability problems.)
3686
3687 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
3688
3689         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
3690         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
3691         Remove use of libunicode in favor of new GLib functions.
3692
3693         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
3694         nano-x, framebuffer. The X11 include is just a hack until we get
3695         the necessary functions in gdkcolor.h, so there is no reason to
3696         add other includes of platforms.
3697
3698         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
3699         window bigger than the screen change.
3700
3701         * gtk/testgtk.c: Revert some random changes from Elliot
3702         that had no particular point and were causing testgtkrc
3703         not to function correctly.
3704         
3705         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
3706         because GdkSegment and GdkRegionBox have the same fields,
3707         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
3708         results in clearer code.
3709
3710         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
3711         gdk_input_translate_coordinates): Fix missed GdkObjectification
3712
3713 2000-06-18  Elliot Lee  <sopwith@redhat.com>
3714
3715         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
3716         * gtk/gtk{plug,socket}.h: Missed commits from previous.
3717
3718 2000-06-20  Havoc Pennington  <hp@redhat.com>
3719
3720         * modules/linux-fb/Makefile.am: Make this compile
3721         without framebuffer enabled
3722
3723         * gdk/linux-fb/Makefile.am: Add conditional to not build
3724         framebuffer unless specified in configure
3725
3726         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
3727         the size of the target instead of source if -1 was passed for
3728         width/height
3729
3730         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
3731         width/height confusion.
3732
3733 2000-06-19  Havoc Pennington  <hp@redhat.com>
3734
3735         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
3736         GDK_DRAWABLE_XID. In the future, we probably want to make it
3737         faster with G_DISABLE_CHECKS turned on.
3738
3739 2000-06-14  Havoc Pennington  <hp@redhat.com>
3740
3741         * gdk/Makefile.am: add gdkpixmap.c
3742
3743         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
3744         s/gdk_image_init/_gdk_windowing_image_init
3745
3746         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
3747         ref/unref
3748
3749         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
3750
3751         * gdk/gdkcompat.h: remove GdkWindowType compat, since
3752         GdkWindowType is now non-deprecated; 
3753         change gdk_window_get_type() compat to be
3754         gdk_window_get_window_type().
3755
3756         * gdk/gdkdnd.h: make GdkDragContext a GObject.
3757
3758         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
3759         virtual GObject. Make all functions call into the vtable.
3760         Move gdk_image_put() guts in here. Remove GdkDrawableType
3761         and gdk_drawable_get_type(), these are now GdkWindow-specific.
3762         draw_image, get_depth, get_size, set_colormap, get_colormap,
3763         get_visual added to the vtable.
3764         
3765         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
3766         GObject. Virtualize everything. 
3767         (gdk_gc_new_with_values): remove check for destroyed window,
3768         because now GdkWindow::create_gc will check this.
3769         (gdk_gc_set_values): New function to set GC values, this 
3770         was already implemented but wasn't in the header
3771
3772         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
3773
3774         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
3775         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
3776         remove _gdk_window_class; add _gdk_window_impl_get_type() and
3777         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
3778         _gdk_windowing_window_init, rename gdk_image_init to
3779         _gdk_windowing_image_init.
3780         
3781         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
3782         (gdk_draw_layout): Remove check for destroyed window, 
3783         because all the drawable methods already check it.
3784         
3785         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
3786         Add gdkpixmap.c which contains implementation of GdkDrawable
3787         virtual table (by chaining to a platform-specific implementation
3788         object).
3789         
3790         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
3791         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
3792         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
3793         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
3794         GdkColormapPrivate. 
3795
3796         * gdk/gdktypes.h: #include <glib-object.h>
3797
3798         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
3799         Move most functionality to platform-specific implementation
3800         object. GdkWindow itself now handles the backing store, then
3801         chains to the platform-specific implementation.
3802         (gdk_window_get_window_type): return GdkWindowType of the window.
3803         (gdk_window_peek_children): New routine, returns the children of 
3804         a GdkWindow
3805         (gdk_window_get_children): Was in X11-specific code and did 
3806         XQueryTree. Changed to simply return a copy of window->children; 
3807         so it can go in cross-platform code.
3808         
3809         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
3810
3811         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
3812         GdkColormap; just changed to use the new private data instead
3813         of casting to GdkColormapPrivate.
3814
3815         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
3816         gdk_cursor_new().
3817
3818         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
3819         (private data member in the GObject). 
3820         (xdnd_manager_source_filter): Function had broken 
3821         error handling, fix it (use gdk_error_trap_push).
3822
3823         * gdk/x11/gdkdrawable-x11.c: This file now implements
3824         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
3825         base class is purely for the convenience of the X port,
3826         and not part of the interface to cross-platform GDK.
3827
3828         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
3829         
3830         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
3831         specific to X, and returned by the create_gc virtual method
3832         of GdkDrawableImplX11. 
3833         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
3834         rather than gchar, this was also changed in the GdkGC vtable.
3835         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
3836         mask is 0, return immediately, instead of checking every flag.
3837         This is faster, and keeps us from segfaulting if values is NULL
3838         and the mask contains some nonzero flags.
3839
3840         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
3841         GdkWindow.
3842
3843         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
3844         GdkWindowPrivate is gone.
3845
3846         * gdk/x11/gdkim-x11.c: rename things that got renamed.
3847
3848         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
3849         remove the image_put stuff that got transferred to GdkDrawable.
3850         
3851         * gdk/x11/gdkinput.c: renamings
3852
3853         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
3854
3855         * gdk/x11/gdkpixmap-x11.c: GObject conversion
3856
3857         * gdk/x11/gdkprivate-x11.h: indentation fixes
3858
3859         * gdk/x11/gdkproperty-x11.c: renamings
3860
3861         * gdk/x11/gdkselection-x11.c: renamings
3862
3863         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
3864         implements the platform-specific "impl" object.
3865         Moved gdk_window_get_children to gdk/gdkwindow.c
3866
3867         * gdk/x11/gdkx.h: Remove all the private structs and private datas
3868         that no longer exist. Add declaration of GdkGCX11 object here.
3869         Fix all the macros to still work. 
3870
3871         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
3872         GdkDragContext from the boxed types since they are now GObjects.
3873
3874         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
3875         moved xthickness/ythickness into the instance. GtkStyleClass
3876         functions are now in the standard vtable for GtkStyle, so you have
3877         to create a GObject subclass to write a theme engine.
3878         (gtk_style_copy): fixed a leaked PangoFontDescription
3879         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
3880         can be the standard GObject function.
3881         
3882         * Throughout GTK:
3883         s/style->klass->[xy]thickness/style->[xy]thickness
3884         s/pango_layout_unref/g_object_unref/
3885
3886         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
3887         
3888         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
3889         accessing GDK internals.
3890
3891         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
3892         accessing GDK internals.
3893
3894 2000-06-18  Elliot Lee  <sopwith@redhat.com>
3895
3896         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
3897
3898         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
3899         problem by calculating event position relative to the trough
3900         rather than the slider.
3901         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
3902
3903         * gdk/gdkgc.h: Add GDK_NOR.
3904
3905         * configure.in, Makefile.am: Add modules top level dir
3906         * configure.in: Only use pangox library if building x11 target.
3907         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
3908
3909 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
3910
3911         * gtk/gtkcolorsel.c: Change private class member to be named
3912         private_data throughout the file.
3913
3914         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
3915         private_data to avoid clashing with keyword.
3916
3917 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
3918
3919         * gdk/gdkdnd.h: Add comment to remove warning.
3920
3921 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
3922
3923         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
3924         Byelorussian language; changed the Makefile and file names 
3925         to reflect that.
3926
3927 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
3928
3929         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
3930         rather than gdk_window_hide; this makes things work
3931         correctly if the window is programmatically hidden while
3932         iconified.
3933
3934 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
3935
3936         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
3937         cut and paste typo where wrong pixmap was being
3938         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
3939
3940 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
3941
3942         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
3943         Add helper function to compute format / bytes 
3944         relationship. Use in a couple places to fix up
3945         errors which assume 8 * format.
3946
3947         * gtk/gtkselection.c (gtk_selection_request): Use 32
3948         rather than 8 * sizeof (GdkAtom), to work correctly
3949         on Alpha.
3950
3951 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
3952
3953         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
3954         libgtk.la
3955         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
3956         versions
3957
3958         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
3959         checking macros return NULL since the function has a return value.
3960
3961 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
3962
3963         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
3964         GTK+ from building at all.
3965
3966         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
3967
3968 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
3969
3970         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
3971         gtk/Makefile.am: make it possible to configure gtk for different
3972         targets on the same platform. The library name is now 
3973         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
3974         flag. Only the x11 target compiles right now.
3975         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
3976         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
3977         * gdk/nanox/gdk*generic*: delete generic region code.
3978         * gdk/linux-fb/gdk*generic*: delete generic region code.
3979         * README.nanox: update information.
3980         
3981 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
3982
3983         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
3984         prepend not append. (Pointed out by Brett Hall.)
3985
3986 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
3987
3988         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
3989
3990 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
3991
3992         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
3993         need this later, and this makes sure that the atexit for
3994         glib gets called after that for GDK, so atexits are
3995         properly ordered for object leak checking.
3996
3997         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
3998
3999         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
4000         pango_x_shutdown_display()
4001
4002         * gtk/simple.c (main): Close window on destroy.
4003
4004 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
4005
4006         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
4007         to treat initial creation different from setting with 
4008         regards to the graphics-exposures parameter, so add a parameter
4009         indicating whether this is initial or not.
4010
4011 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
4012
4013         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
4014         to sort of work by adding an extra return_exposes arg
4015         to gdk_event_translate() - it might be better to simply
4016         deprecate the function altogether and force people to rewrite
4017         without it. gdk_window_scroll() handles most of it, and where
4018         gdk_window_scroll() doesn't work, simply redrawing more does.
4019
4020         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
4021         assertion.
4022
4023         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
4024
4025         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
4026         bunch of pretty much useless /* Print debugging info */ comments 
4027         which had drifted away from the code they were commenting.
4028
4029 2000-06-02  Havoc Pennington  <hp@pobox.com>
4030
4031         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
4032         is in working order.
4033         
4034         * gtk/testtext.c: Change to reflect anonymous mark API
4035
4036         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
4037
4038         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
4039         field, which was unused.
4040
4041         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
4042         saves some typing.
4043
4044         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
4045
4046         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
4047         flag on the insertion point and selection bound
4048
4049         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
4050         make mark-manipulation functions take a GtkTextMark* instead of a
4051         mark name.
4052         
4053         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
4054         GtkTextMarkBody; will be used to detect attempts to delete
4055         the permanent marks (insert and selection bound)
4056
4057         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
4058
4059 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
4060
4061         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
4062         flag to on.
4063
4064         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
4065         Honor DOUBLE_BUFFRED_FLAG
4066
4067         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
4068         function to set the DOUBLE_BUFFERED flag.
4069
4070         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
4071         or not exposes done on the widget should be double-buffered.
4072
4073         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
4074         to be what would be expected. (Fixes problem with a
4075         g_return_if_fail() validating a TextDirection enumeration)
4076
4077 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gtk/gtkwidget.c: Remove all references to 
4080         offscreen flag which was no longer used.
4081
4082         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
4083
4084         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
4085         for non-null label_widget->parent.
4086
4087         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
4088         which no longer was used.
4089
4090         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
4091
4092         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
4093         for null arguments.
4094
4095         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
4096         check for destroyed windows.
4097
4098 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
4099
4100         * gtk/gtkimmulticontext.c: Add a finalize method and unref
4101         the slave context there.
4102
4103         * gtk/gtkinvisible.[ch]: Make reference counting behavior
4104         identical to GtkWindow.
4105
4106 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
4107
4108         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
4109         pangox to here, so we can write them independent of rendering
4110         system, using GDK primitives.
4111
4112         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
4113         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
4114         since we have a rendering-system independent implementation in
4115         terms of draw_glyphs().
4116         
4117         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
4118         function to render a single line.
4119
4120         * gdk/x11/gdkpango.c: Move the guts of this file mostly
4121         into ../gdkpango.c, which simplifies things, since we
4122         don't have to deal with raw X gc's.
4123
4124 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
4125
4126         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
4127         get the logical attributes for a given GtkTextLine.
4128
4129 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
4130
4131         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
4132         g_locale_get_codeset() to g_get_codeset() change.
4133
4134 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
4135
4136         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
4137         descriptions.
4138
4139         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
4140         the entry.
4141
4142         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
4143         redoing (vastly simplifying) for Pango. Still needs quite
4144         a bit of work. (Size selection is currently poor. List of 
4145         predefined sizes is not a good idea, since all of these
4146         sizes won't necessarily be distinct.)
4147
4148 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
4149
4150         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
4151         CODESET results for LANG=C.
4152
4153 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
4154
4155         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
4156         which takes a stringized pango font description;
4157         ignore the older 'font' and 'fontset' declarations.
4158
4159         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
4160         field with a GdkFont derived via gdk_font_from_description(),
4161         for compatibility. (Should we just remove it entirely?
4162         Probably too much compatibility breakage, but people
4163         should be migrating to the new Pango stuff as quickly
4164         as possible.)
4165
4166 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
4167
4168         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
4169
4170 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
4171
4172         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
4173         redoing; there are some bugs in size allocation right
4174         now, the semi-existant distinction between header / day
4175         fonts was removed, but, with Pango, could actually
4176         be made functional in a nice way.
4177         
4178         * gtk/testcalender: Move calender from examples into this
4179         directory as a test program. (We really need to restrcture
4180         testgtk into a whole directory full of tests for every
4181         widget or functionality group, separated into multiple .c
4182         files.)
4183
4184 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
4185
4186         * gtk/testgtk.c (file_exists): Fix stupid typo that
4187         was keeping RC file from being loaded.
4188
4189         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
4190         RC file font code.
4191
4192 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
4193
4194         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
4195         Add function to load a GdkFont from a PangoFontDescription.
4196
4197 2000-05-29  Tor Lillqvist  <tml@iki.fi>
4198
4199         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
4200         variable should be of type GdkEventPrivate.
4201
4202 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
4203
4204         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
4205         to have any widget for the label, use a GtkLabel widget
4206         to display the text. (Based partially on a patch from
4207         Anders Carlson.)
4208
4209         (Quite a bit of code reorganization - strip 90% of the
4210         guts out of gtkaspectframe and add a single virtual
4211         func to GtkFrameClass - compute_child_allocation.)
4212
4213 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
4214
4215         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
4216         (Removed clist->row_center_offset field because caching
4217         it wasn't saving time or code, added private function
4218         _gtk_clist_create_cell_layout()).
4219
4220 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
4221
4222         * gtk/gtkaccellabel.c: Pangoized.
4223
4224         * gtk/[hv]ruler.c: Pangoized
4225
4226 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
4227
4228         * gtk/gtkfilesel.c (gtk_file_selection_init):
4229         Use gtk_clist_set_column_auto_resize() to remove need
4230         need for manual column width computations.
4231
4232 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
4233
4234         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
4235         ensuring Pango correctness, and considerably simplifying the
4236         code.
4237         
4238         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
4239
4240         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
4241         getting of numbers of lines.
4242
4243         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
4244         to the actual requested width of the lable, not to the wrap
4245         width we set.
4246
4247         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
4248
4249         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
4250           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
4251
4252         * gtk/gtktextview.c: Fix structure inheritance.
4253
4254         * gtk/gtkprogressbar.c: Pangoize.
4255
4256 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
4257
4258         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
4259         in a function.
4260
4261         * gtk/gtktextlayout.c (find_display_line_above): Fixed
4262         bug with computing line tops.
4263
4264         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
4265
4266 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
4267
4268         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
4269         and y_offset coordinates to do what we need now. (The offset between
4270         buffer and layout coordinates has been reintroduced, but is a 
4271         bit different than before.)
4272
4273         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
4274         handle the adjustments ourselves, and scroll as necessary using
4275         the new gdk_window_scroll().
4276         
4277         The advantage of this is that when we are incrementally revalidating,
4278         we are essentially rearranging things around the visible portion
4279         of the screen. With the old setup, the visible portion of the
4280         screen was moved around in the layout, so scrolling and redrawing
4281         to track that caused jumping of the display. Since we now
4282         control the scrolling ourselves, we can suppress this and
4283         only redraw when things actually change.
4284
4285 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
4286
4287         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
4288         the region not just redisplay it after-all, since we store the
4289         cursors in the LineDisplay. (Ugly interactions here between
4290         GtkLayout and GtkTextBTree here.)
4291         
4292         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
4293
4294 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
4295
4296         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
4297         Added function to scroll contents of a window while keeping the
4298         window constant. Works by XCopyArea or guffaw-scrolling depending
4299         on the details of how the window is set up. (guffaw-scrolling
4300         still needs to be filled in.)
4301
4302 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
4303
4304         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
4305         move the debugging that was tied to a global variable
4306         to that.
4307
4308         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
4309
4310         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
4311         validated flag, in line data instead of setting height/width to
4312         -1. This allows us to perform operations with partially invalid
4313         buffer (using the old size for invalid lines) and thus to do
4314         incremental vaidation. Keep height/width aggregates up to date
4315         when deleting text and rebalancing the tree.
4316
4317         * gtk/gtktextbtree.[ch]: Add functions validate a line
4318         (gtk_text_btree_validate_line), and to validate up
4319         to a number of pixels (gtk_text_btree_validate).
4320
4321         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
4322         that indicates that something is changed and a revalidation
4323         pass is needed. Change ::need_repaint to ::changed, and
4324         make it take old and new yranges instead of a rectangle.
4325
4326         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
4327         the line_data_destroy() function from 
4328         gtk_text_btree_add_view() to a virtual function in 
4329         GtkTextLayout
4330
4331         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
4332         since we are handling partial repaints in a different fashion
4333         now.
4334
4335         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
4336         of the selection instead of queueing a repaint on the
4337         entire widget.
4338
4339         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
4340         get_selection_bounds() down to btree, make the function
4341         in buffer a wrapper around the btree function.
4342
4343         * gtk/gtktextlayout.[ch]: Add functions to check if the
4344         layout is valid and to recompute either a range of pixels
4345         aroudn a line or a certain total number of pixels.
4346
4347         * gtk/gtktextlayout.[ch]: Cache a single line display;
4348         now that we only redraw the needed portions, the hit rate
4349         for this cache is quite high.
4350         
4351         * gtk/gtktextview.[ch]: Keep track of the first paragraph
4352         on the screen so that when re-laying-out the buffer, we can
4353         keep the same place. This requires connecting to ::value_changed
4354         on the adjustments
4355
4356         * gtk/gtktextview.[ch]: Add idle functions to revalidate
4357         the buffer after we receive an ::invalidated signal.
4358         
4359 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
4360
4361         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
4362         to max of allocation and layout size, not just to the
4363         layout size.
4364
4365         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
4366         Invalidate window so it gets redrawn properly.
4367
4368         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
4369         to mean the entire window.
4370
4371         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
4372         into public header.
4373
4374 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4375
4376         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
4377         to get the name of a mark.
4378
4379         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
4380         to find the paragraph from a y position.
4381
4382 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
4383
4384         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
4385         nodes have width/height >= 0, not > 0.
4386
4387 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
4388
4389         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
4390         Add a size_only flag, so when we only need the size, we don't create
4391         useless appearance attributes.
4392
4393         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
4394         duplicate setting of font description.
4395
4396         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
4397
4398 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
4399
4400         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
4401         EXTRA_DIST. It does not work well when the file that
4402         everything depends on is not in the tarball.
4403
4404 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
4405
4406         * gtk/testgtk.c: Some hacks and fixes so that it basically
4407         works when not sitting in the GTK+ build tree.
4408
4409 2000-05-03  Havoc Pennington  <hp@redhat.com>
4410
4411         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
4412         Properly determine the ordering of the tag root and the current
4413         line within the tree. Previous algorithm only worked if the tag
4414         root's immediate parent was the common root of both the current
4415         line and the tag root.
4416
4417 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
4418
4419         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
4420         alignment.
4421
4422         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
4423         the widget text directional dynamically.
4424
4425         * gtk/gtktextview.[ch]: Added functions to get and set default
4426         wrap mode.
4427
4428 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
4429
4430         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
4431         in cursor location computation.
4432
4433 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
4434
4435         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
4436         vadjusment values properly when layout gets smaller.
4437
4438         * gtk/gtktextview.c (need_repaint_handler): Areas being
4439         passed in are far completely inaccurate, and sometimes
4440         too small, so, for now, just queue a redraw on the
4441         whole visible region.
4442
4443 2000-04-25  Havoc Pennington  <hp@redhat.com>
4444
4445         * gtk/gtktextbtree.c (summary_destroy): new function to 
4446         destroy tag summary nodes
4447         (gtk_text_line_next_could_contain_tag): this function was 
4448         totally broken if the line passed in wasn't below the tag
4449         root. Fix it.
4450         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
4451         "wildcard" case, we have to do a linear scan. Blah.
4452         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
4453         we have to do the linear scan
4454         (tag_removed_cb): When a tag is removed from the tag table, 
4455         remove the GtkTextTagInfo node from the btree.
4456         (gtk_text_btree_spew): Implement the spew function, for 
4457         our debugging pleasure.
4458
4459 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
4460
4461         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
4462         a problem with referring to the wrong buffer.
4463
4464         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
4465
4466         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
4467         font description to gtk_style_new() - otherwise things
4468         don't work without a .gtkrc file.
4469
4470         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
4471         tags table if we create it ourself, too.
4472
4473         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
4474         it was conflicting with XKB modifiers.
4475
4476         * gtk/gtktextview.[ch]: Add simple support for 
4477         GtkIMContext.
4478
4479 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
4480
4481         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
4482         with deletion from last commit.
4483
4484 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
4485
4486         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
4487         in the context from the current locale.
4488         
4489         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
4490         context, not hardcoded value.
4491
4492         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
4493         not logical.
4494
4495 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
4496
4497         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
4498         attributes - that doesn't handle partial-glyph selection
4499         properly. Instead use new pango_layout_line_get_x_ranges()
4500         functionality to draw the selection.
4501
4502         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
4503         now properly handles out-of-range coordinates.
4504
4505         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
4506
4507         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
4508         public.
4509
4510         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
4511         for paragraphs opposite to the base direction of the widget.
4512
4513         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
4514
4515         * gtk/gtktextlayout.c: Don't split segments on marks, since that
4516         causes Arabic words to reshape as you cursor through.
4517
4518         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
4519         cursor position when moving vertically with the arrow keys and
4520         scrolling with page-up/page-down. (Arrow keys save only the X,
4521         scrolling saves both X and Y.)
4522
4523         This means you can line-up / line-down or page-up / page-down
4524         without losing your place, and also that moving vertically
4525         with the cursor keys keeps the same X position, not the same
4526         character count:
4527
4528         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
4529         arrow keys move by display lines, not paragraphs.
4530
4531 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
4532
4533         * gtk/gtklayout.c: Make sure that the bin window is at least
4534         as big as the allocation. (Should we also make sure that the
4535         bin window is big enough to completely cover widget->window?)
4536
4537         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
4538         function to get the onscreen rectangle.
4539
4540         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
4541         for offsets in window coordinates.
4542
4543 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
4544
4545         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
4546         confusion.
4547
4548         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
4549         from the widget direction.
4550
4551         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
4552         Add a "direction" attribute.
4553
4554         * gtk/gtktextview.c: global s/tkxt/text_view/.
4555
4556         * gtk/testtext.c: Added long block of text in Arabic, to test out
4557         the direction attributes. (Some problems with the shaping system
4558         for arabic become obvious - like the fact the cursor splits words
4559         into unjoined pieces.)
4560
4561 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
4562
4563         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
4564
4565         * gtk/gtktextlayout.c: Fix up alignment.
4566
4567         * gtk/testtext.c: Add some tests for centering, wrapping.
4568
4569 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
4570
4571         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
4572         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
4573         If we wrote GTK+-specific layout-render function this could just replace
4574         the draw_layout() operation in the vtable.
4575
4576         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
4577         pango_layout_get_cursor_pos() and use that function.
4578
4579         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
4580         is a non-static symbol.
4581
4582         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
4583         with gtk_text_btree_find_line_by_y()
4584
4585         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
4586         renderer that handles GtkTextAppearance attributes.
4587
4588         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
4589
4590           - Move the values in the style that don't affect geometry into a
4591             GtkTextAppearance structure.
4592           - Change underline to take a PangoUnderline and "font" a string
4593             representation of a font description
4594           - Add a "font_desc" attribute which takes a FontDescription structure.
4595
4596         * gtk/gtktextlayout.[ch]:
4597
4598           - Get rid of the display-line list per each line. Instead, we
4599             generate, on demand, a GtkTextLineDisplay structure which]
4600             contains a PangoLayout * and other necesary information
4601             (offsets, cursor locations) for displaying a paragraph.
4602           - Get rid of the code to wrap lines, create display chunks,
4603             etc. Instead, we just go through a paragraph and convert
4604             it into the necessary inputs to a PangoLayout.
4605           - Implement a new attribute type, GtkTextAttrAppearance. This
4606             holds a GtkTextAppearance, and is used to pass colors, 
4607             stipple, etc, through from the layout to the display without
4608             having to use lots and lots of individual attributes.
4609           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
4610             in terms of PangoLayout functions.
4611         
4612         * gtk/gtktextview.c: 
4613          
4614           - Handle passing the necessary PangoContext to the layout
4615           - Some fixups in painting to deal with the automatic backing store
4616             and offsetting of GTK+-1.4
4617           - Add a style_set handler so that the default style reacts
4618             properly to theme changes.
4619         
4620         * gtk/gtktext?*.[ch]: Random code-style fixes.
4621
4622         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
4623
4624 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
4625
4626         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
4627         in original form preparatory to Pango-ization and gdkimcontext-ization.
4628
4629 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
4630
4631         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
4632         so that we can derive from gtkimcontext in language bindings properly.
4633
4634 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
4635
4636         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
4637         Add a compose table including (almost) all the compose combinations
4638         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
4639         data in the XIM implementation.
4640
4641         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
4642         Moved functions to convert keyvalues from and to unicode here from
4643         the win32 port and made them public.
4644
4645 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
4646
4647         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
4648
4649 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
4650
4651         * gtk/gtkimcontext.[ch]: Base class for new input context system
4652
4653         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
4654         the real input context implementation to be loaded from modules
4655         and switched on the fly.
4656
4657         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
4658         context that just does direct keysymbol => unicode translation.
4659
4660         * gtk/gtkentry.[ch]: Start switching editing over to using
4661         GtkInputContext. (No handling of preedit yet.)
4662
4663 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
4664
4665         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
4666         many substitutions. (klass should not be subsituted.)
4667
4668 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
4669
4670         * configure.in: Add checks for Pango
4671
4672         * configure.in docs/Makefile.am: Add test for sgml2html
4673         and allow 'make dist' without building html, but print out
4674         warnings in that case. (For making snapshots)
4675
4676         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
4677         Add Pango libraries and C flags
4678
4679         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
4680         Add function (gdk_draw_layout) to draw a pango layout.
4681
4682         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
4683         for getting Pango contexts for GDK.
4684
4685         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
4686
4687         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
4688         editing.
4689
4690         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
4691         keysym => unicode translations. More languages can be added
4692         here, but real input-method support is needed.
4693
4694         * docs/Changes-1.4.txt: Added note about entry behavior.
4695         
4696         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
4697         to set the reading direction for a widget and the global direction.
4698         Add test which allows toggling the global direction. Two private
4699         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
4700
4701         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
4702           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
4703
4704         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
4705
4706         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
4707         underlining now handled by Pango.
4708
4709         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
4710         to RCStyle and Style. (Having both this and the old font name and GdkFont 
4711         is temporary.)
4712
4713         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
4714         convenience functions for creating contexts and layouts for widgets.
4715
4716         * gtk/testgtk.c: Enhance label tests with multilingual labels.
4717
4718 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
4719
4720         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
4721         titles to be active, even if they aren't visible.
4722         (gtk_clist_column_titles_passive):  Ditto.
4723
4724 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
4725
4726         * gtkmenu.c:
4727         * gtkmenu.h:
4728         * gtktypeutils.h: Spelling/grammar fixes in comments.
4729
4730 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
4731
4732         * gdk/nanox/*.h: add missing header files.
4733
4734 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
4735
4736         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
4737         send_event to TRUE.
4738         (gtk_drawing_area_size): queue a resize.
4739
4740 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
4741
4742         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
4743         the handlers, also invalidate them. bug nailed down by Karl Nelson
4744         <kenelson@ece.ucdavis.edu>.
4745
4746 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
4747
4748         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
4749         "(nil)" foundries, patch from Grigorios Magklis.
4750
4751         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
4752         on non-available fonts, based on a patch by Grigorios Magklis
4753         <maglis@cs.rochester.edu>.
4754
4755 2000-05-18  Elliot Lee  <sopwith@redhat.com>
4756
4757         * gdk/x11/gdkregion-generic.c: If a region does not have any
4758         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
4759         instead of GDK_OVERLAP_RECTANGLE_IN.
4760
4761 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
4762
4763         * gtk/gtklayout.c (gtk_layout_map): Remove references to
4764         OFFSCREEN, as it is no longer necessary.
4765
4766 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
4767
4768         * gtk/gtkcolorsel.c: Patch from David Santiago
4769         <mrcooger@cyberverse.com> to change things so that the 
4770         indicator of the active palette entry is done independently,
4771         not via the focus, since it should always be visible.
4772
4773 2000-05-17  Tor Lillqvist  <tml@iki.fi>
4774
4775         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
4776         refcount leaks as in the X11 backend.
4777
4778         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
4779         cosmetics.
4780
4781         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
4782         backend. Add _gdk_windowing_window_destroy().
4783
4784         * gtk/gtkcolorsel.c: Include correct backend-specific header.
4785         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
4786         either, but these probably do exist on nanox?)
4787         
4788         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
4789         which isn't necessarily defined by <math.h>.
4790
4791         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
4792         ancestry past GtkObject.
4793
4794         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
4795         from DLL on Win32.
4796
4797         * gtk/gtk.def: Update corresponding to recent changes.
4798
4799         * gtk/makefile.{cygwin,msc}: Updates.
4800
4801 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
4802
4803         * docs/Changes-1.4.txt: A bit of editing.
4804
4805         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
4806         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
4807         to clear the update area for the window, and clear it
4808         when hiding a window.
4809
4810         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
4811         if window destroyed.
4812
4813         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
4814
4815         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
4816         gdk_window_destroy() to the generic code, since there was a lot of 
4817         window-system-independent logic it in. Add a function:
4818         
4819          _gdk_window_destroy() 
4820
4821         to the internal API to destroy a window without unreferencing it.
4822         Add a function:
4823
4824          _gdk_windowing_window_destroy()
4825
4826         That does the windowing-system-dependent part of destroying 
4827         the window.
4828
4829 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
4830
4831         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
4832
4833 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
4834
4835         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
4836         Make gtk_widget_shape_combine_mask() keep a reference count on
4837         the pixmap since it keeps it around.
4838
4839 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
4840
4841         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
4842         leak.
4843
4844         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
4845         leak with event filters.
4846
4847 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
4848
4849         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
4850         signal handlers with the right data arguments. (Fixes
4851         some warnings when a widget was repeatedly set as a drag
4852         destination.)
4853
4854         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
4855         window so we can avoid avoid setting the DND properties on the
4856         toplevel window repeatedly.
4857
4858 2000-05-13  Tor Lillqvist  <tml@iki.fi>
4859
4860         * gdk/win32/gdkwin32.h: Define more message types missing from
4861         mingw headers.
4862
4863         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
4864         call gdk_window_destroy_notify(). It was never called. This
4865         probably meant that the GdkWindow was never freed. Thanks Owen for
4866         noticing (!).
4867
4868         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
4869         window as destroyed before calling DestroyWindow(). DestroyWindow()
4870         causes a call to the window procedure (gdk_WindowProc), which
4871         calls gdk_event_translate(), which calls
4872         gdk_window_destroy_notify(), which gets confused unless the window
4873         is set as destroyed.
4874
4875         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
4876         this function to indicate it's win32 only. Put inside #ifdef
4877         G_ENABLE_DEBUG.
4878
4879         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
4880         debugging function. (gdk_event_translate:) Add a default branch
4881         that uses the above function to print debug messages with all
4882         Windows messages symbolically.
4883
4884         * gdk/win32/gdkprivate-win32.h: Declare it, and
4885         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
4886
4887 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
4888
4889         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
4890         public header file.
4891
4892 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
4893
4894         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
4895
4896         * gtk/gtktext.c: made the adjustments no-construct args, simply
4897         provide default adjustments.
4898         (gtk_text_destroy): release adjustments.
4899
4900         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
4901         adjustment argument non-construct.
4902
4903         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
4904         instead of in finalize.
4905         (gtk_progress_get_text_from_value): 
4906         (gtk_progress_get_current_text): 
4907         (gtk_progress_set_value): 
4908         (gtk_progress_get_percentage_from_value): 
4909         (gtk_progress_get_current_percentage): 
4910         (gtk_progress_set_percentage): 
4911         (gtk_progress_configure): ensure an adjustment is present.
4912
4913 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
4914
4915         * gtk/gtkcolorsel.[hc]:
4916         * gtk/gtkcolorseldialog.[hc]:
4917         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
4918         their parent implementation, use bit fields for boolean values, don't
4919         create unused widgets, usage of glib types, braces go on their own
4920         lines, function argument alignment, #include directives etc. etc. etc..
4921
4922         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
4923
4924 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
4925
4926         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
4927
4928         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
4929         of NULL.
4930
4931         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
4932         to freed data.
4933         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
4934
4935         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
4936         to NULL when the toplevel is getting destroyed.
4937         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
4938         (gtk_menu_destroy): 
4939         (gtk_menu_init): store the information of whether we have to
4940         readd the initial child ref_count during destruction in a new
4941         GtkMenu field needs_destruction_ref_count.
4942
4943         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
4944         here, those reading: learn from my mistake! ;)
4945         in order for set_?adjustment to support a default adjustemnt if
4946         invoked with an adjustment pointer of NULL, the code read (pseudo):
4947         if (v->adjustment) unref (v->adjustment);
4948         if (!adjustment) adjustment = adjustment_new ();
4949         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
4950         now imagine the first unref to actually free the old adjustment and
4951         adjustment_new() creating a new adjustment from the very same memory
4952         portion. here, the latter comparision will unintendedly fail, and
4953         all hell breaks loose.
4954         (gtk_viewport_set_hadjustment):
4955         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
4956         after unreferencing it.
4957
4958         * gtk/gtkcontainer.[hc]: removed toplevel registration
4959         functions: gtk_container_register_toplevel(),
4960         gtk_container_unregister_toplevel() and
4961         gtk_container_get_toplevels() which had wrong semantics
4962         anyways: it didn't reference and copy the list.
4963
4964         * gtk/gtkwindow.c: we take over the container toplevel registration
4965         bussiness now. windows are registered across multiple destructions,
4966         untill they are finalized. the initial implicit reference count
4967         users are holding on windows is removed with the first destruction
4968         though.
4969         (gtk_window_init): ref & sink and set has_user_ref_count, got
4970         rid of gtk_container_register_toplevel() call. add window to
4971         toplevel_list.
4972         (gtk_window_destroy): unref the window if has_user_ref_count
4973         is still set, got rid of call to
4974         gtk_container_unregister_toplevel().
4975         (gtk_window_finalize): remove window from toplevel list.
4976         (gtk_window_list_toplevels): new function to return a newly
4977         created list with referenced toplevels.
4978         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
4979
4980         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
4981         adjustment a non-construct arg.
4982         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
4983         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
4984         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
4985
4986         * gtk/gtkrange.c: added some realized checks.
4987         (gtk_range_destroy): get rid of the h/v adjustments in the
4988         destroy handler instead of finalize. remove timer.
4989         (gtk_range_get_adjustment): demand create adjustment.
4990
4991         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
4992         we simply create them on demand now and get rid of them in
4993         the destroy handler.
4994         (gtk_viewport_destroy): get rid of the h/v adjustments in the
4995         destroy handler instead of finalize.
4996         (gtk_viewport_get_hadjustment): 
4997         (gtk_viewport_get_vadjustment): 
4998         (gtk_viewport_size_allocate): demand create h/v adjustment
4999         if required.
5000
5001         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
5002         gtk_widget_real_destroy () functionality.
5003         (gtk_widget_real_destroy): reinitialize with a new style, instead
5004         of setting widget->style to NULL.
5005
5006 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
5007
5008         * gtk/gtkcalendar.c:
5009         * gtk/gtkbutton.c: ported _get_type() implementation over to
5010         GType, either to preserve memchunks allocation facilities,
5011         or because Gtk+ 1.0 GtkTypeInfo was still being used.
5012
5013         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
5014         over. prepare for ::destroy to be emitted multiple times.
5015         removed reference tracer magic. chain into GObjectClass.shutdown()
5016         to emit ::destroy signal.
5017
5018         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
5019         fundamental.
5020
5021         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
5022         cludge.
5023
5024         * gtk/gtksocket.c:
5025         * gtk/gtkplug.c:
5026         * gtk/gtklayout.c:
5027         * gtk/gtklabel.c:
5028         * gtk/gtkargcollector.c:
5029         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
5030         not being a fundamental anymore, and to work with the new
5031         type system (nuked fundamental type varargs clutter).
5032
5033         * gtk/*.c: install finalize handlers in the GObjectClass
5034         part of the class structure.
5035         changed direct GTK_OBJECT()->klass accesses to
5036         GTK_*_GET_CLASS().
5037         changed direct object_class->type accesses to GTK_CLASS_TYPE().
5038
5039         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
5040         GType. made most of the GTK_*() type macros and Gtk* typedefs
5041         simple wrappers around macros and types provided by GType.
5042         most notably, a significant portion of the old API vanished:
5043         GTK_TYPE_MAKE(),
5044         GTK_TYPE_SEQNO(),
5045         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
5046         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
5047         GTK_TYPE_ARGS,
5048         GTK_TYPE_CALLBACK,
5049         GTK_TYPE_C_CALLBACK,
5050         GTK_TYPE_FOREIGN,
5051         GtkTypeQuery,
5052         gtk_type_query(),
5053         gtk_type_set_varargs_type(),
5054         gtk_type_get_varargs_type(),
5055         gtk_type_check_object_cast(),
5056         gtk_type_check_class_cast(),
5057         gtk_type_describe_tree(),
5058         gtk_type_describe_heritage(),
5059         gtk_type_free(),
5060         gtk_type_children_types(),
5061         gtk_type_set_chunk_alloc(),
5062         gtk_type_register_enum(),
5063         gtk_type_register_flags(),
5064         gtk_type_parent_class().
5065         replacements, where available are described in ../docs/Changes-1.4.txt.
5066         implemented compatibility functions for the remaining API.
5067
5068         * configure.in: depend on glib 1.3.1, use gobject module.
5069
5070 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
5071
5072         * TODO.xml: Various updates to current status.
5073
5074 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
5075
5076         * gtk.m4: Print out version when test succeeds.
5077
5078 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
5079
5080         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
5081         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
5082         
5083         (Original triangle color selector from Simon Budig
5084         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
5085         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
5086         Santiago <mrcooger@cyberverse.com>)
5087
5088         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
5089         out into a separate widget.
5090
5091         * gtk/testgtk.c: Add some checkbuttons for toggling palette
5092         and opacity controls.
5093
5094 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
5095
5096         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
5097         snuck in prematurely.
5098
5099 2000-05-07  Tor Lillqvist  <tml@iki.fi>
5100
5101         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
5102         had deleted a ! operator by mistake, which caused
5103         GDK_SELECTION_CLEAR events never to be generated, which caused
5104         only the first copy to the clipboard from an gtkeditable to
5105         actually cause a copy to the Windows clipboard.
5106
5107 2000-05-06  Tor Lillqvist  <tml@iki.fi>
5108
5109         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
5110         compilation, too. Current mingw gcc distributions include the
5111         necessary headers. Also the necessary IIDs are now in mingw
5112         headers/libraries, and own definitions unnecessary.
5113
5114         More hacking on OLE2 DND, still doesn't work though, and thus
5115         ifdeffed out.
5116
5117         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
5118         here, too.
5119
5120 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
5121
5122         * gdk/nanox/*: nano-X port work in progress.
5123         * gdk/simple.c: simple test for Gdk.
5124         * README.nanox: notes about the port: read this first!
5125         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
5126         with nano-X.
5127
5128 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
5129
5130         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
5131         gdk_window_clear() into common code, implement in terms of
5132         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
5133         not redirected to the backing rectangle.
5134
5135 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
5136
5137         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
5138         EXTRA_DIST. It does not work well when the file that
5139         everything depends on is not in the tarball.
5140
5141 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
5142
5143         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
5144         with recursion where process_updates() is called from
5145         an expose handler. (GtkTextView is highly broken in
5146         doing this, but it should work, so it is a nice test
5147         case.)
5148
5149 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5150
5151         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
5152         handle the case where updates are queued during processing of
5153         updates.
5154
5155 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
5156
5157         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
5158         window is on gdk_display - use that instead of segfaulting.
5159
5160 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
5161
5162         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
5163         broken and require an empty arg, give it to them.
5164
5165 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
5166
5167         * gtk/gtklabel.h: indentation fixes.
5168
5169 2000-05-02  Tor Lillqvist  <tml@iki.fi>
5170
5171         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
5172         draw too narrow or too low arcs, they seem to fail, at least with
5173         some display drivers.
5174
5175         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
5176
5177         Large changes to the Win32 backend, partially made necessary by
5178         the changes to the backend-independent internal
5179         structures. Attempts to implement similar backing store stuff as
5180         on X11. The current (CVS) version of the Win32 backend is *not* as
5181         stable as it was before the no-flicker branch was merged. A
5182         zipfile with that version is available from
5183         http://www.gimp.org/win32/. That should be use by "production"
5184         code until this CVS version is usable. (But note, the Win32
5185         backend has never been claimed to be "production quality".)
5186
5187         * README.win32: Add the above comment about versions.
5188
5189         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
5190
5191         * gdk/gdk.def: Update.
5192
5193         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
5194         presumably be replaced by some more better mechanism as 1.4 gets
5195         closer to release shape.
5196
5197         * gdk/makefile.{cygwin,msc}: Update.
5198
5199         * gdk/win32/*.c: Correct inclusions of the backend-specific and
5200         internal headers. Change code according to changes in these. Use
5201         gdk_drawable_*, not gdk_window_* where necessary.
5202
5203         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
5204         our old DND.
5205
5206         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
5207         to interpret single characters as UTF-8. Thanks to Hans Breuer.
5208         Use correct function name in warning messages.
5209
5210         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
5211         GSourceFuncs gdk_event_prepare and gdk_event_check.
5212         (gdk_event_get_graphics_expose): Do implement, use
5213         PeekMessage. Thanks to Hans Breuer.
5214         (event_mask_string): Debugging function to print an GdkEventMask.
5215         (gdk_pointer_grab): Use it.
5216
5217         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
5218         (old) book I used claimed was Hangul actually is CJK Unified
5219         Ideographs Extension A. Also, Hangul Syllables were missing.
5220         Improve logging.
5221
5222         * gdk/win32/gdkgc-win32.c: Largish changes.
5223
5224         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
5225         g_win32_getlocale() from GLib, and not setlocale() to get current
5226         locale name.
5227
5228         * gdk/win32/gdkprivate-win32.h
5229         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
5230         gdkwin32.h, similarily as in the X11 backend.
5231
5232         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
5233         assignment was used instead of equals in if test. Thanks to Hans
5234         Breuer.
5235
5236         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
5237         the X11 version.
5238
5239         * gdk/win32/makefile.{cygwin,msc}
5240         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
5241         path to the Win32 headers that works also with the mingw compiler.
5242
5243         * gtk/gtkstyle.c: Include <string.h>.
5244
5245 2000-04-26  Havoc Pennington  <hp@redhat.com>
5246
5247         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
5248         replacing the broken gtk_label_get ()
5249
5250 2000-04-15  Havoc Pennington  <hp@pobox.com>
5251
5252         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
5253         this keeps scanner scripts from getting confused.
5254
5255         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
5256         data, rather than void
5257
5258 2000-04-15  Tor Lillqvist  <tml@iki.fi>
5259
5260         * gtk/gtkclist.c (gtk_clist_motion)
5261         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
5262         with is_hint FALSE, get x and y from the event. They used to be
5263         used uninitialised. The Win32 backend never sends motion events
5264         marked as hints. This for instance fixes the annoying file and
5265         font selector behaviour in the Win32 version.
5266
5267 2000-04-14  Tor Lillqvist  <tml@iki.fi>
5268
5269         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
5270         gtk_private_n_signals variables, they are used by some software,
5271         sigh.
5272
5273         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
5274         installation directory from the Registry, where the installer
5275         should have put it.
5276
5277 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gdk/x11/Makefile.am: Fix problem with installation directory for
5280         gdkx.h
5281
5282         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
5283         <mrcooger@cyberverse.com> so that when selecting menus with the
5284         mouse, the first item will not be selected, but when selecting
5285         with an accelerator, or navigating left-right on a menubar with
5286         the menus popped up, the first item will be selected.
5287
5288 2000-04-05  Dan Damian  <dand@dnttm.ro>
5289
5290         * configure.in: Added "ro" to ALL_LINGUAS.
5291
5292 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
5293
5294         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
5295         indentation.
5296
5297         * Makefile.am (EXTRA_DIST): Fix typo.
5298
5299         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
5300         to catch gdkconfig.h
5301
5302         * gtk/gtkitemfactory.c: Added FIXME.
5303
5304 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
5305
5306         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
5307         s/return_if_fail/return_val_if_fail/g and add a return value.
5308
5309 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
5310
5311         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
5312         merge slipup.
5313
5314         * gdk/gdkinput.h: Fix missing line from merge.
5315
5316 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
5317
5318         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
5319         instead of gdkprivate.h.
5320
5321 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
5322
5323         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
5324         parent class to correctly be GtkDialogClass.
5325
5326 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
5327
5328         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
5329         toplevel windows and their immediate children by their parents,
5330         since the size of toplevel windows is out of our immediate
5331         control and we don't get any real benefit from trying to track
5332         this size for clipping.
5333
5334         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
5335         for input_only windows.
5336
5337         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
5338         to fix some hacks and make sure that we don't try to set the
5339         background of input only windows.
5340
5341 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
5342
5343         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
5344         the _really_ internal stuff, and leave gdkprivate.h for the fake private
5345         stuff that we've traditionally exposed.
5346
5347         * gdk/**.c: Use gdkinternals.h where appropriate.
5348
5349         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
5350         not include gdkprivate-x11.h, move all stuff of conceivable public
5351         interest into gdkx.h; keep all really private stuff in
5352         uninstalled header gdkprivate-x11.h.
5353
5354         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
5355         image->image_put on windows through a new function _gdk_window_draw_image()
5356         to allow us to do backing store for images. (Sort of ugly)
5357
5358         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
5359         contexts locally so that we can offset them properly when drawing 
5360         onto backing pixmaps.
5361
5362         * gdk/gdkinput.h: Reindented
5363
5364         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
5365         pixmap or color for the window, so we can properly initialize
5366         our double-buffer pixmaps, and also so that we temporarily set
5367         a background of None while scrolling.
5368
5369         * gdk/gdkregion.h: Revise region boolean operators to have an
5370         interface that is actually convenient - switch from creating new
5371         regions on every op, to "methods" that modify existing regions
5372         (A = A OP B). 3 argument forms which allow dest == src, would also
5373         be possible, but the current interfaces seem to map nicely
5374         onto what needs to be done. (There is quite a lot of region
5375         code in GDK now.)
5376
5377         * gdk/gdkregion.h: Add constructor from rectangle and a copy
5378         operator.
5379
5380         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
5381         gdkpoly-generic.h: Copy region code from Xlib, switch it over
5382         to 32 bit coordinates, modify it to be mostly GTK+ style
5383         and to have interfaces that match gdkregion.h.
5384
5385         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
5386         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
5387         create a backing pixmap and redirect all drawing to
5388         that backing pixmap until a matching gdk_window_end_paint().
5389
5390         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
5391         Create a special drawable class for GtkWindow's that 
5392         redirects the drawing to the backing pixmap as necessary
5393         and then calls the real operations in _gdk_windowing_window_class.
5394
5395         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
5396         Store invalid region for each window. Generate expose events for invalid
5397         region in an idle. This replaces both the expose compression
5398         and the redrawing queuing in GTK+. It is both more efficient and
5399         simpler than either one individually and far more so then the
5400         combination.
5401
5402         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
5403         Emulate 32 bit coordinates for windows with 16 bit coordinates
5404         by offsetting drawing, guffaw scrolling techniques and
5405         mapping/unmapping child windows as necessary.
5406
5407         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
5408         where, when invalid regions are processed, the region is stored,
5409         and if expose events come in that are detectably duplicate
5410         the processed exposes (by comparison of event serial numbers),
5411         the stored region is subtracted out of those exposes.
5412
5413         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
5414         regions newly exposed when scrolling or resizing windows.
5415         This, combined with forcing processesing of queued invalidated
5416         regions, gives nice flicker-free scrolling.
5417
5418         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
5419         invalidated regions after every scroll.
5420
5421         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
5422         emulation in GDK. Its, for all practical purposes just a
5423         GtkViewport/GtkFixed hybrid now.
5424
5425         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
5426         (16-bit) structures as necessary instead of just casting.
5427
5428         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
5429         in terms of the structures from gdkregion-generic.c, using appropriate
5430         offsets from GDK to X11 coordinates. Cache clip mask and
5431         origin and ts origin locally and only flush to the server
5432         when drawing, to avoid constantly setting and resetting these
5433         values when offsetting GC's for scrolling and backing pixmaps.
5434
5435         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
5436
5437         * gtk/gtkcontainer.c: Call process_all_updates at end
5438         of resizing to reduce flicker. (Avoids having redraw
5439         lag arbitrarily behind resize under some circumstances)
5440
5441         * gtk/gtkentry.c: Remove old backing store code, and simply take
5442         advantage of the new backing store capabilities of GDK.
5443
5444         * gtk/gtkmain.c: Simple implementation of widget backing
5445         store - simply push a paint while handling each expose.
5446         (Should really be configurable widget for widget.)
5447         
5448         * gtk/gtkwidget.c: Remove all the old complicated redraw
5449         code, and simply invalidate the GDK windows from
5450         gdk_window_queue_clear(), etc. (Sigh, so much carefully
5451         debugged complexity ... gone to the winds.)
5452
5453         Remove all the code for suppressing expose events while
5454         resizes are pending; this isn't needed since the invalid
5455         areas won't be processed until after the resizes are
5456         processed, since they are in a lower priority idle.
5457
5458 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
5459
5460         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
5461         and height of dest rectangle for non-intersecting rectangles.
5462
5463 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
5464
5465         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
5466         for GdkRectangle.
5467
5468 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
5469
5470         * gdk/gdk{events,image,private,types,window}.h
5471          gdk/x11/gdkinputprivate.h: Change all coordinates
5472          from int16 to int. Also, Change width and height from
5473          unsigned to signed to avoid all the stupid C 
5474          signedness bugs.
5475
5476 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
5477
5478         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
5479         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
5480         Add some more detailed checking.
5481
5482         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
5483         New function to retrieve the depth of a drawable.
5484
5485         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
5486         field, reorder fields to save memory. 
5487
5488 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
5489
5490         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
5491         of the background image instead of scaling the background down to
5492         a line.
5493
5494         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
5495         which temporarily set slider to wrong size.
5496
5497         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
5498         queue_clear().
5499
5500 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
5501
5502 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
5503
5504         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
5505
5506 2000-03-17  Tor Lillqvist  <tml@iki.fi>
5507
5508         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
5509         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
5510
5511         * gdk/win32/gdkfont-win32.c
5512         * gdk/win32/gdkproperty-win32.c
5513         * gdk/win32/gdkselection-win32.c
5514         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
5515         now declared such.
5516
5517 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
5518
5519         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
5520
5521 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
5522
5523         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
5524         is called without trapping X errors.
5525
5526 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
5527
5528         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
5529         way into the fontset lists.
5530
5531 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
5532
5533         * gtk/gtkthemes.h: add extern "C" scope.
5534
5535 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
5536
5537         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
5538         to make appends to the list constant. (gtk-guy-990901-0.patch)
5539
5540 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
5541
5542         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
5543         for the typename hash table.
5544
5545 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
5546
5547         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
5548         to make sure we never divide by zero. 
5549         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
5550
5551 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
5552
5553         * gtk/gtkfontsel.c: Apply patch from
5554         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
5555         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
5556
5557         Also, some cleanups in atom handling.
5558
5559 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
5560
5561         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
5562         not GtkWidget.
5563
5564 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
5565
5566         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
5567         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
5568         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
5569         more guint wrap-around bugs before going to bed.
5570
5571 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
5572
5573         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
5574         guint wrap arounds in allocation.width.
5575
5576         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
5577         process untill we fit the allocation given.
5578
5579 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
5580
5581         * gtk/gtkwidget.c:
5582         (gtk_widget_unrealize): guard widget access with ref/unref
5583         around signal emission.
5584         (gtk_widget_hide): same here, but also check its destroyed
5585         state before queueing a resize.
5586
5587 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
5588
5589         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
5590         of gtk_default_insensitive_bg as insensitive base color.
5591
5592         * gtk/gtktext.c (gtk_text_style_set): set the background color according
5593         to the widget's state.
5594         (gtk_text_realize): same here.
5595         (gtk_text_state_changed): same here.
5596         (draw_bg_rect): compare background color against base[] from
5597         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
5598
5599 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
5600
5601         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
5602         grabs are active, unless a delete event is send to the toplevel
5603         of the currently grab holding widget.
5604
5605 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
5606
5607         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
5608         debugging g_print's.
5609
5610 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
5611
5612         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
5613         ever make the scrolled-window requisition ever depend on the 
5614         visibility state of the scrollbars for the AUTOMATIC policy. 
5615         This breaks the GTK+ requisition model, and causes loops.
5616
5617 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
5618
5619         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
5620         the default font to avoid problems with XFree86-4.0 where the
5621         default charset is iso10646-1, not iso8859-1.
5622
5623 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
5624
5625         * acinclude.m4
5626         * config.guess
5627         * config.sub
5628         * ltconfig
5629         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
5630
5631         * gtk/Makefile.am: minor cosmetic consistency tweak
5632
5633 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
5634
5635         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
5636         the activate_time to 0, so that we handle a quick
5637         press/release press/release properly and don't suppress
5638         the second release. (Red Hat bug #7545)
5639
5640 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
5641
5642         * gtk/gtkctree.c (row_delete):
5643         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
5644         bugs with destruction notifier, *always* update internal
5645         structures *before* calling user code.
5646
5647 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
5648
5649         A few more fixes for bug #5487, #2051, #2677.
5650         * gtk/gtkclist.c : 
5651         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
5652         not GDK_BUTTON_PRESS.
5653         (resync_selection): resync only if selection_mode is
5654         GTK_SELECTION_EXTENDED
5655         * gtk/gtkctree.c (resync_selection): same here
5656
5657 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
5658
5659         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
5660         gdk_drag_get_selection() and gtk_menu_detach().
5661
5662         [ From Jeroen Ruigrok/Asmodai ]
5663
5664 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
5665
5666         * gtk/gtknotebook.c (gtk_notebook_size_request): 
5667         page->tab_label can be NULL.
5668
5669 2000-01-25  Havoc Pennington  <hp@pobox.com>
5670         
5671         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
5672         arg is boolean
5673
5674         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
5675
5676         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
5677
5678         * gdk/gdkproperty.c (gdk_property_get): return boolean
5679
5680         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
5681
5682         * gdk/gdkim.c (gdk_im_ready): return boolean
5683
5684         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
5685
5686         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
5687         glib clash, should fix glib)
5688
5689         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
5690         (gdk_get_show_events): return gboolean, and canonicalize 
5691         to TRUE/FALSE
5692
5693         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
5694         colormap is private
5695         (gdk_colors_alloc): gboolean whether to be contiguous
5696         (gdk_color_equal): return gboolean since we are a predicate
5697         and not a qsort() (this looks semi-wrong due to glib breakage,
5698         IMO glib should be fixed)
5699         
5700         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
5701         (gdk_get_use_xshm): return gboolean
5702         (gdk_pointer_is_grabbed): return gboolean
5703
5704         * gdk/gdk.h: Change prototypes to match all the above changes,
5705         and re-run egtk-format-protos as required.
5706
5707 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
5708
5709         * gtk/gtkctree.c (resync_selection): 
5710         * gtk/gtkclist.c (resync_selection):
5711
5712         Return immediately if clist->drag_pos < 0. This is a workaround
5713         for the corrupt state that the clist gets into when a
5714         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
5715
5716         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
5717         
5718         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
5719         variable from recent commit.
5720
5721 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
5722
5723         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
5724
5725 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
5726
5727         * gtk/Makefile.am: prefix all autogenerated source that get build in
5728         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
5729         in builddir. since we subsequently cd into srcdir for autogeneration,
5730         the paths have to be stripped from the target file names, thusly we
5731         use $(@F) as target names now.
5732         put a comment about configure.in's --disable-rebuilds option,
5733         which can be used for non-writable source directories, for development
5734         setups though, srcdir has to be *writable*.
5735
5736 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
5737
5738         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
5739           Finish the job of allowing event to be NULL.
5740           (Fixes bug #4283, reported by Chris Blizzard)
5741
5742         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
5743           things so that the cursor appears on screen, properly
5744           take into account INNER_BORDER.
5745           (Fixes bug #4754, reported by Antonio Campos)
5746
5747 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
5748
5749         * gtk/gtknotebook.c (gtk_notebook_map): Don't
5750           show the tab_label unless it itself is visible.
5751
5752           gtk/gtknotebook.c (gtk_notebook_size_request):
5753           Do a better job of making sure that the visibility
5754           of the tab label corresponds to whether it should
5755           be mapped or not.
5756
5757 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
5758
5759         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
5760           Use the requisition, not the allocation, since the
5761           allocation has not necessarily been computed yet.
5762           (Pointed out by Eugene Osintsev)
5763
5764 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
5765
5766         * gtk/gtkstyle.c (gtk_style_new): Dont' set
5767           style/base[GTK_STATE_INSENSITIVE] both to
5768           gtk_default_insensitive_bg!
5769           (Bug #2187, reported by Jonathan Blandford)
5770
5771         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
5772           Add Alt_L, Alt_R to list of invalid accelerators.
5773           (Bug #3736, reported by Vlad Harchev)
5774
5775 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
5776
5777         * gtk/gtkfilesel.c (open_ref_dir): Fix several
5778         bugs which occured after an attempt to open 
5779         invalid home directory left cmpl_state->reference_dir == NULL.
5780
5781          - completion on files in home directory didn't work
5782          - completion on an empty string caused  segfault
5783
5784          (Bug #3768, reported by Steve Ratcliffe)
5785
5786         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
5787         cut and paste error that was causing scales to
5788         be incorrectly positioned.
5789         (Bug #2956,
5790          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
5791
5792 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
5793
5794         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
5795         when checking for dcgettext, if we've found we needed
5796         it for dgettext.
5797 +
5798 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
5799
5800         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
5801         queue_clear on NO_WINDOW widgets during a reparent,
5802         since at that point the window and widget heirarchies
5803         are out of sync. This stops crashing in some cases
5804         (the scrolled window reparent test, for instance), and
5805         _probably_ won't cause drawing errors.
5806
5807         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
5808         test do what it was supposed to do and be robust against
5809         window closings, etc. (Bug #2443)
5810
5811 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
5812
5813         * gtk/gtkentry.c: Fix return values on mouse events.
5814         (Bug #2686, Sky <seb_sky@yahoo.com>)
5815
5816         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
5817         (pointed out by George Lebl)
5818
5819         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
5820         (From Ettore Perazzoli  <ettore@helixcode.com>)
5821  
5822 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
5823
5824         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
5825         clicks between rows or outside calender area correctly.
5826         (Patch from Damon Chaplin)
5827
5828         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
5829         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
5830           Call destroy function when overwriting existing data. 
5831           (Pointed out by Damon Chaplin)
5832
5833 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
5834
5835         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
5836           which was causing problems on various systems with Xmu.
5837           This hasn't been needed for a very long time.
5838           (Fixes #1185 3167)
5839
5840 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
5841
5842         * gdk/gdki18n.h: Include <ctype.h> when defining
5843           gdk_isw* in terms of is* as a fallback.
5844           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
5845
5846 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
5847
5848         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
5849           realize the widget when it is size allocated!
5850           (old, old bug)
5851
5852         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
5853           Removed unused call to gdk_window_get_size() that
5854           showed up when the above was fixed.
5855
5856 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
5857
5858         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
5859           fix up widget->window when the widget is a
5860           NO_WINDOW container widget.
5861
5862 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
5863
5864         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
5865           to account for the fact that feof() does _not_ 
5866           return TRUE on errors, and thus avoid infinite loops
5867           when trying to use gdk_pixmap_create_from_xpm()
5868           on unreadable values.
5869
5870 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
5871
5872         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
5873
5874 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
5875
5876         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
5877           gdk_gc_set_dashes to take gint8 instead of gchar to
5878           make it clearer that it is _not_ a NULL terminated string.
5879
5880         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
5881           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
5882           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
5883           arguments.
5884
5885 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
5886
5887         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
5888         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
5889         background size relative to our allocation, guard against small
5890         allocations, we may have not yet been size allocated.
5891
5892 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
5893
5894         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
5895         not just version == 3. We implement all 3 + most of 4 - 
5896         (we don't support matching text/plain;charset=iso-8859-1
5897         to a dest that expects text/plain). We'll still advertise
5898         3 to be safe, but any client implementing version >= 3
5899         must interoperate with 3.
5900         
5901 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
5902
5903         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
5904         background and gc members, add a warning in gtk_tooltips_set_color()
5905         indicating that this function is deprecated.
5906
5907 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
5908
5909         * docs/gtkfaq.sgml: FAQ Update:
5910           - Minor cleanups (Emmanuel, me)
5911           - New questions:
5912                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
5913                 How can I retrieve the text from a GtkMenuItem? (timj)
5914                 How do I validate/limit/filter the input to a GtkEntry? (me)
5915                 Memory does not seem to be released when I free the list
5916                         nodes I've allocated (timj)
5917
5918 2000-03-07  Tor Lillqvist  <tml@iki.fi>
5919
5920         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
5921         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
5922         for which it is no use to call GetLastError onWin9x.
5923         (gdk_other_api_failed) New function, for general error
5924         reporting without calling GetLastError.
5925         (gdk_win32_api_failed) OTOH, this function always calls
5926         GetLastError. (gdk_win32_last_error_string) Remove this function,
5927         GLib has the equivalent now.
5928
5929         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
5930         call them with function name, file name and line number in the
5931         arguments.
5932
5933         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
5934         functions.
5935         
5936         * gtk/gtk.def: Add some missing entry points.
5937
5938         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
5939         gtk_paned_set_gutter_size, which don't exist any longer, as void.
5940         
5941         Fixes by Hans Breuer:
5942
5943         * gdk/makefile.msc: Update for debugging.
5944
5945         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
5946         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
5947         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
5948         in the dash_list.
5949
5950         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
5951         the x11 backend.
5952
5953         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
5954
5955         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
5956
5957 2000-03-04  Tor Lillqvist  <tml@iki.fi>
5958
5959         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
5960         just pixel value of background colour.
5961
5962         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
5963         containing code snippet previously duplicated in a couple of
5964         places.
5965         
5966         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
5967         gdk_colormap_color.
5968
5969         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
5970         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
5971         events for autorepeated Shift, Control and Alt keys. Use
5972         gdk_colormap_color.
5973
5974         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
5975         pointer is inside the window the cursor of which we are setting,
5976         call SetCursor immediately.
5977
5978         * gdk/win32/makefile.cygwin
5979         * gtk/makefile.cygwin: If we don't have the build number stamp
5980         file, use zero.
5981
5982         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
5983         gtk_paned_set_gutter_size as empty.
5984
5985         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
5986         
5987 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
5988
5989         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
5990           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
5991           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
5992           docs/gtk_tut.sgml docs/gtk.texi TODO:
5993
5994           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
5995
5996 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
5997
5998         * gtk/gtkcalendar.c: Implement num_marked_dates,
5999           and don't emit mutiple day_selected signals on
6000           month_prev.
6001
6002 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
6003
6004         * docs/make-todo (lineno): let title and logo be configurable so
6005         that GNOME can use this script too.
6006
6007         * TODO.xml: added logourl and a title
6008
6009 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
6010
6011         * TODO.xml: Added some UI items, and an explanatory
6012         comment at the top of the file.
6013
6014 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
6015
6016         * TODO.xml: some updates, added abunch of new entries.
6017         a note for those fiddeling with this file, when done
6018         with it, invoke:
6019         $ ./docs/make-todo TODO.xml >/dev/null
6020         and correct output errors before comitting changes.
6021
6022 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
6023
6024         * TODO.xml: Added XML-structured TODO file.
6025         * docs/make-todo: python script to turn TODO.xml into
6026           pretty XML output. 
6027
6028 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
6029
6030         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
6031         the function to let it draw the seven dots, instead of the old,
6032         much maligned, method.
6033         (draw_dot): New function to draw a dot.
6034
6035         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
6036         to draw the handle inside the border width as opposed to outside.
6037         Use paint function instead of gdk_draw_point.
6038
6039         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
6040         to draw the handle inside the border width as opposed to outside.
6041         Use paint function instead of gdk_draw_point.
6042
6043         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
6044         Change indenting to be more GTK like.
6045
6046 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
6047
6048         * docs/gtk_tut.sgml: New section on GtkCalendar
6049         * examples/calendar: Update example code
6050
6051 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
6052
6053         * docs/gtkfaq.sgml: FAQ Update
6054
6055 2000-02-19  Anders Carlsson  <andersca@gnu.org>
6056
6057         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
6058         to prevent the scroll event to be propagated upwards.
6059
6060 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
6061
6062         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
6063         OwnerGrabButtonMask from button entries for
6064         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
6065
6066         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
6067         to the event mask (which will result in button/press release
6068         being added to the event mask on Unix) so scrolling works
6069         for layouts in scroll windows.
6070
6071         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
6072
6073         Patch from Anders Carlsson  <andersca@gnu.org> to add
6074         a scroll event.
6075
6076         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
6077         scrolling to the "Test Scrolling" part of testgtk.
6078  
6079         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
6080  
6081         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
6082         it against GDK_SCROLL.
6083  
6084         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
6085         way of mouse wheel scrolling.
6086  
6087         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
6088  
6089         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
6090  
6091         * gtk/gtkmain.c: Removed previous mouse wheel hack.
6092  
6093         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
6094         gdk_event_mask_table.
6095  
6096         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
6097         GdkEventScroll handler.
6098  
6099         * gdk/gdkevents.h: Added GdkEventScroll structure.
6100  
6101 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
6102
6103         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
6104         and Anders Carlsson to change the Paned widgets so that they
6105         can be dragged from anywhere along the length. Also change
6106         the way that this is drawn to make this apparent.
6107
6108         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
6109         from George Lebl to check that option_menu->menu is present
6110         before getting history.
6111
6112 2000-02-14  Tor Lillqvist  <tml@iki.fi>
6113
6114         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
6115         before the assertion for non-NULL segment list.
6116
6117         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
6118         Seems that pattern brushes *must* be 8x8 pixels! At least on my
6119         machine, but it might be display driver dependent. Sigh, so make
6120         sure the stipple is that size. Does Windows suck or what?
6121
6122         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
6123         places.
6124
6125 2000-02-13  Havoc Pennington  <hp@pobox.com>
6126
6127         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
6128         refcount to 1
6129         (gdk_cursor_new): init refcount to 1
6130
6131         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
6132
6133 2000-02-13  Tor Lillqvist  <tml@iki.fi>
6134
6135         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
6136         so that we don't have to do unnecessary settings to the HDC.
6137
6138         * gdk/win32/gdkdrawable-win32.c
6139         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
6140         gdk_gc_predraw.
6141
6142         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
6143         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
6144         GDI paths, call WidenPath to get the outline of the stroken path,
6145         and then fill the outline (with the brush that was built from the
6146         stipple).
6147
6148         * gdk/win32/gdkgc-win32.c: Factor out common code from
6149         _gdk_win32_gc_new and gdk_win32_gc_set_values into
6150         gdk_win32_gc_values_to_win32values. Use correct colour for
6151         SetBkColor() (Until now the code actually used a random colour in
6152         the call to SetBkColor()... but that didn't show up as not many
6153         GDI APIs use the background colour. Pattern (opaque stippled)
6154         brushes do.)
6155
6156         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
6157         gdk_win32_api_failed): New functions for error logging.
6158
6159         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
6160         WIN32_API_FAILED to call them, passing function or file name and
6161         line number.
6162
6163         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
6164
6165         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
6166         GdkColor for foreground and background in GdkGCWin32Data.
6167
6168         * gdk/makefile.cygwin: Link in the resource object separately.
6169
6170         * gdk/win32/rc/gdk.rc
6171         * gtk/gtk.rc (New file)
6172         * gdk/win32/makefile.cygwin
6173         * gtk/makefile.cygwin: Update build number in DLLs automatically,
6174         as in GLib.
6175
6176 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
6177
6178         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
6179         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
6180         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
6181         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
6182         parameters given and cursor->ref_count. coding style fixups.
6183
6184         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
6185         not GtkWidget.
6186         
6187         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
6188         fix up widget macros and add _GET_CLASS() variant.
6189         
6190         * gtk/*.c: some GtkType fixups.
6191
6192 2000-02-09  Tor Lillqvist  <tml@iki.fi>
6193
6194         * gdk/win32/gdkproperty-win32.c
6195         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
6196         were reversed.
6197
6198 2000-02-04  Tor Lillqvist  <tml@iki.fi>
6199
6200         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
6201         g_filename_to_utf8 to convert the font names Windows gives us from
6202         whatever is the default codepage to UTF-8.
6203         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
6204         in the other direction.
6205
6206         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
6207         error in debugging output.
6208
6209 2000-02-02  Tor Lillqvist  <tml@iki.fi>
6210
6211         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
6212         and height parameters to gdk_window_clear_area(). Not minus one.
6213
6214 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
6215
6216         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
6217         checks if the widget passed to gtk_drag_get_data() was not the
6218         dest widget.
6219
6220 2000-02-01  Tor Lillqvist  <tml@iki.fi>
6221
6222         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
6223         g_filename_from_utf8 functions (which were added a moment ago to
6224         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
6225         size buffers.
6226
6227         gtk_file_selection_get_filename returns the filename in the C
6228         runtime encoding. It calls g_filename_from_utf8, but copies the
6229         returned string to a static buffer, which is returned. I think
6230         this is better than returning the result from g_filename_from_utf8
6231         directly, which would mean all apps that use it would have to free
6232         the return value. Or should this function care about this issue at
6233         all? Maybe a new function with clearly defined semantics.
6234
6235         * gtk/gtkfilesel.h: Add comment about
6236         gtk_file_selection_get_filename returning the filename in the C
6237         runtime's encoding.
6238
6239         * README.win32
6240         * gdk/gdk.def
6241         * gdk/makefile.{cygwin,msc}
6242         * gtk/gtk.def: Updates.
6243
6244         * gdk/gdkcursor-win32.c: Initialise refcount.
6245
6246 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
6247
6248         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
6249
6250 2000-01-30  Havoc Pennington  <hp@pobox.com>
6251
6252         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
6253         destroy
6254
6255         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
6256
6257         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
6258         implemented in platform-specific code
6259
6260         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
6261
6262         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
6263         underscore in front
6264
6265         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
6266         put an underscore in front
6267
6268         * gdk/gdkcursor.c: new file, implements
6269         gdk_cursor_ref/gdk_cursor_unref
6270
6271         * gdk/gdkcursor.h: Refcount GdkCursor
6272
6273         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
6274
6275 2000-01-29  Tor Lillqvist  <tml@iki.fi>
6276
6277         * gdk/gdkwindow.h
6278         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
6279
6280 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
6281
6282         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
6283         structures to properly inherit from GtkWidget not GtkBin.
6284
6285 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
6286
6287         * gtk+.spec.in: Added lib/gtk+/include/* to %files
6288         (bug #5178 - Peter Wainright)
6289         
6290         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
6291         so that it will be installed.
6292         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
6293
6294 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
6295
6296         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
6297         for the GtkStyleClass vtable const.
6298
6299         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
6300         take a const string argument like GtkTranslateFunc. This will
6301         require changes in use code.
6302
6303 2000-01-19  Tor Lillqvist  <tml@iki.fi>
6304
6305         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
6306         semantics (to mimic the X11 backend, which just calls XClearArea)
6307         is to check for zero width (and height), and in that case use the
6308         window's width minus x (height minus y). This fixes for instance
6309         some redraw problems with gtkclist, which were easily noticeable
6310         in the gtk file selection widget.
6311
6312         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
6313         windows.
6314
6315 2000-01-13  Tor Lillqvist  <tml@iki.fi>
6316
6317         * configure.in
6318         * gdk/Makefile.am
6319         * gdk/x11/Makefile.am
6320         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
6321         (bug #5177).
6322         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
6323         out later.
6324
6325 2000-01-09  Tor Lillqvist  <tml@iki.fi>
6326
6327         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
6328         WM_MOVE for iconified or invisible windows. This fixes various
6329         problems when minimising windows. Thanks to Bernd Herd.
6330
6331 2000-01-05  Tor Lillqvist  <tml@iki.fi>
6332
6333         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
6334         backend's draw_lines method, not draw_points.
6335
6336 2000-01-02  Tor Lillqvist  <tml@iki.fi>
6337
6338         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
6339         before Owen's reorganisation: Don't have queued_events and
6340         queued_tail statics in this file, but use gdk_queued_events and
6341         gdk_queued_tail. This makes exposure event compression work again.
6342
6343         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
6344         seem to be needed?
6345
6346 1999-12-30  Tor Lillqvist  <tml@iki.fi>
6347
6348         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
6349         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
6350         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
6351         doesn't do anything.
6352
6353         * gdk/gdk.def: Add gdk_xid_table_insert.
6354
6355         * gdk/win32/gdkprivate-win32.h
6356         * gdk/win32/gdkevents-win32.c
6357         * gdk/win32/gdkinput-win32.c
6358         
6359         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
6360         extension_events field in the GdkWindowWin32Data struct. Use only
6361         the extension_events field in GdkWindowPrivate. Previously one was
6362         set, and the other one tested, which broke tablet
6363         functionality. Thanks to Keishi Suenaga for pointing this out.
6364
6365 1999-12-18  Tor Lillqvist  <tml@iki.fi>
6366
6367         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
6368         When handling a single character (text length == 1), don't handle
6369         it as if it was UTF-8.
6370
6371 1999-12-11  Tor Lillqvist  <tml@iki.fi>
6372
6373         * Makefile.am: Distribute README.win32.
6374         
6375         * gdk/Makefile.am
6376         * gdk/win32/Makefile.am: Distribute Win32 files.
6377
6378         * gdk/makefile.msc: New file.
6379
6380         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
6381         after label).
6382
6383         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
6384         gdk_error_code as GDKVAR, as they are referred outside GDK.
6385
6386         * gdk/win32/makefile.msc: Update.
6387
6388         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
6389         tweaks. Check only if at least one of those Unicode subrange bits
6390         we care for is set. If no code page bits are set, guess (wildly)
6391         based on the charset.
6392
6393         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
6394
6395         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
6396         non-NULL.
6397
6398         * gtk/gtkdnd.c
6399         * gtk/gtklayout.c
6400         * gtk/gtkplug.c
6401         * gtk/gtkselection.c
6402         * gtk/gtksocket.c
6403         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
6404         appropriate. There must be a cleaner way to handle this?
6405
6406         * gtk/gtkrc.c: Must include windows.h on Win32.
6407
6408         * gtk/testgtk.c: No need to include gdkx.h.
6409
6410         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
6411
6412 1999-12-07  Tor Lillqvist  <tml@iki.fi>
6413
6414         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
6415         the rbearing is set to the same as the width, but this should be
6416         fixed.
6417
6418 1999-12-06  Tor Lillqvist  <tml@iki.fi>
6419
6420         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
6421         function. If Windows doesn't tell us what Unicode subranges a font
6422         covers, guesstimate based on the codepages it covers. This will
6423         hopefully help those Windows versions or fonts that don't give us
6424         any useful Unicode subrange information with GetTextCharsetInfo.
6425         Call this function in gdk_font_load_internal.
6426
6427         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
6428         minor changes.
6429
6430 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
6431
6432         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
6433         New function, long needed.
6434
6435 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
6436
6437         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
6438         only_if_exists argument of gdk_atom_intern to
6439         bool.
6440
6441 1999-11-25  Tor Lillqvist  <tml@iki.fi>
6442
6443         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
6444         Fix two copy&paste errors.
6445
6446         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
6447         win32 has changed.
6448
6449         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
6450         GdkWin32SingleFont struct.
6451
6452         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
6453         subranges of loaded fonts. Clear font signature first, in case
6454         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
6455         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
6456
6457         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
6458         Unoffset clip region.
6459
6460 1999-11-23  Tor Lillqvist  <tml@iki.fi>
6461
6462         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
6463         event->any.window before calling filter functions.
6464
6465 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
6466
6467         * gtk/gtkgamma.h: Adapt cast macros to standard.
6468
6469 [ Merges from 1.2 ]
6470
6471 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
6472
6473         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
6474         If translation does not include a '/', use entire
6475         translation instead of crashing.
6476
6477 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
6478
6479         * docs/gtk_tut.sgml:
6480         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
6481
6482 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
6483
6484         * gtk/gtkselection.c (gtk_target_list_remove): Use
6485         g_list_remove_link, not g_list_remove.
6486
6487         [ From Geert Bevin <gbevin@thunderstorms.org> ]
6488         
6489 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
6490
6491         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
6492         statement upon unselection (how the heck did that slip in?).
6493
6494 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
6495
6496         * gtk/gtktext.c (gtk_text_freeze): 
6497         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
6498         in frozen state (and aparently crashes). patch provided by Anders
6499         Melchiorsen <and@kampsax.dtu.dk>.
6500
6501 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
6502
6503         * fix insensitive default/focus widget activation,
6504         reported by Matt Goodall <mgg@isotek.co.uk>.
6505
6506         * gtk/gtkwindow.c (gtk_window_key_press_event): 
6507         (gtk_window_activate_default):
6508         (gtk_window_activate_focus):
6509         return handled=FALSE for actiavtion of insensitive default
6510         widgets. return handled=TRUE for activation of insensitive
6511         focus widgets. don't activate in either case.
6512
6513 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
6514
6515         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
6516         and $glib_cflags to match library order and in the
6517         theory that an old version of GLib is more likely to
6518         be in the include directory for X then vice-versa.
6519         (Bug #2776)
6520
6521 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
6522
6523         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
6524         to determine the locale for fontsets, not LC_MESSAGES;
6525         the user may want English messages with a handling
6526         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
6527         will still be broken) (Bug #2891)
6528
6529 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
6530
6531         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
6532
6533 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
6534
6535         * gtk/gtkrc.ko: Changed the Korean default fontset.
6536
6537 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
6538
6539         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
6540         where when scrolling to the left or top double exposes
6541         were done, causing major slowdowns.
6542
6543 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
6544
6545         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
6546         names to lowercase and alphanumeric, before looking
6547         them up.
6548
6549         * gtk/Makefile.am: Install codeset variant gtkrc files
6550         with normalized names.
6551
6552 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
6553
6554         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
6555         popup menus when the menu is already visible, but its parent
6556         is still hidden, (happens after tornoff window got hidden).
6557
6558 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
6559
6560         * gtk/Makefile.am (install-data-local): Fix
6561         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
6562         deleted, causing error messages on install.
6563
6564 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
6565
6566         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
6567         the handle as well, since we now sometimes ignore
6568         exposes on the handle while resizing.
6569
6570 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
6571
6572         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
6573         extra g_free introduced in one of the last one or two 
6574         commits.
6575
6576 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
6577
6578         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
6579         consistent, put each style that a gtkrc.* file creates
6580         in a unique namespace, remove old files before installing.
6581
6582 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
6583
6584         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
6585         gtk_rc_init is called multiple times. (Yes, people who
6586         do that have bugs in their code.)
6587
6588 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
6589
6590         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
6591         Remove it since it's generated by the Makefile anyway
6592
6593 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
6594
6595         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
6596         device->info.axes for core pointer.
6597
6598 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
6599
6600         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
6601         idle_id, to deal with obsolete, broken C libraries.
6602
6603 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
6604
6605         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
6606         allocation->x/y twice!
6607
6608         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
6609         consistent with gtk_vscale_pos_trough().
6610
6611 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
6612
6613         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
6614         be queueing a resize on a toplevel container between
6615         the time we show it and when we map it. So, we need
6616         to test GTK_WIDGET_VISIBLE() for toplevels, and only
6617         use GTK_WIDGET_DRAWABLE() for child windows.
6618
6619 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
6620
6621         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
6622         (fixes bug #2144)
6623
6624 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
6625
6626         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
6627         container DRAWABLE (instead of VISIBLE), so we don't queue
6628         resizes on non-toplevel containers.
6629
6630 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
6631
6632         * gtk/gtkselection.[ch]: Make the data argument
6633         const guchar *.
6634
6635 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
6636
6637         * gtk/gtkwindow.c: Try to behave sensibly if 
6638         the focus widget is the window itself. (Should
6639         we allow this at all?)
6640
6641 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
6642
6643         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
6644         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
6645         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
6646         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
6647         in prototypes and implementations consistent (Tomas Ogren).
6648
6649         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
6650         before the widget is unparented (reported by damon).
6651
6652         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
6653         since we provide unsigned data anyways.
6654
6655 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
6656
6657         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
6658         the call to gtk_tooltips_layout_text() until later.
6659
6660         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
6661         Call gtk_widget_ensure_style() before using the style.
6662
6663 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
6664
6665         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
6666         for old widgets that don't propagate draws to all
6667         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
6668
6669 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
6670
6671         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
6672         for a redraw but just the widget that requested the resize.
6673
6674 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
6675
6676         * gtk/gtkcontainer.c: added new widget level method
6677         gtk_container_set_reallocate_redraws() and a GtkContainer flag
6678         reallocate_redraws : 1 to reflect the setting, exported this through
6679         the argument system as a boolean ::reallocate_redraws.
6680
6681         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
6682         on the widget because the allocation changes, do so as well for
6683         widget->parent if the parent has reallocate_redraws set to TRUE.
6684         with that containers requesting reallocation redraws get automatically
6685         redrawn if their children changed allocation (this unfortunately
6686         affects also other children that didn't change allocation, but we
6687         cannot work around that before 1.3).
6688
6689 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
6690
6691         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
6692         _and_ height are >0 (not _or_).
6693
6694         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
6695         instead of gtk_container_queue_resize(), which is a core gtk internal
6696         function (must have been on crack when i queued that).
6697
6698         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
6699         we can check more reliably if we want to discard expose events.
6700         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
6701         flag.
6702         
6703         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
6704         we simply trust these events. for deciding whether to discard exposes,
6705         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
6706         
6707 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
6708
6709         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
6710         queues of areas that are completely off screen.
6711
6712         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
6713         logic for handleboxes.
6714
6715         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
6716         check on width/height.
6717
6718 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
6719
6720         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
6721         we are fine with using $@ the way we do (if we actually encounter
6722         brokeness with $@ in VPATH builds because of additional path prefixes,
6723         we need to use $(@F) actually).
6724
6725 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
6726
6727         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
6728         short lived bugs, that would allow language bindings to do surgeries
6729         to our guts.
6730
6731 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
6732
6733         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
6734         where comparison was being done against an uninitialized
6735         value causing intermittant results depending on
6736         compiler flags. Also make it clearer that we aren't
6737         ever initializing the child as 0x0 (though this will
6738         be caught in gtk_widget_size_allocate())
6739
6740 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
6741
6742         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
6743         gtk_window_unset_transient_for() call after we do checks
6744         involving the old transient parent.
6745         [ From Lance Capser <lmc@cyberhighway.net> ]
6746
6747 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
6748
6749         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
6750         an empty file.
6751
6752 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
6753
6754         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
6755         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
6756
6757 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
6758
6759         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
6760         `$@' is valid only in the build dir, not after we've done 
6761         `cd $srcdir'.  Also use `test -f' instead of less portable
6762         `test -e'.
6763
6764 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
6765
6766         * gtk/gtktext.c (correct_cache_insert): Rewrite
6767          for simplicity, and hopefully correctness.
6768          (Fixes bug #1322, which was a segfault when
6769           on some insertions with the properties around
6770           the insertion set up just wrong.)
6771
6772         * gtk/gtktext.c (gtk_text_adjustment): When we receive
6773          a "changed" signal, clamp the new value to the adjustment
6774          bounds to avoid segfaulting if someone tries to change
6775          the adjustment to a bogus value. (Bug #1795)
6776
6777 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
6778
6779         * gtk/gtkmain.c: Ignore unexpected destroy notifies
6780         for children, for toplevel windows handle them
6781         like delete_event.
6782
6783         * gtk/gtkplug.c: Add an unrealize handler so that
6784         we unref plug->socket_window when we are done
6785         with it.
6786
6787 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
6788
6789         * gtk/gtktext.c (clear_area): Fix stupid signedness
6790          problem that was causing background to sometimes
6791          be misaligned.
6792
6793 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
6794
6795         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
6796         
6797         * gtk/gtkmenu.c (gtk_menu_position): Make
6798          sure we never position menus with negative x, y,
6799          since gtk_widget_set_uposition() can't handle that.
6800
6801         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
6802          Modify the positioning code a bit so that we always
6803          put the top-left corner onscreen. (This is for
6804          UI reasons, gtk_menu_position() now takes care of
6805          gtk_widet_set_uposition() brokeness.)
6806
6807 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
6808
6809         * gtk/Makefile.am: fixed up things for -jx, x > 1.
6810
6811 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
6812
6813         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
6814           RC style that is passed in. The lack of the ref
6815           before was a bug. If people worked around this
6816           bug, this will introduce a slight memory leak
6817           in their code. The code should typically look like:
6818
6819             rc_style = gtk_rc_style_new ();
6820             [...]
6821             gtk_widget_modify_style (widget, rc_style);
6822             gtk_rc_style_unref (rc_style);
6823
6824         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
6825           the style if it was already set.
6826
6827         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
6828           style if it was set before.
6829
6830 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
6831
6832         * gtk/testgtk.c (main): Add a check to see if we
6833           are being run from the correct directory and
6834           to quit nicely if we are not.
6835
6836         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
6837           static.
6838
6839 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
6840
6841         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
6842
6843         * gtk/gtkwindow.c:
6844         queue resizes unconditionally (gtk_widget_queue_resize will figure
6845         what to do if the window is not realized).
6846         (gtk_window_move_resize): only recenter the window
6847         for GTK_WIN_POS_CENTER_ALWAYS.
6848         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
6849         the same way as GTK_WIN_POS_CENTER.
6850
6851 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
6852
6853         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
6854         with (!(info->last_flags & GDK_HINT_POS)) instead of
6855         (!info->last_flags & GDK_HINT_POS).
6856
6857         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
6858         new_height unconditionally, because we use these values even if
6859         !default_size_changed && !hints_changed.
6860         comented the (default_size_changed || hints_changed) case with
6861         respect to resize rejects from the window manager.
6862
6863         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
6864         in the zvt condition hack, since this includes the window hints, set
6865         the hints after the handling_resize case.
6866
6867         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
6868         window is initially shown with to the geometry.
6869
6870 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
6871
6872         * gtk/gtkwindow.c (gtk_window_move_resize):
6873         s/size_changed/default_size_changed/g so i know what's
6874         really going on (frying brain on smaller flame now).
6875
6876 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
6877
6878         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
6879         we have size_changed upon handling_resize. this is a gross
6880         workaround for the broken zvt widget and should be removed in
6881         1.3 again (search for FIXME).
6882         Owen provided an accurate comment for this:
6883
6884         /* We could be here for two reasons
6885          *  1) We coincidentally got a resize while handling
6886          *     another resize.
6887          *  2) Our computation of size_changed was completely
6888          *     screwed up, probably because one of our children
6889          *     is broken. It's probably a zvt widget.
6890          *
6891          * For 1), we could just go ahead and ask for the
6892          * new size right now, but doing that for 2)
6893          * might well be fighting the user (and can even
6894          * trigger a loop). Since we really don't want to
6895          * do that, we requeue a resize in hopes that
6896          * by the time it gets handled, the child has seen
6897          * the light and is willing to go along with the
6898          * new size. (this happens for the zvt widget, since
6899          * the size_allocate() above will have stored the
6900          * requisition corresponding to the new size in the
6901          * zvt widget)
6902          *
6903          * This doesn't buy us anything for 1), but it shouldn't
6904          * hurt us too badly, since it is what would have
6905          * happened if we had gotten the configure event before
6906          * the new size had been set.
6907          */
6908
6909 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
6910
6911         * gtk/gtkrc.c: deal properly with the fact that RC
6912           style lists may include rc styles more than once.
6913
6914         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
6915           unused static function.
6916
6917         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
6918           stack of directories of RC files currently being
6919           parsed and implicitely add them to pixmap path.
6920           
6921           This fixes a bug where the directory would get
6922           appended then overwritten by pixmap_path declarations.
6923
6924           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
6925
6926         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
6927           theme's exit function. (Patch from Peter Wainwright,
6928           bug #1454)
6929
6930         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
6931           Add a destroy() handler to take care of removing
6932           group for menu item. (Fixes bug #1197)
6933
6934         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
6935           in warning message.
6936
6937 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
6938
6939         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
6940         roundtrip to figure window's width and height, since we know that
6941         anyways from widget->allocation.
6942
6943 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
6944
6945         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
6946           the hints after we request the new size.
6947
6948 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
6949
6950         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
6951           GTK_WIDGET_REALIZED() assertion - we can compute the
6952           hints before we are realized.
6953
6954         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
6955           hint changing so that we have a value of hints_changed
6956           when we decide whether to constrain the window size.
6957
6958         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
6959
6960         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
6961         change back to G_MAXINT.
6962
6963 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
6964
6965         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
6966         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
6967         contain uncluttered values.
6968         (gtk_window_compute_hints): simply assert that window is realized
6969         and that geometry_info is valid, since we rely on this anyways.
6970         (gtk_window_constrain_size): major cleanups to the code.
6971         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
6972         for the base size, instead of the minimums. use 32767 as max width
6973         and height (like in gtkwindow.c) instead of G_MAXINT.
6974
6975 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
6976
6977         * cleaned up the GtkContainer.need_resize flag handling mess, we
6978         only need to force resize requests when we were prematurely
6979         realized, or our widget tree was modified when we were temporarily
6980         hidden. handling these cases directly upon showing the window (i.e.
6981         while the GdkWindow is still unmapped) avoids the need to wait for
6982         a configure event response and therefore makes the GUI more snappier
6983         and avoids blank windows during the roundtrip.
6984
6985         * gtk/gtkwidget.c:
6986         (gtk_widget_hide): 
6987         (gtk_widget_show): don't queue resizes on toplevels, they know how
6988         to deal with matters.
6989
6990         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
6991         flag directly for not visible resize containers and spare us unecessary
6992         signal emissions.
6993
6994         * gtk/gtkwindow.c:
6995         (gtk_window_realize): if we need to enforce premature size allocation,
6996         queue a container resize so we are correctly resized later on.
6997         (gtk_window_init):
6998         (gtk_window_size_request):
6999         don't freak around with the ->need_resize flag,
7000         gtk_container_queue_resize() will care about that.
7001         (gtk_window_show):
7002         handle initial resizing issues here, we can handle matters better in
7003         this place, especially since we know that our GdkWindow is still
7004         unmapped.
7005         (gtk_window_move_resize):
7006         don't care about ->need_resize at all.
7007         handle size changes properly that occoured while we waited for a
7008         configure event.
7009
7010 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
7011
7012         * gtk/gtkwidget.c (gtk_widget_set_uposition):
7013         * gtk/gtkwindow.[hc] (gtk_window_reposition):
7014         Move the hint setting code from gtk_widget_set_uposition
7015         to here; set the hints so that we respect any previously
7016         set geometry hints.
7017
7018         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
7019         change the window hints here or move the window here,
7020         let that happen in gtk_window_move_resize().
7021
7022 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
7023
7024         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
7025         to already queued resizes (and therefore redraws) on a widget, check
7026         its anchestry as well.
7027
7028         * gtk/gtkcontainer.c:
7029         (gtk_container_queue_resize): clear resize widgets for resize
7030         containers before aborting prematurely. this is especially important
7031         for toplevels which may need imemdiate processing or their resize
7032         handler to be queued.
7033         (gtk_container_dequeue_resize_handler): added new internal function for
7034         gtkwindow.c.
7035
7036         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
7037         configure event, take possible changes in window position into account
7038         as well.
7039         if we request a new window size, queue up a resize handler that will
7040         last until the configure event response arrives.
7041         combined the ->need_resize case (initial show) with the general size
7042         (hints) changed case and added even more comments.
7043         if !auto_shrink, only revert to the old allocation if the new size
7044         is smaller than the current allocation.
7045
7046 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
7047
7048         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
7049                            gtk_window_set_geometry_hints
7050                            gtk_window_set_default_size):
7051         When hints are set, queue a resize so that the hints will
7052         be eventually reset on the toplevel.
7053
7054         * gtk/gtkwindow.c (gtk_window_show): Use
7055         gtk_window_compute_default_size(). Clear the need_resize flag
7056         on the initail map so that we don't unnecessarily trigger the
7057         resize code.
7058
7059         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
7060         into separate functions. Compare the hints we are setting
7061         with what we set last time so that we can accurately
7062         tell when we need to reset the hints.
7063
7064         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
7065         function to figure out the size from requisition
7066         and default_size.
7067
7068         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
7069         from fvwm to constrain a size to the geometry hints.
7070
7071         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
7072         to compare two sets of geometry hints.
7073
7074         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
7075         from gtk_window_set_hints(), just compute the hints,
7076         don't set them.
7077
7078         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
7079         code from gtk_window_move_resize() to separate function,
7080         rationalize a bit.
7081
7082 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
7083
7084         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
7085         structure into a new private structure.
7086
7087         * gtkrc.c: Split GtkRcStyle into public/private.
7088         In the private part, add a list of pointers to the
7089         RcStyle lists this RcStyle participates in.
7090
7091         * gtkrc.c: When a RcStyle is free, remove all
7092         lists referencing it from the 
7093         realized_style_ht hash, and free those lists.
7094         
7095         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
7096         gtk_rc_init(), since that adds the default styles
7097         to the list of parsed RC files again.
7098
7099         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
7100         
7101 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
7102
7103         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
7104         checks that ensure that a widget's allocation is at least 1 in width
7105         and height. (GNOME note: this doesn't affect old panel code anymore,
7106         because GtkSocket will request width and height of at least 1 since
7107         Fri Jul 23).
7108
7109         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
7110         allocated yet (happens if the user realizes the window prematurely),
7111         size request and allocate it.
7112         (gtk_window_size_allocate): guard against guint underflows.
7113
7114 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
7115
7116         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
7117         in gtk_built_sources, so gtk.defs gets built prior to all other
7118         sources.
7119
7120 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
7121
7122         * gtk/Makefile.am:
7123         invoke indent on gtkmarshal.*. 
7124         rewrote source generation rules, use COPYING as oldest source tag for
7125         a piggyback rule to generate all sources from (don't touch it ;).
7126         major cleanups, strip spaces on build rules for GNU Make.
7127
7128         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
7129         source and target files from commandline arguments. don't invoke indent.
7130
7131 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
7132
7133         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
7134         notebook after switch to avoid drawing problems.
7135         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
7136         
7137         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
7138         show them instead. 
7139         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
7140
7141 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
7142
7143         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
7144         notebook after switch to avoid drawing problems.
7145         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
7146         
7147         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
7148         show them instead. 
7149         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
7150
7151 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
7152
7153         * gtk/gtkwindow.c:
7154         we use window->need_resize from configure_event now, to indicate that
7155         the gtkwindow should keep its allocation (e.g. because the user resized
7156         the window through window manager handles). resize_count is now reliably
7157         used to figure whether we got the allocation we requested from the
7158         window manager.
7159         configure events get queued as resizes now, the real stuff (size
7160         computation and allocation) now only goes on in gtk_window_move_resize().
7161         GtkWindow's requisition now contains its *real* requisition (like all
7162         other widgets), *not* taking usize into account.
7163         geometry_info->last_{width|height} is now updated from set_hints() only
7164         so it always contains the last hints we set for the window manager.
7165         made some event handlers return TRUE instead of FALSE.
7166         the overall code should be much more straight forward now, and the
7167         significant code portions are accompanied by comments now.
7168         (gtk_window_set_hints):
7169         removed requisition argument and made it
7170         fetch the requisition through gtk_widget_get_child_requisition.
7171         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
7172         does that now.
7173         (gtk_window_show):
7174         ensure that the widget is realized before calling 
7175         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
7176         ensure that we got properly size requested and allocated before
7177         realization.
7178         (gtk_window_configure_event):
7179         ignore plain window moves, or reallocate the widget tree through the
7180         resize queue otherwise.
7181         (gtk_window_move_resize):
7182         mostly rewrote this function to figure window manager hints more
7183         reliably, coalesce window moves and resizes to reduce configure events
7184         and do actuall size allocations.
7185
7186 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
7187
7188         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
7189         that have a resize pending, because a redraw is already queued for them.
7190
7191         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
7192         hack to clear resize_widgets.
7193
7194         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
7195         for resize containers prior to size allocation. (this is also a bit
7196         ugly, but avoids side effects for stopped emissions and is thus more
7197         reliable).
7198         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
7199
7200         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
7201         function from gtk_tooltips_expose, as we connect to ::expose_event
7202         *and* ::draw now.
7203
7204 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
7205
7206         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
7207         checks.
7208         (gtk_target_list_unref): Likewise.
7209
7210         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
7211
7212 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
7213
7214         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
7215         guard against division by zero. (Fixes bug #1339)
7216
7217 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
7218
7219         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
7220         Prevent the trivial leak of information of allowing
7221         word motion when the entry is not visible.
7222
7223 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
7224
7225         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
7226         modality to error dialog as well as confirmation dialogs.
7227         (Bug #1803, reported by Rosanna Wing Sze Yuen)
7228
7229 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
7230
7231         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
7232         tree->view_lines.
7233         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
7234
7235         * gtk/Makefile.am (install-data-local): Solaris apparently
7236         has various troubles with ln -f; use rm first instead.
7237         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
7238
7239 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
7240
7241         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
7242         use `cp' followed by `rm' (the `rm' was already there).
7243
7244 July 30, 1999 Elliot Lee <sopwith@redhat.com>
7245         
7246         * configure.in: Fix autoconf warnings about cross compilation by
7247         trying to provide sane defaults for AC_TRY_RUN.
7248         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
7249         put them into $(srcdir) when generated. Also add a dependency of
7250         gtksignal.h on gtkmarshal.h for -j builds. 
7251         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
7252
7253 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
7254
7255         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
7256         GDK_THREADS_{LEAVE,ENTER} pair.
7257         (From Paul Fisher <pnfisher@redhat.com>)
7258
7259 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
7260
7261         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
7262         width and height are always >0 (owen).
7263
7264 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
7265
7266         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
7267         change that assured that a widget's allocated with and height are
7268         always >1, since this breaks *buggy* panel code. unfortunately this
7269         back-breaks the gimp's color selector.
7270
7271         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
7272         allocation is always >0 in width and height, before sending the
7273         configure event; this is a *gross* hack to get the gimp back to work.
7274         
7275         * marked both cases with TODO-1.3
7276
7277 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
7278
7279         * gtk/gtktext.c: Don't display wrap indicators when
7280         text is not editable and word wrap is on.
7281
7282 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
7283
7284         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
7285         option menus here as they are not derived from menu shell, assure that
7286         the option menu has a menu we can add items to.
7287
7288 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
7289
7290         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
7291         width/height to (gint) before calculations and check against < 0 to
7292         avoid guint wraparounds.
7293
7294 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
7295
7296         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
7297         width and height is never zero. sanity check both dimensions against
7298         32767 and issue a warning if the allocation is greater than that.
7299
7300 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
7301
7302         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
7303         to g_main_pending() as well.
7304
7305 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
7306
7307         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
7308         call to g_main_iteration() - since that will regrab
7309         GTK+ lock to process events.
7310
7311 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
7312
7313         * gtk/gtkwindow.c
7314         - Regularize with the rest of GTK+ by making widget->requisition
7315           not reflect the set_usize()
7316         - Always recompute geometry hints, then check if they
7317           changed before sending them to the X server. The
7318           previous checks for changes would fail in a number
7319           of circumstances. 
7320
7321 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
7322
7323         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
7324
7325 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
7326
7327         * gtk/gtkdnd.c:
7328         - Code cleanups
7329         - Instantaneously update on modifier key presses
7330         - Allow cancellation of the drag with Escape.
7331
7332 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
7333
7334         * gtk/testgtk.c (create_handle_box): Set the policy
7335         to auto_shrink - otherwise the appearance is rather
7336         strange when flipping between horizontal and vertical.
7337
7338 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
7339
7340         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
7341         (gtk_window_set_default_size): don't change a value if it's < 0.
7342         queue a resize.
7343
7344 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
7345
7346         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
7347
7348 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
7349
7350         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
7351         add an extra "/" when concating "/" + filename.
7352         (From Matt Grossman <mattg@oz.net>)
7353
7354 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
7355
7356         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
7357         for fg_gc if we set it for drawing pixmap.
7358
7359 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
7360
7361         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
7362         
7363         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
7364         already set, call old engine's destroy function and
7365         unref the old engine.
7366
7367 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
7368
7369         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
7370
7371 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
7372
7373         * gtk/gtkaccelgroup.h: mark certain functions as internal.
7374
7375 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
7376
7377         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
7378         expand behaviour changed.
7379
7380         * gtk/gtklabel.c (gtk_label_set_pattern):
7381         (gtk_label_set_justify):
7382         (gtk_label_set_line_wrap):
7383         don't bother invoking queue_clear, the reallocation does
7384         that for us, always free_words so the upcoming resize will
7385         relayout the label's contents.
7386
7387 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
7388
7389         * applied argument implementation patches from Elena Devdariani
7390         <elena@cogent.ca>.
7391
7392         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
7393         ::space_style, ::relief
7394         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
7395         * gtk/gtkpreview.c: ::expand
7396         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
7397         * gtk/gtknotebook.c: ::homogeneous
7398         * gtk/gtklabel.c: ::wrap
7399         * gtk/gtklist.c: ::selection_mode
7400         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
7401         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
7402         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
7403         * gtk/gtkclist.c: ::sort_type
7404         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
7405         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
7406
7407 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
7408
7409         * gtk/gtkstyle.c: Removed ill-thought-out part of last
7410         comment.
7411
7412 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
7413
7414         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
7415         counting right when we have to attach a new style
7416         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
7417
7418         * gtk/gtkstyle.c: Documented the refcounting
7419         peculularities of gtk_style_attach.
7420
7421 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
7422
7423         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
7424         window types.
7425
7426         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
7427         of GTK_TOPLEVEL for creating the window.
7428
7429 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
7430
7431         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
7432         the last argument (reported by Per Winkvist).
7433         
7434 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
7435
7436         Fixes for invisible XOR lines (Frank Loemker
7437         <floemker@TechFak.Uni-Bielefeld.DE>)
7438         
7439         * gtk/gtkclist.c (gtk_clist_realize): Always use
7440         a non-zero pixel for GDK_XOR.
7441
7442         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
7443         Use GDK_INVERT instead of GDK_XOR.
7444
7445 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
7446
7447         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
7448         signals if h/voffsets differ from adjustment values.
7449         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
7450
7451 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
7452
7453         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
7454         ::selection-done emissions up to the topmost menu shell.
7455
7456 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
7457
7458         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
7459         the user data on the window before destroying it.
7460
7461         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
7462         unrealize handler to take care of destroying 
7463         notebook->panel properly. 
7464         (Bug #1198 - Morten Welinder <terra@diku.dk>)
7465
7466         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
7467         of g_new and g_realloc to stop memory leak. (Actually,
7468         we could just use g_realloc(), but I'm not 100% sure
7469         that is portable).
7470         (Bug #1196 - Morten Welinder <terra@diku.dk>)
7471
7472 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
7473
7474         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
7475
7476         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
7477         for fontsets.
7478
7479         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
7480         with bin/button confusion.
7481
7482 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
7483
7484         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
7485         and show how preselection of radio items is done.
7486
7487 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
7488
7489         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
7490         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
7491         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
7492         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
7493         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
7494         * gtk/gtktable.c (gtk_table_attach): 
7495         * gtk/gtklist.c (gtk_list_insert_items): 
7496         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
7497         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
7498         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
7499         * gtk/gtkbin.c (gtk_bin_add): 
7500         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
7501         * gtk/gtkfixed.c (gtk_fixed_put): 
7502         * gtk/gtklayout.c (gtk_layout_put):
7503         general fixups to container_add logic. always realize child if
7504         child->parent is realized, only map the child and queue a resize
7505         if child and child->parent are both visible.
7506
7507 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
7508
7509         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
7510         instead of gtk_container_foreach to walk and unrealize children, so
7511         composite children get also unrealized.
7512         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
7513         (gtk_widget_map): assert that the widget is visible (basic constrain).
7514         (gtk_widget_real_map): assert that the widget is realized (basic
7515         constrain).
7516
7517 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
7518
7519         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
7520
7521 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
7522
7523         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
7524         file for iso-8859-2 locales.
7525
7526         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
7527
7528 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
7529
7530         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
7531          (Pointed out by andy@rz.uni-karlsruhe.de and others).
7532          Remove some suspicious and useless lines. 
7533
7534 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
7535
7536         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
7537         width,height = 0, 0 to mean - here to edge of window,
7538         instead of -1, -1, since the former is all we support.
7539
7540 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
7541
7542         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
7543         when removing from quit_functions list.
7544
7545 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
7546
7547         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
7548
7549 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
7550
7551         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
7552          When redrawing characters on non-visible entry, use appropriate
7553          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
7554
7555 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
7556
7557         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
7558         from drag coordinates.
7559         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
7560         use drag_dest_cell.
7561
7562         * gtk/gtktree (drag_dest_cell)
7563         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
7564         (Bug #1129)
7565
7566 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
7567
7568         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
7569         translate_* fields.
7570         (gtk_item_factory_finalize): invoke translate_notify independant from
7571         translate_data.
7572         (gtk_item_factory_set_translate_func): likewise.
7573         (gtk_item_factory_destroy): only remove ifactory pointer from those
7574         widgets that belong to us (stupid me).
7575
7576 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
7577
7578         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
7579         rc_style list when lookup succeeeds.
7580
7581 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
7582
7583         * gtk/gtkctree.c (resync_selection): 
7584         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
7585         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
7586         bug.
7587
7588 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
7589
7590         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
7591         Add some missing GDK_THREADS_ENTER()/LEAVE around
7592         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
7593
7594 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
7595
7596         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
7597         rather than emit_by_name.
7598
7599         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
7600         on the widget across multiple signal emissions.
7601         (gtk_editable_delete_text): same here.
7602         (gtk_editable_class_init): set widget_class->activate_signal after
7603         editable_signals[ACTIVATE] has been created.
7604
7605 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
7606
7607         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
7608         position here prematurely -- we might not have the
7609         right ->min_position and ->max_position yet.
7610
7611 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
7612
7613         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
7614         Add error traps so if the other end of the connection
7615         dies, we survive.
7616
7617         * gtk/gtkselection.c (gtk_selection_notify): Clean
7618         up properly when selection property retrieval fails.
7619         
7620         * gtk/gtkselection.c (gtk_selection_request): Correctly
7621         reject SelectionRequest notifies where the handler
7622         returns no data.
7623
7624 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
7625
7626         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
7627         when we've previously highlighted.
7628
7629         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
7630         emit two "drag_leave" signals for Motif drops.
7631
7632         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
7633         back the correct status messages when dropping from
7634         Motif onto a proxy window that is rejecting the
7635         drop.
7636
7637 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
7638
7639         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
7640         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
7641         to compare two argument values. added gtk_arg_to_valueloc() to set a
7642         variable from an arg through its location (pointer).
7643
7644         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
7645         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
7646         as gfloat*, uchars are collected as guchar*, ints are collected as
7647         gint*, etc...
7648
7649 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
7650
7651         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
7652         Include <string.h> instead of <strings.h>.
7653
7654         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
7655         (actually, a lot more duplicate includes occur if
7656          you trace through the sequence of #include's)
7657         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
7658         
7659 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
7660
7661         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
7662         gtk-a-higuti-990322-[0-3]
7663
7664         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
7665         that was causing -DX_LOCALE not to work.
7666
7667         * gtk/gtkrc.c (gtk_rc_init):
7668         X_LOCALE will never have LC_MESSAGES defined
7669
7670 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
7671
7672         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
7673         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
7674
7675         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
7676         left/right as well (gtk-michael-980726-0.patch.gz).
7677
7678         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
7679         for pointer values, use gchar instead of char. fixed uline allocation
7680         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
7681         chunks instead of G_ALLOC_ONLY.
7682         (gtk_label_size_request): always alter requisition as passed and leave
7683         widget->requisition alone.
7684         (gtk_label_set_text): allow NULL strings.
7685         (gtk_label_new): likewise.
7686
7687 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
7688
7689         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
7690
7691 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
7692
7693         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
7694         *and* mapped (i.e. drawable).
7695         (gtk_bin_expose): only send exposes to drawable children.
7696
7697         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
7698         (gtk_box_expose): only send exposes to drawable children.
7699
7700         * gtk/gtkhscale.c (gtk_hscale_draw): 
7701         * gtk/gtkvscale.c (gtk_vscale_draw):
7702         hm, this is an ugly one. we first compute the size of our trough area
7703         here (window relative) and then check intersection with the draw_area
7704         which is parent relative because we're a NO_WINDOW widget, so we need
7705         to offset the trough area by allocation.x and allocation.y before the
7706         check. (this must not be done for the background area though, since
7707         that's already computed parent relative).
7708
7709 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
7710
7711         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
7712         unrealize title buttons.
7713
7714 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
7715
7716         * gtk/gtkclist.c (gtk_clist_column_title_passive)
7717         (gtk_clist_column_title_active): 
7718         only connect/disconnect to GtkWidgetClass::event to block mouse events.
7719
7720         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
7721         zero initialize event, removed superfluous gdk_window_get_pointer call
7722
7723         * gtk/gtklist.c (gtk_list_vertical_timeout)
7724         (gtk_list_horizontal_timeout): removed superfluous
7725         gdk_window_get_pointer call
7726
7727 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
7728
7729         * plugging problems reported by "Bruce Mitchener, Jr."
7730         <bruce@puremagic.com> due to a purify session.
7731
7732         * gtk/gtkstyle.c:
7733         (gtk_style_ref): 
7734         (gtk_style_unref): assert ref_count to be > 0.
7735
7736         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
7737         the requisition.
7738         (gtk_clist_set_shift): likewise.
7739
7740         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
7741         adjustments.
7742
7743         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
7744         event before sending it and set send_event to TRUE (which needs to
7745         be done for *all* synthesized events).
7746         (gtk_list_vertical_timeout): likewise.
7747
7748         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
7749         leaks.
7750
7751         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
7752         to TRUE when synthesizing events.
7753
7754 [ *** end of merges from 1.2 *** ]      
7755         
7756 1999-11-21  Tor Lillqvist  <tml@iki.fi>
7757
7758         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
7759         (or copied from gdkconfig.h.win32 on Win32, sigh).
7760
7761         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
7762
7763         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
7764
7765         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
7766
7767         * gdk/gdkconfig.h.win32: New file.
7768
7769         * gdk/win32/makefile.cygwin: Build just a static archive here.
7770
7771         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
7772         for the DLL from the static archive built above.
7773
7774         * gdk/gdk.def: Moved here from the win32 subdirectory.
7775
7776         * gdk/win32/*: Adapt for the changed private struct organisation.
7777
7778         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
7779
7780 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
7781
7782         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
7783         for wheel mice (buttons 4 and 5).
7784
7785 1999-11-18  Tor Lillqvist  <tml@iki.fi>
7786
7787         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
7788         drawables use just the pixel field in the foreground and
7789         background GdkColor of the GdkGC.
7790
7791         gdk_gc_set_{fore,back}ground() are called in the GIMP with
7792         GdkColors containing uninitialized (red,green,blue) fields, and
7793         just the pixel field filled in, and furthermore in the
7794         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
7795         It thus turns out that we really don't need to have the full
7796         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
7797         it later to have just the pixel values.
7798
7799 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
7800
7801         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
7802
7803 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
7804
7805         * docs/gtkfaq.sgml: threads example from Erik Mouw.
7806         New question on GtkLabel background colors.
7807
7808         * docs/gtk_tut.sgml:
7809           - Correct the example code callback
7810             function definitions.
7811           - Update the gtkdial example code, from Frans van Schaik.
7812           - Update setselection.c to current API.
7813
7814         * examples/Makefile examples/*/*.c: Update to code
7815         listed in tutorial.
7816
7817 1999-11-10  Tor Lillqvist  <tml@iki.fi>
7818
7819         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
7820         subrange table (from the "Developing International Software for
7821         WIndows 95 and Windows NT" book) was missing the Hangul syllable
7822         block... Get the loaded font's charset correctly.
7823
7824         (Note that this, and the other *-win32.c files, still really are
7825         the old ones, the win32 subdirectory is not ready for compilation
7826         yet after the reorg.)
7827
7828 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
7829
7830         * gtk/gtkclist.c: Fix off-by-one bug in parameter
7831         check.
7832
7833 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
7834
7835         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
7836         on results of XQueryDeviceState().
7837
7838 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
7839
7840         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
7841         we need to accesss only ->children. We need an accessor
7842         for the children.
7843
7844         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
7845         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
7846         to get rid of gdkx.h include.
7847         
7848         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
7849         and random references to 'None'.
7850
7851         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
7852         Get rid of unused #include <gdk/gdkx.h>
7853
7854         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
7855         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
7856         gdkconfig.h.
7857
7858 1999-11-08  Tor Lillqvist  <tml@iki.fi>
7859
7860         * gdk/win32/gdkdraw.c
7861         * gdk/win32/gdkfont.c
7862         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
7863         following yesterday's changes. (Unrelated to Owen's reorg.)
7864
7865 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
7866
7867         * gdk/x11/gdkinput-gxi.c: Add missing include,
7868           fix GdkWindowPrivate => GdkDrawablePrivate.
7869
7870         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
7871
7872         * gdk/x11/Makefile.am (xinput_sources): Add missing
7873         backslash to fix building with --with-xinput=none
7874
7875 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
7876
7877         Move all X specific code into the x11/ directory.
7878         Aside from shuffling things around, did the following:
7879
7880        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
7881          gdk_arg_context_* - a simple argument parsing system
7882          in the style of popt.
7883
7884        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
7885          gdk/x11/gdkprivate-x11.h:
7886          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
7887          add ->klass and ->klass_data fields. The klass_data
7888          field points to an auxilliary structure that is
7889          windowing system dependent.
7890
7891        * gdk/gdkfont.c: Make most of the measurement functions
7892          simply wrappers around gdk_text_extents().
7893
7894        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
7895          _gdk_font_strlen() function that hides the weird
7896          behavior in gtk+-1.[02] where a string is interpreted
7897          differently for 8-bit and 16-bit fonts.
7898
7899        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
7900          to store common code for synthesizing double/triple
7901          press events.
7902         
7903        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
7904          Make all the function that modify an existing GC
7905          simply wrappers around gdk_gc_set_values().
7906          
7907        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
7908          for throwing out later.
7909
7910        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
7911          GdkImagePrivate and GdkColormapPrivate to have a
7912          windowing system dependent part (GdkFontPrivateX etc.)
7913          that "derives" from the system-independent part.
7914
7915        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
7916          Got rid of the included-source-files for XInput in
7917          favor of automake conditionals. (Which didn't exist
7918          when XInput support was originally added.)
7919
7920        * gdk/gdkrgb.c: Remove the visual id from the debugging
7921          statements since that is X11 specific; print out
7922          type/depth info instead.
7923          
7924
7925 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
7926
7927         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
7928         loading duplicates of hashed fonts.
7929
7930         * gdk/gdk.c (gdk_keysym_convert_case): rename
7931         gdk_XConvertCase to gdk_keysym_convert_case, allow
7932         results to be NULL in the GTK+ style.
7933
7934         * gdk/gdkcompat.h: Started compatibility header
7935         for renames.
7936
7937 1999-11-07  Tor Lillqvist  <tml@iki.fi>
7938
7939         * gdk/win32/gdkprivate.h: New font private structures, related to
7940         fontsets.
7941
7942         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
7943         gdk_font_list_free(). On X11, will just be wrappers to
7944         XListFonts() and XFreeFontNames(). On Win32, the code previously
7945         in gtkfontsel.c is now here.
7946
7947         New function gdk_font_xlfd_create(). On X11 will get the FONT
7948         property of the font (for GDK_FONT_FONTs), or call
7949         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
7950         builds a XLFD style name from the font information in the LOGFONT
7951         struct(s).
7952
7953         New function gdk_font_xlfd_free(), which correspondingly frees the
7954         string returned by gdk_font_xlfd_create().
7955
7956         Implement fontsets on Win32. Add a function that iterates over a
7957         wide char string and calls a callback function for each substring
7958         of wide chars from the same Unicode subrange (and thus probably
7959         available in the same real font).
7960
7961         Improve the XLFD emulation a bit.
7962
7963         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
7964
7965         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
7966         Beta3, WM_IME_CHAR messages don't seem to contain the composed
7967         multi-byte char as with the Active IMM on Win9x. Oh well, handle
7968         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
7969         ImmGetCompositionStringW() to get the composed Unicode chars.
7970
7971         * gdk/win32/gdkgc.c
7972         * gdk/win32/gdkdraw.c: Changes needed because of the font private
7973         struct changes.
7974
7975         * gdk/win32/gdk.def: Add the new functions.
7976
7977 1999-11-04  Tor Lillqvist  <tml@iki.fi>
7978
7979         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
7980         get the Platform SDK to get <dimm.h>.
7981
7982         * gdk/win32/gdkevents.c: More event handling fixes and
7983         simplification. Never generate motion events with is_hint true. We
7984         used to do that on bogus grounds earlier. Windows sends
7985         WM_MOUSEMOVE messages on button events even if the mouse hasn't
7986         moved, ignore these.
7987
7988         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
7989
7990         * gdk/win32/gdkglobals.c
7991         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
7992         the TrackMouseEvent function, and use it.
7993
7994         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
7995         char before calling WideCharToMultiByte in order to get a string
7996         for the window title.
7997
7998         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
7999
8000         * gdk/win32/gdk.def: Remove obsolete functions.
8001
8002         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
8003         /nodefaultlib and /defaultlib switches.
8004
8005         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
8006
8007 1999-10-31  Tor Lillqvist  <tml@iki.fi>
8008
8009         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
8010         EuroSign).
8011
8012         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
8013         same type as GdkWChar, especially on Win32.
8014
8015         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
8016
8017         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
8018         before passing to Windows GDI for drawing etc. Convert to the
8019         system default codepage before passing to Windows as window
8020         titles.
8021
8022         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
8023         support changing input locale on the fly.
8024
8025         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
8026         on-the-fly changes. Convert incoming characters from the current
8027         codepage to Unicode (and then to a UTF-8 multi-byte string) based
8028         on the current input language. Use keysym<->Unicode mapping tables
8029         and functions borrowed from xterm sources.
8030
8031         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
8032         editions of Win9x, use the ActiveX-based Active IMM (Input Method
8033         Manager) if available. IMEs and the Active IMM are available under
8034         the disguise of Chinese, Korean and Japanese support for IE and
8035         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
8036         support is present in all editions (as long as you install it).
8037
8038         Call DispatchMessage from gdk_events_queue() (and thus
8039         gdk_WindowProc()), instead of duplicating the code in
8040         gdk_WindowProc().
8041
8042         Reworked the grab handling and propagation code, factored out
8043         duplicated code snippets into separate functions. Other cleanups,
8044         too.
8045
8046         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
8047         the <dimm.h> header describing the Active IMM.
8048
8049         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
8050         just do the same as for "single" fonts.
8051
8052         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
8053         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
8054         the new keysyms from gdkkeysyms.h.
8055
8056         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
8057         fontset, so that gtkentry uses wide characters.
8058
8059         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
8060         GTk+'s system directory "gtk+", not "gtk".
8061
8062 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
8063
8064         * docs/gtkfaq.sgml: FAQ update
8065
8066 1999-10-21  Tor Lillqvist  <tml@iki.fi>
8067
8068         * gdk/win32/gdkprivate.h: Add more font private data.
8069
8070         * gdk/win32/gdkfont.c
8071         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
8072         fonts and strings. Now works much better. You still have to
8073         have a correct font selected, though. No fontset emulation yet.
8074
8075 1999-10-19  Tor Lillqvist  <tml@iki.fi>
8076
8077         * gtk/maketypes.awk: Use G_OS_WIN32.
8078
8079         * gtk/gtk.def: Add some missing entry points. Also some non-public
8080         ones, but PyGTK porter claims to need them.
8081
8082         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
8083         built-in type generation.
8084
8085 1999-10-14  Tor Lillqvist  <tml@iki.fi>
8086
8087         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
8088         GDK_FONT_FONT fonts (which is all we have for now, we don't
8089         emulate fontsets). The X11 version uses plain XDrawString in that
8090         case, too. The string passed to gdk_draw_text_wc seems to be in
8091         fact (at least, when used by gtkentry and gtktext) either in a
8092         single-byte charset, or a DBCS. Not Unicode.
8093
8094         This fixes the problem in gtkfontsel, where even if you had
8095         selected a font with a non-Latin1 charset (windows-greek, for
8096         instance), the preview still used Latin-1 glyphs.
8097
8098         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
8099         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
8100         (gdk_font_load): Recognize the demibold etc weights, even if we
8101         don't have the corresponding constants in the headers.
8102         (gdk_font_hash_insert): Use same hash mechanism as in the X11
8103         version. Should save font resources a bit, when we don't have
8104         multiple HFONTs for the same font.
8105
8106         * gdk/win32/gdkprivate.h: Add the names field as in the X11
8107         version.
8108
8109 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
8110
8111         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
8112         X values
8113
8114 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
8115
8116         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
8117         layout support (as mentioned on
8118         http://www.jcinteractive.com/gnome-ui/software/widgets/)
8119
8120 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
8121
8122         * gtk/fnmatch.c
8123         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
8124
8125 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
8126
8127         * configure.in (ALL_LINGUAS): Added Galician (gl)
8128
8129 1999-10-05  Tor Lillqvist  <tml@iki.fi>
8130
8131         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
8132
8133         * gdk/win32/gdkcompat.c: New file, actually provide an
8134         implementation for the deprecated functions. (Just temporarily.)
8135
8136         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
8137
8138         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
8139
8140         * gdk/win32/gdk.def gtk/gtk.def: Updates.
8141
8142 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
8143
8144         * configure.in: Added "uk" to ALL_LINGUAS.
8145         
8146 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
8147
8148         * configure.in: correct checking for BeOS check
8149
8150         * gdk/gdktypes.h
8151         * gtk/fnmatch.c
8152         * gtk/gtkfilesel.c
8153         * gtk/gtkitemfactory.c
8154         * gtk/gtkmain.[ch]
8155         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
8156
8157 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
8158
8159         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
8160         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
8161         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
8162         by Bulgarian). 
8163
8164 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
8165
8166         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
8167         Fix a reference to window_private->destroyed.   
8168
8169         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
8170         (ugly) setting of an internal GdkWindow member to use
8171         a _slightly_ cleaner macro.
8172
8173         * gdk/gdkprivate.h: Split GdkWindowPrivate into
8174         GdkDrawablePrivate and GdkWindowPrivate.
8175         Add extra macros for accessing GDK_DRAWABLE_ components.
8176
8177         * *.[ch]: Massive adjustments for the above, use the
8178         new macros in a lot of places.
8179
8180 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
8181
8182         * gdk/gdktypes.h: Make GdkDrawable the base type,
8183         not GdkWindow.
8184
8185 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
8186
8187         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
8188
8189 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
8190
8191         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
8192
8193 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
8194
8195         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
8196         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
8197
8198         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
8199
8200         * docs/gtk-config.1: Now autogenerated.
8201         * docs/Changes-1.4.txt: started
8202         
8203 1999-10-03  Tor Lillqvist  <tml@iki.fi>
8204
8205         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
8206         to #ifdef also here.
8207
8208         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
8209         Owen did to the X11 backend.
8210
8211         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
8212         ScrollWindowEx when blitting inside a window, it can't be correct
8213         in the general case.
8214
8215         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
8216         WM_GETMINMAXINFO is easier.
8217
8218         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
8219         depth equal to the bitspixel value, not the visual's depth.
8220
8221         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
8222         to 24 even if the bitspixel value is 32.
8223
8224         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
8225         need to check for depth==32 when bpp==32, depth will always be 24.
8226
8227 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
8228
8229         * docs/Changes-1.4.txt: Started
8230         
8231         * gtk/Makefile.am (gdk_headers): Include all the new headers.
8232
8233         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
8234         
8235         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
8236         into C file.
8237         
8238         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
8239         header to gdkinputprivate.h.
8240
8241         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
8242         unused since before 1.2.
8243
8244 1999-09-30  Tor Lillqvist  <tml@iki.fi>
8245
8246         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
8247         expand possible hex escapes in the font family (put there by
8248         logfont_to_xlfd if the font name isn't a legal XLFD font family,
8249         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
8250         On Win32, add hex escapes here, too.
8251
8252 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
8253
8254         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
8255         to #ifdef GDK_WINDOWING_X11.
8256
8257 [ Merges from gtk-1-2 ]
8258
8259 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
8260
8261         * configure.in: fixed "GNU Make" check to pass with new make version
8262         3.77.95.
8263
8264 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
8265
8266         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
8267         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
8268         AM_PATH_GTK() macros don't get confused by the -pre1.
8269
8270 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
8271
8272         * configure.in (REBUILD): Change check for perl5
8273           to check explicitely for v >= 5.002. (5.001
8274           does not work with our scripts.)
8275
8276 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
8277
8278         * configure.in: evaluate $PERL for the perl version check. added
8279         --disable-rebuilds to give the user an option to completely disable
8280         any source autogeneration rules.
8281
8282 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
8283
8284         * configure.in: evaluate $ac_make when checking for GNU Make.
8285
8286 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
8287
8288         * docs/Makefile.am: added generation.txt.
8289
8290         * Makefile.am: require automake 1.4, build README from README.in and
8291         INSTALL from INSTALL.in in dist-hook.
8292         
8293         * README.in:
8294         * INSTALL.in: new files to autogenerate README and INSTALL from.
8295
8296         * configure.in: figure whether we have GNU Make
8297
8298         * docs/generation.txt: minor additions/corrections.
8299
8300 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
8301
8302         * docs/gtkfaq.sgml: FAQ Update
8303
8304 July 30, 1999 Elliot Lee <sopwith@redhat.com>
8305         
8306         * configure.in: Fix autoconf warnings about cross compilation by
8307         trying to provide sane defaults for AC_TRY_RUN.
8308
8309 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
8310
8311         * ltconfig
8312         * ltmain.sh: upgrade to libtool 1.3.3
8313
8314 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
8315
8316         * INSTALL: Indicate that the --with-glib= configure
8317         time flag is unsupported.
8318
8319 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
8320
8321         * docs/generation.txt: Added a file that gives
8322         documenation about the autogeneration process for
8323         various autogenerated files.
8324         
8325 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
8326
8327         * configure.in (LIBS): Look for libgmodule in the
8328         right location.
8329
8330 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
8331
8332         * docs/gtk_tut.sgml: Removed references to
8333         code examples in my directory on gtk.org as
8334         they should all be in the tutorial now.
8335
8336         * docs/gtk_tut.sgml: Added sources for dial-test
8337         and scribble-xinput programs that were previously
8338         missing.
8339
8340 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
8341
8342         * TODO: Added entry about menu keyboard navigation, removed
8343         some finished items.
8344
8345 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
8346
8347         * acinclude.m4: Standardize on func_dgettext
8348         not func_gettext, so that the checks for dgettext
8349         actually are paid attention to.
8350
8351 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
8352
8353         * configure.in (LIBS): Add $INTLLIBS into $LIBS
8354         directly, rather than repeating the checks for
8355         gettext.
8356
8357         * INSTALL: Added information about gettext and
8358         NLS support.
8359
8360         * acinclude.m4 (LIBM): Check for dgettext, not
8361         just gettext. This should hopefully fix things wrt
8362         systems with old versions of GNU gettext installed.
8363
8364 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
8365
8366         * configure.in (LIBS): Look for libgmodule in the
8367         right location.
8368
8369 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
8370
8371         * autogen.sh: add --enable-maintainer-mode
8372
8373         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
8374
8375 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
8376
8377         * docs/gtk-config.1.in:
8378           docs/Makefile.am:
8379           configure.in: gtk-config is now generated.
8380
8381         * docs/gtk-config.1: Removed, now generated.
8382
8383 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
8384
8385         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
8386         handle CreateNotify itself, still put out a debuging message for
8387         --gdk-debug=events. made the ReparentNotify debugging message more
8388         verbose.
8389         wrap xcoords translation for ConfigureEvents into an error trap,
8390         a destroy event may already be pending, and in that case, the
8391         actuall coordinate values are not at all critical.
8392
8393 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
8394
8395         * gdk/gdkcc.c: Stop leaking the color_hash all over
8396         the place. Simplify and improve the logic.
8397
8398 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
8399
8400         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
8401         for prototypes and function implementations consistent (reported
8402         by Tomas Ogren).
8403
8404 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
8405
8406         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
8407         send_event set in debugging output.
8408         (gdk_compress_exposures): default initialize the event so we don't
8409         operate on bogus values (namely send_event).
8410
8411 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
8412
8413         * gdk/gdkwindow.c: When we receive an unexpected
8414         destroy notify on one of our windows, don't just
8415         warn about it, also mark our windows as destroyed.
8416
8417 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
8418
8419         * gdk/gdkfont.c (gdk_font_hash_insert): Add
8420           name => font and name => fontset hashes. The 
8421           name => fontset hash is a _big_ win since we
8422           weren't previously caching fontsets at all and loading
8423           fontsets is expensive. The name => font hash
8424           is less of a win, but it does save us from doing
8425           repeated XQueryFont calls on the same font.
8426
8427         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
8428           list so we can remove font/fontset from hash.
8429
8430 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
8431
8432         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
8433           and slightly confusing test. [ XInternAtom (,,TRUE)
8434           will never return None ].
8435
8436 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
8437
8438         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
8439           gdk/gdkwindow.c (gdk_window_set_hints):
8440
8441         Don't omit setting the properties if flags == 0 -
8442         there may be an existing set of properties there
8443         already. (Very old bug. Would it be better to
8444         delete the property instead?)
8445
8446         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
8447           spelling error in comment.
8448
8449 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
8450
8451         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
8452           to avoid stomping over gdk_error_warnings.
8453
8454         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
8455           as (bits_per_pixel + 7) / 8. This gives the same
8456           result as before for multiples of 8, but actually
8457           a "reasonable" value for 1bit or 4bit displays.
8458
8459 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
8460
8461         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
8462         GNU Make.
8463
8464 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
8465
8466         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
8467         discarding configure events.
8468
8469 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
8470
8471         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
8472         refcount is greater than zero.
8473
8474         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
8475
8476         * gdk/gdkfont.c (gdk_font_unref): Likewise.
8477
8478         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
8479
8480         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
8481
8482 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
8483
8484         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
8485         that format 32 => sizeof(item) == 4. It really is
8486         sizeof(long).
8487
8488 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
8489
8490         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
8491         core dump at all on X IO errors, only core dump
8492         if --enable-debug for X errors.
8493
8494 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
8495
8496         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
8497         unknown window:" message. disabled ConfigureNotify discarding code,
8498         because it led to events being processed out of order.
8499
8500 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
8501
8502         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
8503
8504         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
8505         we export this function, supress error warnings and don't reset the
8506         error code in the first half of this function.
8507
8508         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
8509         code (instead of just -1) so gdk_error_trap_pop() reveals something
8510         actually informative about the error that happened.
8511
8512         * gdk/*.c:
8513         don't rely on gdk_error_code being -1 if an error occoured, but just
8514         gdk_error_code != 0.
8515
8516 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
8517
8518         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
8519         pointer *before* invoking the filter function, so we at least don't
8520         crash if a filter is removed that is currently executed. window filters
8521         *really* need to be made truely reentrant at some point.
8522
8523 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
8524
8525         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
8526         PropertyNotify debug messages.
8527
8528 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
8529         
8530         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
8531         
8532         * gdk/gdkim.c: Fix cut-and-paste errors for 
8533         x/y and PreeditAttributes/StatusAttributes.
8534
8535 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
8536
8537         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
8538         G_MAXINT to 2^16 to alleviate overflow problems in
8539         various window managers.
8540
8541 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
8542
8543         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
8544         for fontsets.
8545
8546 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
8547
8548         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
8549         Initialize size_hints.x and size_hints.y because kwm
8550         brokenly pays attention to them.
8551         (Bug #1181 -  Lars Heete <hel@admin.de>)
8552
8553 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
8554
8555         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
8556         return value of gdk_list_visuals(). 
8557         (Bug #1193 - Morten Welinder <terra@diku.dk>)
8558
8559 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
8560
8561         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
8562         XSetIMValues to (void *) when comparing to NULL, to workaround
8563         the problem of some compilers barfing since older X headers don't
8564         have the prototype for it.
8565
8566 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
8567
8568         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
8569         for pseudocolor where colormap->colors was double
8570         allocated.
8571
8572         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
8573         color value in the hash table with the pixel filled
8574         in so when we do later hash table lookups, the color
8575         value is correct.
8576         
8577 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
8578
8579         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
8580         making the call
8581
8582 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
8583
8584         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
8585         pointed out by Morten Welinder <terra@diku.dk>.
8586
8587 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
8588
8589         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
8590           default filter from the list
8591
8592 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
8593
8594         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
8595           default filter from the list
8596
8597 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
8598
8599         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
8600
8601         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
8602         g_strdup_printf instead of calcing the length separately
8603
8604 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
8605
8606         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
8607         that we don't do in many other places. (Fixing duplicate 
8608         #include of config.h)
8609
8610         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
8611         Otherwise, #ifndef XINPUT_NONE check in the latter
8612         doesn't work. (Bug #546)
8613
8614 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
8615
8616         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
8617         "None" case insensitive.
8618
8619 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
8620
8621         * gdk/gdkselection.c: 
8622         Add error traps so if the other end of the connection
8623         dies, we survive.
8624
8625 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
8626
8627         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
8628         dest_xid field into two fields - one for the window
8629         to send in messages, one to indicate the last looked
8630         up window for caching purposes. This is needed, so
8631         that Leave messages get the correct window.
8632
8633 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
8634
8635         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
8636         Fix warning created by people mucking around
8637         with the gsource API.
8638
8639         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
8640         Change mapping between GIOCondition and GdkInputCondition
8641         to match the way the Linux kernel does it. This should
8642         fix problems where closed pipes were no longer signalling
8643         GDK_INPUT_READ on systems with a native poll().
8644
8645 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
8646
8647         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
8648         explicitly for the string "None" - it is in the XPM
8649         spec and some servers treat unknown colors in odd ways
8650         (like asking the user!)
8651
8652 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
8653
8654         * gdk/gdkevents.c: made "->" into a "." of previous change so
8655         it compiles
8656
8657 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
8658
8659         * gdk/gdkevents.c (gdk_compress_exposures): Set the
8660         window field of the event structure before calling
8661         user filters.
8662
8663 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
8664
8665         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
8666         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
8667
8668 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
8669
8670         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
8671         intermediate text property - prevents major memory
8672         leak when gdk_use_mb.
8673         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
8674
8675 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
8676
8677         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
8678         gtk-a-higuti-990322-[0-3]
8679
8680         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
8681         sizeof(wchar_t) != sizeof (GdkWChar)
8682
8683         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
8684         that was causing -DX_LOCALE not to work.
8685
8686         * gtk/gtkrc.c (gtk_rc_init):
8687         X_LOCALE will never have LC_MESSAGES defined
8688
8689         * gdk/gdk.c (gdk_init_check):
8690         Remove --xim-preedit and --xim-status from argv properly.
8691
8692         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
8693         that the client window is present on the X server
8694         before we pass it to the input method.
8695
8696 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
8697
8698         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
8699         if --display is specified on the command line, than
8700         the drag window will not be created on that display.
8701         
8702 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
8703
8704         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
8705         lookups with only_if_exists == TRUE were inserting
8706         bogus values into the atom cache.
8707
8708 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
8709
8710         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
8711         then reset it to NULL.
8712
8713         * gdk/gdkcolor.c:
8714         (gdk_colors_free): 
8715         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
8716         key for g_hash_table_remove() in both functions, this prevents us
8717         from accessing possibly uninitialized portions of a GdkColor structure
8718         where we are only interested in its pixel value.
8719
8720 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
8721
8722         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
8723         font hash table, if we have a GdkFontPrivate entry for this font
8724         already, simply increment its reference count, provided by Olaf Dietsche
8725         <olaf.dietsche+list.gtk@netcologne.de>.
8726
8727 1999-09-21  Tor Lillqvist  <tml@iki.fi>
8728
8729         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
8730         just to be sure.
8731
8732         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
8733         unused variables, leftovers from the X11 version.
8734
8735         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
8736
8737         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
8738         downcase fields on X11.
8739
8740 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
8741         
8742         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
8743         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
8744
8745 1999-09-17  Tor Lillqvist  <tml@iki.fi>
8746
8747         * gdk/win32/gdk.def: Add gdk_threads_mutex.
8748
8749         * gtk/makefile.msc: Correct path to libintl.
8750
8751         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
8752         use of gint vs. int, and gint vs. gboolean in headers and
8753         definitions. Use GtkType for the *_get_type functions. Note that
8754         these changes preserve binary compatibility.
8755
8756         * gdk/gdk.c
8757         * gdk/win32/gdk.c
8758         * gdk/gdk.h: Fix inconsistencies: gint vs int.
8759
8760         * gtk/gtkmain.c
8761         * gtk/gtkclist.c
8762         * gtk/gtkmenufactory.c
8763         * gtk/gtknotebook.c
8764         * gtk/gtkwidget.c: Fix inconsistencies, also gint
8765         vs. gboolean.
8766
8767         * gtk/gtkcolorsel.[ch]
8768         * gtk/gtkcombo.[ch]
8769         * gtk/gtkdrawingarea.[ch]
8770         * gtk/gtkgamma.[ch]
8771         * gtk/gtkhandlebox.[ch]
8772         * gtk/gtkhpaned.[ch]
8773         * gtk/gtkhruler.[ch]
8774         * gtk/gtkplug.[ch]
8775         * gtk/gtkpreview.[ch]
8776         * gtk/gtkruler.[ch]
8777         * gtk/gtksocket.[ch]
8778         * gtk/gtkstatusbar.[ch]
8779         * gtk/gtktoolbar.[ch]
8780         * gtk/gtkvbbox.[ch]
8781         * gtk/gtkvpaned.[ch]
8782         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
8783         functions.
8784
8785         * gtk/gtkgamma.h: Fix bug, missing () in call of
8786         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
8787
8788 1999-09-14  Tor Lillqvist  <tml@iki.fi>
8789
8790         * gdk/gdkcolor.c (gdk_colormap_new)
8791         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
8792         colormap->colors was allocated twice.
8793
8794         * gdk/win32/gdk.c: Remove some unused stuff.
8795
8796         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
8797         colormap.
8798
8799         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
8800         * gtk/gtklabel.h (gtk_label_get_type)
8801         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
8802         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
8803         in a couple of places, not guint.
8804
8805 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
8806
8807         * configure.in,po/et.po: added Estonian language file
8808
8809 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
8810
8811         * configure.in,po/da.po: added Danish file
8812
8813 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
8814
8815         * docs/gtkfaq.sgml: Minor FAQ Update
8816
8817 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
8818
8819         * docs/gtkfaq.sgml: FAQ update
8820
8821 1999-08-27  Tor Lillqvist  <tml@iki.fi>
8822
8823         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
8824         way to get window contents continually refreshed while resizing. I
8825         didn't like the effects myself, so it's not on by default.
8826
8827         * gdk/win32/gdkprivate.h: New flag variable
8828         gdk_event_func_from_window_proc, FALSE by default.
8829
8830         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
8831         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
8832         are passed --gdk-event-func-from-window-proc.
8833
8834         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
8835         and we have am event_func, call it instead of enqueing the event.
8836
8837 1999-08-23  Tor Lillqvist  <tml@iki.fi>
8838
8839         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
8840         Kelley: Set expose_count in GdkEventExposes correctly.
8841
8842         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
8843         MULTIPLE_WINDOW_CLASSES).
8844
8845         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
8846         for bug in NT, apparently NT *does* draw the end pixel, too, in
8847         LineTo with a one-pixel pen, so we don't have to do it ourselves.
8848
8849 1999-08-21  Tor Lillqvist  <tml@iki.fi>
8850
8851         Improvements by Hans Breuer: 
8852
8853         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
8854
8855         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
8856         CS_?REDRAW flags as they cause lots of (late) redraws when "show
8857         window contents while dragging" is turned on. Allocate at least
8858         one unique class for every GdkWindowType. If support for single
8859         window-specific icons is ever needed (eg. Dialog specific), every
8860         such window should get its own class.
8861
8862 1999-08-19  Tor Lillqvist  <tml@iki.fi>
8863
8864         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
8865         error that caused crashes.
8866
8867 1999-08-17  Tor Lillqvist  <tml@iki.fi>
8868
8869         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
8870         window, use ScrollWindowEx, and call UpdateWindow. This prevents
8871         bugs when for instance part of the window was outside the
8872         display. Thanks to Philippe Colantoni for finding and fixing this.
8873
8874 1999-08-16  Tor Lillqvist  <tml@iki.fi>
8875
8876         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
8877         endpoint calculations which were totally wrong. (A little RTFMing
8878         helps a lot ;-)
8879
8880         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
8881         from a separate directory, not from gettext, because of licensing
8882         issues (we want to use the LGPL version).
8883
8884         * README.win32: Mention the intl from glibc vs from gettext issue.
8885
8886 1999-08-13  Tor Lillqvist  <tml@iki.fi>
8887
8888         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
8889         in the key event handling: Now AltGr chars work again. Also,
8890         now Alt-digits are passed up as well as Control-digits.
8891         Pass keypad plus and minus as normal plus and minus.
8892
8893 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
8894
8895         * docs/gtkfaq.sgml: FAQ Update
8896
8897 1999-07-25  Tor Lillqvist  <tml@iki.fi>
8898
8899         * README.win32
8900         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
8901         the Wintab SDK.
8902
8903         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
8904         OK, but getting closer. Guard against bogus tilt data from Wacom
8905         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
8906         enable easier building without Wintab.
8907
8908         * gdk/win32/gdkinput.h
8909         * gdk/win32/gdkevents.c 
8910         * gdk/win32/gdkwindow.c: Minor changes related related to above.
8911         
8912         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
8913         code. As we have just one visual on Win32, no sense to have it in a
8914         table, and no need for the hash table.
8915
8916         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
8917         better on white background.
8918
8919 1999-07-21  Tor Lillqvist  <tml@iki.fi>
8920
8921         * README.win32: Update gcc build instructions. Mention gettext is
8922         GPL.
8923
8924         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
8925         supported cursor size with GetSystemMetrics.
8926
8927         * gdk/win32/gdkfont.c
8928         * gtk/gtkfontsel.c: Guard against some font weight and charset
8929         symbols being undefined (in mingw32 headers).
8930
8931         * gdk/win32/makefile.cygwin
8932         * gtk/makefile.cygwin
8933         * gtk/gtkthemes.c: No longer need to have differently named
8934         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
8935
8936 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
8937
8938         * docs/gtkfaq.sgml: Long awaited FAQ update.
8939
8940 1999-07-15  Tor Lillqvist  <tml@iki.fi>
8941
8942         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
8943         it. Obscure bit manipulation needed.
8944
8945         * gdk/win32/gdkevents.c: Logging.
8946         
8947         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
8948         style (file name include compiler name) for theme engines.
8949
8950 1999-07-13  Tor Lillqvist  <tml@iki.fi>
8951
8952         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
8953
8954         * gdk/win32/gdkevents.c: Fix long-standing bug in key
8955         events. The key.string wasn't zero-terminated, still we strdup'ed
8956         it in gdk_event_copy(). Synthesize crossing events for button
8957         events before possible propagation.
8958
8959         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
8960
8961         * gdk/win32/makefile.cygwin
8962         * gtk/makefile.cygwin: Use new DLL naming style for the
8963         GCC-compiled ones.
8964
8965         * gdk/win32/makefile.msc
8966         * gtk/makefile.msc: Cosmetics mostly.
8967
8968         * gtk/gtk.def: Add missing entry points.
8969
8970         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
8971
8972 1999-07-09  Tor Lillqvist  <tml@iki.fi>
8973
8974         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
8975         or height is zero. Don't print a warning if Pie or Arc fails, they
8976         always fail (?) for very narrow ellipses.
8977
8978         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
8979         the part or the destination window corresponding to source area
8980         outside of the source drawable's boundary.
8981
8982         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
8983         anything if less than two points.
8984
8985         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
8986         return NULL. Gtk cut-and-paste inside a single program works
8987         better this way. (It always gets the clipboard contents from
8988         Windows, not from its own copy, which is cleared anyway. I can't
8989         say I fully understand what happens... Emulating the X selection
8990         and property stuff is a bit of a mess.)
8991
8992         * gdk/win32/gdkevents.c
8993         * gdk/win32/gdkproperty.c: A bit more verbose logging.
8994
8995         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
8996         that never got deleted). Revamp gdk_region_shrink.
8997
8998         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
8999         after use.
9000
9001         * gtk/gtk.def: Add some missing entry points.
9002
9003         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
9004         component.
9005
9006 1999-07-04  Tor Lillqvist  <tml@iki.fi>
9007
9008         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
9009         Control-digits specially.
9010
9011 1999-07-03  Tor Lillqvist  <tml@iki.fi>
9012
9013         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
9014
9015 1999-06-28  Tor Lillqvist  <tml@iki.fi>
9016
9017         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
9018         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
9019         finding this.)
9020
9021 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
9022
9023         * gtk+.spec.in: Corrected some typos in files section.
9024         
9025 1999-06-15  Tor Lillqvist  <tml@iki.fi>
9026
9027         * README.win32: Mention using GNU gettext.
9028         * config.h.win32: Enable NLS stuff.
9029         * gtk/makefile.msc: Use GNU gettext.
9030         * gdk/win32/gdkdnd.c: Minor header reorg.
9031         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
9032         cosmetics.
9033         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
9034         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
9035
9036 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
9037
9038         * acinclude.m4
9039         * config.guess
9040         * config.status
9041         * ltconfig
9042         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
9043
9044 1999-05-30  Tor Lillqvist  <tml@iki.fi>
9045
9046         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
9047         SafeAdjustWindowRectEx. Don't override all calls to
9048         AdjustWindowRectEx by it, but use it only in two places: When
9049         creating a new top-level window and when moving a top-level
9050         window.
9051
9052         Use screen coordinate rectangle, not client rectangle, in
9053         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
9054         when we try to place a window so that the decoration (mainly,
9055         title bar) isn't visible.
9056
9057         These changes fix the bug that showed up for instance as the
9058         GIMP's saved top-level windows moving right and down (by an amount
9059         equal to the window decoration) for each session. This bug showed
9060         up also in testgtk's "Saved Position".
9061
9062         gdk_window_resize also redone a bit.
9063
9064 1999-05-25  Tor Lillqvist  <tml@iki.fi>
9065
9066         * gtk/testgtkrc: Add (commented out) Windows-style theme
9067         include line.
9068
9069         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
9070
9071 1999-05-18  Tor Lillqvist  <tml@iki.fi>
9072
9073         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
9074         gdkx.h to a gdk subdirectory, so that applications can include
9075         these with <gdk/*.h> without trouble.
9076
9077         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
9078         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
9079         have their bitmap destroyed.
9080
9081         * gdk/win32/gdk.def: Add gdk_root_parent.
9082
9083 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
9084
9085         * configure.in
9086           gtk-config.in
9087           ltconfig
9088           ltmain.sh     
9089           gtk/Makefile.am: changes to compile nicely (with xlib) 
9090           on BeOS
9091
9092 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
9093
9094         * acinclude.m4
9095         * config.guess
9096         * config.sub
9097         * ltconfig
9098         * ltmain.sh: upgrade to libtool 1.3
9099
9100 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
9101
9102         * gtk/gtkclist.c:
9103         * gtk/gtkctree.c: merges from gtk-1-2
9104
9105 1999-04-25  Tor Lillqvist  <tml@iki.fi>
9106
9107         Support added for building using a GNU toolchain on Win32,
9108         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
9109
9110         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
9111         * config.h.win32: Changes for gcc.
9112         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
9113         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
9114         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
9115         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
9116         Protect shl stuff unavaiilable with mingw32 headers.
9117         * gdk/win32/gdkevents.c: Fix typo.
9118         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
9119         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
9120         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
9121         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
9122         the mingw32 headers.
9123         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
9124         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
9125         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
9126         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
9127         Test for NATIVE_WIN32, not _MSC_VER.
9128         * gtk/gtkmain.c: No use warning about developer version on Win32,
9129         there aren't any non-developer versions anyhow.
9130         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
9131         * gtk/makefile.msc: Use pthread from another directory. Minor other
9132         changes. 
9133
9134 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
9135
9136         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
9137           default filter from the list
9138
9139 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
9140
9141         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
9142          when gtk_widget_grab_default() is called for a widget that
9143          is not within a GtkWindow.
9144
9145 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
9146
9147         * docs/gtk_tut.sgml, examples/clist.c: use a
9148           scrolled window in the clist example. Minor
9149           tutorial fixes.
9150
9151 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
9152
9153         * docs/gtk_tut.sgml: Style check from David King
9154           <dking@youvegotmail.net>
9155
9156 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
9157
9158         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
9159         compile with unknown value of GDK_WINDOWING
9160
9161 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
9162
9163         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
9164         after the rule is fired.
9165         (install-exec-local): Install gdkconfig.h only if the contents are
9166         different from the currently installed gdkconfig.h.
9167
9168 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
9169
9170         * gdk/Makefile.am (configexecincludedir): Rename from 
9171         configincludedir so that gdkconfig.h will be installed 
9172         as part of `make install-exec'. 
9173
9174 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
9175
9176         * acinclude.m4
9177         * config.guess
9178         * config.sub
9179         * ltconfig
9180         * ltmain.sh: upgrade to libtool 1.2f
9181
9182         * autogen.sh: libtool is not required to autogen gtk+
9183
9184         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
9185         needed)
9186
9187 1999-03-18  Tor Lillqvist  <tml@iki.fi>
9188
9189         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
9190         declaring gdk variables exported/imported from the DLL. New image
9191         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
9192         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
9193         GDK_DRAG_PROTO_OLE2.
9194
9195         * gdk/gdk.h: Merge in Win32 version: Two new functions,
9196         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
9197         declared only for the Win32 version, but could be in the X11
9198         version as well. (Needed for a Xlib-less gdk_imlib.)
9199         gdk_color_hash should have only one parameter. Declare
9200         gdk_threads_mutex with GDKVAR.
9201         
9202         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
9203         just one parameter.
9204
9205         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
9206         per pixel, not bits.
9207
9208         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
9209         Fetch bpp (which means bits-per-pixel here) from another place on
9210         Win32. Accept also depth==32 (which we might get on Win32) with
9211         bpp==32.
9212
9213         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
9214         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
9215         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
9216         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
9217         in the backend-dependent directory, not in the common gdk
9218         directory.
9219
9220         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
9221         headers.
9222
9223 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
9224
9225         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
9226         want to use the Gtk+ devel version (which is true, and yes - even i am
9227         currently working with the 1.2.x branch). so everyone reading this, you
9228         probably want to issue
9229         cvs checkout -r glib-1-2 glib
9230         and
9231         cvs checkout -r gtk-1-2 gtk+
9232         as your next two comands.
9233
9234 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
9235
9236         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
9237         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
9238
9239         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
9240         file. strongly deprecated the GTK_HAVE_* macros, we provide
9241         GTK_CHECK_VERSION() for people that need to check for certain
9242         Gtk+ versions.
9243
9244         * gtk/gtkcompat.h: removed this from CVS.
9245         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
9246         idea right from the start, it just didn't seem like that back then.
9247
9248 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
9249
9250         * merges from gtk-1-2:
9251
9252 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
9253
9254         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
9255         item factory class has been created.
9256         (gtk_item_factory_parse_rc): likewise.
9257
9258         * gtk/gtkmenu.c:
9259         keep proper references for old_active_menu_item.
9260         (gtk_menu_reparent): unset the usize of the new parent,
9261         so the menu can sanely be size requested and we don't get nasty screen
9262         artefacts upon next reparentation.
9263         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
9264         enter notify. only synthesize enter notifies if the pointer really is
9265         inside the event window.
9266         (gtk_menu_popdown): use gtk_menu_shell_deselect().
9267         (gtk_menu_popup): move the background setting stuff into
9268         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
9269
9270         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
9271         gtk_menu_shell_select_item() to select the new item.
9272         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
9273         do the right thing for deselection as well.
9274
9275 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
9276
9277         * gtk/gtkwidget.[hc]:
9278         (gtk_widget_accelerators_locked): return whether a widget's accelerators
9279         are locked.
9280
9281         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
9282         existing accelerators if the widget's accelerators are locked.
9283
9284 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
9285
9286         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
9287
9288         * gtk/gtkmenu.c: truely forward key press and key release events to
9289         the menu widget from the toplevel or tearoff window. we can't simply
9290         connect to that, we need to stop further processing of the events as
9291         well.
9292
9293 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
9294
9295         * gtk/gtkmenu.c:
9296         (gtk_menu_key_press): pass event->keyval, event->state to
9297         gtk_accelerator_valid, instead of event->keyval twice.
9298         refuse to install single letter accelerators for menus that use
9299         single letter shortcuts.
9300
9301         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
9302         gtk_menu_ensure_uline_accel_group().
9303
9304         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
9305         which will always return an uline accel group, made
9306         gtk_menu_get_uline_accel_group() return NULL if the group isn't
9307         yet created.
9308
9309 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
9310
9311         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
9312
9313         * gtk/gtkclist.c (gtk_clist_column_title_passive):
9314         Leave button sensitive, trap  button_press, button_release,
9315         motion_notify, enter_notify and leave_notify events instead.
9316         (gtk_clist_column_title_active): disconnect event handler.
9317         (gtk_clist_drag_data_get): fixed memory leak. Reported by
9318         Guillaume Laurent <glaurent@worldnet.fr>
9319
9320 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
9321
9322         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
9323         width/height mixups.
9324
9325         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
9326         if needed.
9327
9328 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
9329
9330         * gtk/testgtk.c (create_item_factory): unref the item factory after
9331         window's destruction.
9332
9333         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
9334         count on the menu shell around the menu item's activation, since the
9335         signal emission may cause menu shell destruction.
9336
9337         * gtk/gtkitemfactory.c:
9338         the previous code leaked one accel group per menu. we use
9339         gtk_menu_get_uline_accel_group() now to fix that, and with that
9340         also create the underline accelerator group of the menus only if
9341         required (i.e. an underline accelerator has been specified).
9342         (gtk_item_factory_construct):
9343         (gtk_item_factory_create_item): removed code that would create an
9344         extra accel group for the menu (and leak references).
9345         (gtk_item_factory_create_item): adapted the underline accelerator
9346         installation code to properly feature gtk_menu_get_uline_accel_group().
9347
9348         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
9349         menu->accel_group, this may return NULL if the accelerator group
9350         hasn't been set yet.
9351         added gtk_menu_get_uline_accel_group() to retrive the underline
9352         accelerator group of the menu, this will be created on demand
9353         and proper care is taken about its reference count.
9354
9355         * gtk/gtkitemfactory.h:
9356         * gtk/gtkitemfactory.c:
9357         dumped the approach of keeping a widgets by action list on the
9358         factory since the factory<->widget destroy negotiation didn't work
9359         and would be hard to get going at all. instead we keep a list of
9360         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
9361         persistant throughout a program's life time).
9362         also, i removed the static const gchar *key_* variables, and made
9363         them inline strings (they weren't actually used anyways).
9364         (gtk_item_factory_add_item): update ifactory->items.
9365         (gtk_item_factory_destroy): destroy ifactory->items (and remove
9366         the item factory pointer from the remaining ifactory widgets).
9367         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
9368         list to find the widget.
9369         (gtk_item_factory_get_item): new function that works around
9370         gtk_item_factory_get_widget() limitations, this function will only
9371         return menu items, even for <Branch> entries.
9372
9373 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
9374
9375         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
9376         font hash table, if we have a GdkFontPrivate entry for this font
9377         already, simply increment its reference count, provided by Olaf Dietsche
9378         <olaf.dietsche+list.gtk@netcologne.de>.
9379
9380         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
9381         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
9382
9383 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
9384
9385         * gtk/gtkcontainer.c:
9386         (gtk_container_add_with_args):
9387         (gtk_container_addv):
9388         (gtk_container_add): before adding a child to a conatiner, make sure
9389         it is (default) constructed, this is neccessary because under certain
9390         circumstances the child will get relized and mapped immediatedly, in
9391         which case it has to be constructed already.
9392
9393 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
9394
9395         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
9396         values > 1 as TRUE also.
9397
9398 1999-03-16  Tor Lillqvist  <tml@iki.fi>
9399
9400         * README.win32: New file.
9401                 
9402         * configure.in: Check for lstat.
9403
9404         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
9405         completeness.
9406
9407         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
9408
9409         * gtk/gtk.def: Removed CRs.
9410
9411         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
9412         ..\gdk\win32).
9413
9414         * gdk/win32/makefile.msc: Correct upwards relative paths.
9415         
9416 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
9417
9418         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
9419           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
9420           it was connecting a void function to expose_event and the int
9421           returning function to the draw signal
9422
9423 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
9424
9425         * configure.in:
9426         Use correct path to libgmodule.la when ref'ing uninstalled copy
9427         of glib.  (Already in stable branch, Bug #417)
9428
9429 1999-03-15  Tor Lillqvist  <tml@iki.fi>
9430
9431         Win32 merge and general portability stuff:
9432                 
9433         * acconfig.h,configure.in: Check for <sys/time.h>.
9434
9435         * gdk/win32: New directory (actually, been there for a while).
9436         
9437         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
9438         NATIVE_WIN32, and use these. Always case fold on Win32. No
9439         backslashed escapes on native Win32.
9440
9441         * gtk/{gtk.def,makefile.msc}: New files.
9442
9443         * gtk/Makefile.am: Add above new files.
9444         
9445         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
9446         instead of <strings.h>.
9447
9448         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
9449         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
9450         <unistd.h> appropriately.
9451
9452         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
9453         Use ABS() (from <glib.h>) instead of abs().
9454         
9455         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
9456         of gtk (and thus glib) headers, so that WIN32 will be
9457         defined. With MS C, include <direct.h> for mkdir prototype.
9458
9459         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
9460         some casts, needed by MS C.
9461
9462         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
9463         implemented).
9464
9465         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
9466         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
9467         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
9468
9469         * gtk/gtkmain.h: Mark variables for export/import on Win32.
9470                 
9471         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
9472         the event is not a hint, or its window is not the slider. Needed
9473         on Win32, at least.
9474
9475         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
9476         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
9477         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
9478         a subdirectory of the Windows directory as gtk system
9479         configuration directory.
9480
9481         * gtk/gtkselection.c: No chunks on Win32.
9482
9483         * gtk/gtksocket.c: Not implemented on Win32.
9484
9485         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
9486
9487         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
9488
9489         * gtk/maketypes.awk: Declare variables with a macro that expands to
9490         necessary export/import magic in the case of Win32.
9491                 
9492         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
9493
9494 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
9495
9496         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
9497         since those were meant only for gdki18n.h.  
9498         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
9499         for widechar tests.
9500         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
9501
9502 1999-03-13  Tor Lillqvist  <tml@iki.fi>
9503
9504         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
9505         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
9506
9507         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
9508         installed) to CFLAGS.
9509
9510         * gdk/Makefile.am: Add rules for gdkconfig.h.
9511
9512         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
9513         APIs.
9514
9515         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
9516         gdkx.h anyway when compiling for X11.
9517         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
9518         general): Merge in Win32 version.
9519         
9520         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
9521         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
9522         expansion (if we don't have HAVE_PWD_H), allow for drive
9523         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
9524         included code from Craig Setera's port to Win32 (the one that uses
9525         X11, and the cygwin dll), even if it probably will be abandoned.
9526
9527         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
9528         the user entered one herself.  This way one can complete *.h and
9529         don't get matches on any .help files, for instance.
9530         
9531 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
9532
9533         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
9534         font hash table, if we have a GdkFontPrivate entry for this font
9535         already, simply increment its reference count, provided by Olaf Dietsche
9536         <olaf.dietsche+list.gtk@netcologne.de>.
9537
9538         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
9539         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
9540
9541 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
9542
9543         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
9544         the number of calls to gdk_draw_point() (and thus to X) by
9545         clipping the points by hand.
9546
9547         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
9548         the clip parameter.
9549         (gtk_handle_box_paint): Only paint the handle if the expose area
9550         intersects it.
9551
9552 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
9553
9554         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
9555
9556 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
9557
9558         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
9559         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
9560
9561 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
9562
9563         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
9564          textmode (O_TEXT) for OS/2 version.
9565
9566 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
9567
9568         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
9569         GtkSpinButton, "input" and "output", to make the output more flexible.
9570         The user has to provide a mapping between adjustment->value and the
9571         output string (and vice versa, if the spin button is editable). 
9572         See testgtk for examples.
9573
9574 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
9575
9576         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
9577         new one.
9578         
9579         * configure.in: set gtk+ version to 1.3.0.