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