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