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