]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
add this function, bug 40251
[~andy/gtk] / ChangeLog.pre-2-6
1 2001-01-10  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4         add this function, bug 40251
5
6         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7         of type macro   
8
9 2001-01-11  Alexander Larsson  <alexl@redhat.com>
10
11         * acconfig.h:
12         Added ENABLE_SHADOW_FB
13
14         * configure.in:
15         Added --disable-shadowfb
16
17         * gdk/linux-fb/gdkcursor-fb.c:
18         Update shadowfb when updating cursor
19
20         * gdk/linux-fb/gdkdrawable-fb2.c:
21         Added wrappers for shadowfb that calls  the normal drawable
22         methods, but calls gdk_shadow_fb_update(bounding box) when
23         GdkWindows are drawed to.
24         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
25         which also returns the bounding box.
26
27         * gdk/linux-fb/gdkfb.h:
28         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
29
30         * gdk/linux-fb/gdkgeometry-fb.c:
31         Update shadowfb when scrolling window.
32
33         * gdk/linux-fb/gdkglobals-fb.c:
34         Add _gdk_fb_screen_angle.
35         
36         * gdk/linux-fb/gdkkeyboard-fb.c:
37         Test code for screen rotation. Shift-F2 in the xlate driver
38         rotates the screen.
39
40         * gdk/linux-fb/gdkmain-fb.c:
41         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
42
43         * gdk/linux-fb/gdkmouse-fb.c:
44         Use fb_width/height instead of modeinfo.xres/yres.
45
46         * gdk/linux-fb/gdkprivate-fb.h:
47         Added fb_men, fb_width, fb_height & fb_stride. When using
48         shadow fb these can differ from the framebuffer stuff.
49         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
50         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
51         _gdk_fb_screen_angle. Removed CM, RP.
52
53         * gdk/linux-fb/gdkrender-fb.c:
54         Added code for shadowfb handling and screen rotation using
55         shadowfb.
56
57         * gdk/linux-fb/gdkwindow-fb.c:
58         Use fb_mem, fb_stride, fb_width, fb_height.
59         Added recompute_rowstride to reset the rowstride of all windows.
60         Added gdk_fb_recompute_all() which recomputes rootwindow size,
61         window abs positions and window rowstrides. Usefull when the
62         rotation has changed.
63
64 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
65
66         * docs/faq/gtk-faq.sgml: update to make web site updating easier
67
68 2001-01-10  Havoc Pennington  <hp@redhat.com>
69
70         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
71         where sibling == iter
72         (gtk_tree_store_insert_after): handle sibling == iter
73         (gtk_tree_store_prepend): remove stamp checks
74         (gtk_tree_store_insert_before): ditto
75         (gtk_tree_store_append): ditto
76         (gtk_tree_store_get_path): ditto
77         (gtk_tree_store_get_value): ditto
78         (gtk_tree_store_iter_has_child): ditto
79         (gtk_tree_store_iter_n_children): ditto
80         (gtk_tree_store_iter_nth_child): ditto
81         (gtk_tree_store_insert_after): ditto
82         (gtk_tree_store_is_ancestor): ditto
83         (gtk_tree_store_iter_depth): ditto
84         (gtk_tree_store_insert_before): assert that sibling's parent is
85         the same as the passed-in parent
86         (gtk_tree_store_insert_after): assert that sibling's parent is
87         the same as the passed-in parent
88
89         
90         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
91         function to get the first iterator in a model
92         
93         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
94         conventionally the "root" in this sense is just NULL afaict.
95
96         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
97         where sibling == iter
98         (gtk_list_store_insert_after): handle case where sibling == iter
99
100         * tests/testtreeview.c (run_automated_tests): fairly lame basic
101         automated tests for ListStore, TreeStore
102
103         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
104         (gtk_list_store_insert): update tail pointer, and fix it to work
105         (gtk_list_store_insert_before): update tail pointer, and fix it to work
106         (gtk_list_store_append): use tail to be faster
107         (gtk_list_store_prepend): fix it, update tail pointer
108         (gtk_list_store_insert_after): fix it, update tail pointer
109
110         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
111         the list
112
113 2001-01-09  Havoc Pennington  <hp@redhat.com>
114
115         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
116         is NULL due to a pending resize
117
118         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
119         column width to values less than 1
120
121         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
122         width to be between min/max width, and still set the width 
123         even if autosize is turned on, so the tree view can use this 
124         function in order to autosize.
125         (gtk_tree_view_column_init): set initial width to 1 not 0
126
127         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
128         setter function to modify column width, so we get notification
129         (gtk_tree_view_insert_iter_height): ditto
130         (gtk_tree_view_calc_size): ditto
131         (gtk_tree_view_check_dirty): ditto
132
133         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
134         properties to change all the interesting attributes of the tree
135         view column.
136         (gtk_tree_view_column_set_header_clickable): rename set_clickable
137         (gtk_tree_view_column_get_clickable): add
138         (gtk_tree_view_column_set_cell_renderer): don't unset the current
139         attributes; assume a cell renderer with equivalent object
140         properties has been swapped in. Do g_object_notify().
141         (gtk_tree_view_column_set_visible): g_object_notify
142         (gtk_tree_view_column_get_sizing): rename from get_col_type
143         (gtk_tree_view_column_set_sizing): g_object_notify
144         (gtk_tree_view_column_set_width): add g_object_notify
145         (gtk_tree_view_column_set_min_width): ditto
146         (gtk_tree_view_column_set_max_width): ditto
147         (gtk_tree_view_column_set_title): ditto
148         (gtk_tree_view_column_set_clickable): ditto
149         (gtk_tree_view_column_set_widget): ditto
150         (gtk_tree_view_column_set_justification): ditto
151
152 2001-01-09  Havoc Pennington  <hp@redhat.com>
153
154         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
155         there are no rows in the model
156
157         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
158         NULL, then return the start of the list
159
160         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
161         if we can't get any rows from an empty model 
162
163         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
164         extraneous * after function pointer typedef usage
165
166         * Makefile.am: don't specify full path to cp and rm
167
168         * gtk/gtkcellrenderertextpixbuf.c
169         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
170         NULL before dereferencing, fixes a segfault that happened from
171         time to time
172
173         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
174         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
175         and reindent the function
176         (gtk_cell_renderer_pixbuf_get_size): indentation
177
178         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
179         we quit it
180         (gtk_dialog_add_buttons_valist): add g_return_if_fail
181         (gtk_dialog_set_default_response): New function, to set default
182         button
183         (gtk_dialog_set_response_sensitive): New function, to set 
184         sensitivity of buttons
185
186         * gtk/gtkcellrendererpixbuf.c
187         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
188         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
189
190         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
191         handle any G_TYPE_OBJECT subclass, not just the base class, and 
192         also boxed types.
193         (_gtk_tree_data_list_value_to_node): ditto
194
195         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
196         --gtk-debug=tree
197
198         * gtk/gtkmain.c: add GTK_DEBUG_TREE
199
200         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
201
202 2001-01-09  Tor Lillqvist  <tml@iki.fi>
203
204         * gdk/win32/gdkevents-win32.c: Implement better mouse
205         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
206         (find_window_for_pointer_event): New function.
207         (gdk_event_translate): Use it when handling mouse events.
208
209 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
210
211         * configure.in:
212         Added --with-included-loaders option
213
214         * gdk-pixbuf/Makefile.am:
215         * gdk-pixbuf/gdk-pixbuf-io.c:
216         Add support for including selected gdk-pixbuf loaders only.
217
218         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
219         gtk_window_set_has_frame):
220         Added inline documentation.
221
222         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
223         * docs/reference/gdk/tmpl/windows.sgml:
224         Added inline documentation.
225
226 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
227
228         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
229         realizing buttons that have already been realized.
230
231 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
232
233         * tests/testtreeview.c (main): Show menu items before adding to
234         option menu.
235
236         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
237         around if we kill them.
238
239         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
240         Return if we pass in a NULL model.
241
242 2001-01-08  Havoc Pennington  <hp@redhat.com>
243
244         * tests/testtreeview.c: hack on this some
245
246         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
247         gtk_tree_store_set_valist, v is for arrays, valist for varargs
248         list
249         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
250
251         * gtk/gtkliststore.h: Add varargs set() and get() convenience
252         functions
253
254 2001-01-08  Alexander Larsson  <alexl@redhat.com>
255
256         * gtk/gtkwindow-decorate.[hc]:
257         * gtk/Makefile.am:
258         New files. Contains an implementation of a minimal WM for
259         linux-fb.
260
261         * gtk/gtkwindow.h:
262         Add the possibility for GtkWindows to specify a frame. This
263         is used for the window decoration code, but could concievably
264         be used for X programs too (xmms style windows).
265         GtkWindow->frame is the toplevel window if the window is framed.
266         The signal frame_event gets all events that are targeted to
267         GtkWindow->frame.
268         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
269         
270         * gtk/gtkwindow.c:
271         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
272         Call out to gtkwindow-decorate.c for WM support in linx-fb.
273
274 2001-01-08  Alexander Larsson  <alexl@redhat.com>
275
276         * docs/README.linux-fb:
277         Correct filename ~/.pangoft2_aliases
278
279         * gdk/gdkwindow.h:
280         Added new function gdk_window_get_decorations.
281
282         * gdk/linux-fb/gdkfb.h:
283         Removed _gdk_window_get_decorations declaration.
284         Renamed _gdk_window_set_child_handler to
285         gdk_fb_window_set_child_handler.
286
287         * gdk/linux-fb/gdkwindow-fb.c:
288         Renamed _gdk_window_set_child_handler to
289         gdk_fb_window_set_child_handler.
290
291         * gdk/x11/gdkwindow-x11.c:
292         New function gdk_window_get_mwm_hints().
293         Implemented gdk_window_get_decorations.
294
295         * docs/reference/gdk/tmpl/windows.sgml:
296         * docs/reference/gdk/gdk-sections.txt:
297         Added gdk_window_get_decorations docs.
298         
299 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
300
301         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
302         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
303         gdk_fb_window_send_crossing_events):
304         Possibly send focus events when the mouse moves from one
305         window to another.
306
307 2001-01-07  Tor Lillqvist  <tml@iki.fi>
308
309         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
310         gdk_window_new): Adapt  calls to g_{locale,filename}_{to,from}_utf8
311         to match current API.
312
313         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
314         environment variable is set, don't call g_error when on a
315         palettized (PseudoColor) display. Some people want to use GTK+ 
316         in 256-colour mode even though works only partially.
317
318         * gdk/gdk.def
319         * gtk/gtk.def
320         * gtk/makefile.mingw.in: Update.
321
322 2001-01-05  Havoc Pennington  <hp@redhat.com>
323
324         * tests/testtreeview.c: hack on this a bit
325
326         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
327         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
328
329         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
330         was spelled incorrectly
331         (GTK_IS_TREE_MODEL_SIMPLE): ditto
332
333         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
334         from gtk_tree_view_set_headers_active   
335
336         * gtk/gtktexttag.c:
337         (gtk_text_tag_get_property): handle PROP_DIRECTION
338         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
339         properties, bug 40235
340
341         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
342         forward_to_line_end
343
344 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
345
346         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
347         modules/input/gtkimcontextxim.c: Adapt to new prototypes
348         for unicode,locale,filename conversion functions.
349
350 2001-01-05  Havoc Pennington  <hp@redhat.com>
351
352         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
353         broken if called on the first position in the buffer.
354
355         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
356         forward_to_delimiters to be called only if we aren't already at
357         the delimiters.
358
359 2001-01-05  Havoc Pennington  <hp@redhat.com>
360
361         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
362
363 2001-01-05  Alexander Larsson  <alexl@redhat.com>
364
365         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
366         colormap in here. Sync from X port.
367         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
368         Sync from X port.
369         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
370         This happens now and then, and i don't think it is a bug.
371         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
372         != endpoint.
373         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
374         GDK_LINE_SOLID.
375
376         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
377         some of the fields filled in at least.
378
379         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
380         miLineArcD is no more, remove it from the function definition.
381
382 2001-01-04  Havoc Pennington  <hp@redhat.com>
383
384         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
385         this
386
387         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
388         user_data instead of tree_node
389
390         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
391         TREE_VIEW_COLUMN_SIZE
392
393         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
394         "size" field to "width" finishes bug 40061
395
396         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
397         for bitfields, bug 40268
398
399 2001-01-04  Havoc Pennington  <hp@redhat.com>
400
401         Rename some stuff:
402         
403         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
404
405         s/GtkModelSimple/GtkTreeModelSimple/g;
406         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
407         s/gtk_model_simple/gtk_tree_model_simple/g;
408         s/gtkmodelsimple/gtktreemodelsimple/g;
409
410         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
411
412         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
413         s/column_set_col_type/column_set_sizing/g;
414
415         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
416         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
417
418         s/GtkCellRendererType/GtkCellRendererState/g;
419         
420         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
421         (gtk_cell_renderer_toggle_class_init): change "state" property to
422         "active", to match GtkToggleButton
423         (gtk_cell_renderer_toggle_get_active): new function, bug
424         40269
425         (gtk_cell_renderer_toggle_set_active): new function
426         (gtk_cell_renderer_toggle_set_property): route changes to toggle
427         state through gtk_cell_renderer_set_active
428
429 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
430
431         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
432         temporarily until they work again.  Brought up to date with
433         changes in the model.
434         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
435         model.
436
437 2001-01-04  Havoc Pennington  <hp@redhat.com>
438
439         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
440         equal to the line length, then position iterator before paragraph 
441         separators. Fixes crash reported by Mikael Hermansson when
442         pressing left arrow from the start of a line.   
443
444         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
445         about byte indexes off the end
446         (iter_set_from_char_offset): add g_error about char offsets
447         off the end
448
449 2001-01-03  Havoc Pennington  <hp@redhat.com>
450
451         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
452
453         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
454         of private functions; remove inclusion of private headers.
455
456         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
457         function, so we don't need private functions in gtktextdisplay.c
458
459         * gtk/gtktextiterprivate.h: underscore-ification
460
461         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
462         to instead say "only useful to implement widgets"
463
464         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
465         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
466         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
467
468         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
469         This function was completely broken
470
471         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
472
473         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
474
475         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
476
477         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
478
479         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
480
481         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
482
483         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
484         gtk_paint_layout
485
486         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
487         gtk_paint_layout
488
489         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
490         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
491         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
492         which were not implemented.     
493
494         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
495         insert_pixbuf signal. Rename delete_text to delete_range since it
496         also deletes pixbufs and child anchors. This almost closes bug
497         40245 (still need to deal with child anchors)
498
499         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
500         insert_pixbuf, change signal names as appropriate, change types of
501         signals taking marks/tags to have the specific type, not just
502         G_TYPE_OBJECT
503         
504         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
505         closes bug 40051
506
507         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
508         unnecessary remove_contents() call
509         (gtk_option_menu_class_init): add a "changed" signal, closes
510         bug 40039
511         (gtk_option_menu_update_contents): emit "changed" if the 
512         active menu item changes
513
514         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
515         cast to GtkObject, reported by Jonas Borgstrom
516         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
517         we can't do stuff with side effects in finalize. Instead, spew a
518         warning if the loader isn't closed.
519
520         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
521         colormap in here, non-X ports probably need to sync to this change
522
523         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
524         assertion that colormap != NULL, you can set the colormap to NULL
525         if you like.
526         
527         * Makefile.am: remove gtk-config-2.0
528
529         * configure.in: Use pkg-config to locate GLib. Remove
530         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
531         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
532         Use pkg-config to locate Pango. Output correct Pango libs to
533         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
534
535         * Makefile.am (pkgconfig_DATA): install only target-specific pc
536         files
537         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
538         X11 pc files
539
540         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
541         unref from here
542
543 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
544
545         * configure.in:
546         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
547
548 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
549
550         * gtk/gtktextlayout.c
551         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
552         variable when moving back onto a single line.
553
554 2001-01-01  Havoc Pennington  <hp@redhat.com>
555
556         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
557
558         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
559
560         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
561         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
562
563 2001-01-01  Havoc Pennington  <hp@redhat.com>
564
565         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
566
567         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
568         GtkTextAttributes
569
570         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
571         #40246
572         (gtk_text_attributes_copy_values): rename from 
573         gtk_text_attributes_copy
574         (gtk_text_attributes_copy): a more standard GTK copy function, 
575         which returns a new object
576
577 2001-01-01  Havoc Pennington  <hp@redhat.com>
578
579         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
580         
581         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
582         don't fill in tree_view->priv->selection, kind of an unexpected
583         side effect
584
585         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
586         gtkintl.h
587         
588         * gtk/gtkcellrenderer.c: Remove definition of _ and include
589         gtkintl.h
590         (gtk_cell_renderer_get_property): remove calls to g_value_init
591
592         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
593         gtkintl.h
594
595         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
596         and include gtkintl.h
597         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
598         property names
599
600         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
601         GtkTreeSelection
602         (_gtk_tree_selection_new_from_with_view): rename, return
603         GtkTreeSelection
604         (_gtk_tree_selection_set_tree_view): rename with uscore
605         (gtk_tree_selection_get_selected): fill in the "model" out param
606         first, so it gets filled in even if we return at the top of the 
607         function
608         (gtk_tree_selection_real_select_all): add a comment and an else{}
609         to clarify this a bit
610         (gtk_tree_selection_real_unselect_all): add the same else{}
611
612         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
613         set_tree_view to have underscore prefixes, move them to the
614         private header, fix return type of new_with_tree_view
615         (struct _GtkTreeSelection): mark struct
616         fields private  
617
618         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
619         GtkTreeModelFlags, not a guint
620         (gtk_tree_path_prev): return gboolean not gint
621         (gtk_tree_path_up): return gboolean not gint
622
623         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
624         return GtkTreeModelFlags, not a guint
625
626         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
627         that child model is non-null before unrefing it
628         (g_value_int_compare_func): make this a qsort compare func, not 
629         a boolean predicate
630
631         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
632         (add -umn to the end), and mark it unimplemented
633         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
634         I don't see what it's for - doesn't the model always sort itself?
635         (gtk_tree_model_sort_set_compare): this had the wrong signature
636
637         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
638         Fix the docs to say that it destructively replaces existing
639         attributes (previously said that it added attributes).
640         (gtk_tree_view_column_set_visible): canonicalize bool before
641         equality testing. Also, check for realization before
642         hiding/showing the tree_column->window; if this window could exist
643         before realization, then it's busted and needs fixing, we can't 
644         create GDK resources pre-realization. Also, remove
645         superfluous queue_resize(), since set_size() does that for us.
646         (gtk_tree_view_column_set_col_type): check realization before 
647         using tree_column->window
648
649         * gtk/gtktreedatalist.c: fix filename in copyright notice
650
651 2000-12-31  Havoc Pennington  <hp@pobox.com>
652
653         * gtk/gtktextview.c: Rearrange all the
654         scroll-while-dragging-or-selecting code to be different, not
655         necessarily better. ;-)
656         (gtk_text_view_scroll_to_mark): Change this
657         function to take within_margin as a fraction instead of a pixel
658         value, and to take alignment arguments (indicating where to align 
659         the mark inside the visible area)
660         
661         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
662         to GtkObject
663
664         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
665         behavior so that offsets past the end of the line are not 
666         allowed, and an offset equal to the line length moves the iterator
667         to the next line
668         (gtk_text_iter_set_line_index): make parallel change
669         (gtk_text_iter_get_bytes_in_line): add this function
670         
671         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
672         of byte indexes off the end of the line; byte index at the end of
673         the line now returns FALSE and doesn't fill in the requested
674         values, byte index past the end of the line is an error.  Also,
675         don't allow -1 offset anymore, since its meaning is unclear.
676
677         This change exposes some bug in visual cursor motion, where we
678         end up with a huge invalid byte index; needs fixing. Symptom of 
679         bug is a crash when you hit up arrow.
680         
681         (_gtk_text_line_char_locate): match the change to byte_locate
682
683         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
684         from start of line properly. fixes bug reported by Mikael
685         Hermansson where backspace would delete all text before the
686         cursor.
687
688 2000-12-30  Tor Lillqvist  <tml@iki.fi>
689
690         * gdk/win32/gdkwindow-win32.c
691         (gdk_window_impl_win32_get_visible_region): New function, as in
692         the X11 backend.
693         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
694         instead of duplicating the same code here.
695
696         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
697         GDK_COLORMAP macro.
698
699         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
700         destroy function.
701         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
702         access that.
703
704         * gtk/gtk.def: Update.
705
706         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
707
708 2000-12-30  Havoc Pennington  <hp@pobox.com>
709
710         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
711         colormap on input only windows, to avoid special cases all over
712         the code for these windows.
713
714 2000-12-26  Tor Lillqvist  <tml@iki.fi>
715
716         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
717         we are on a palettized display ("PseudoColor" in X11), as the code
718         for that doesn't work anyway, and never has.
719
720 2000-12-22  Alexander Larsson  <alexl@redhat.com>
721
722         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
723         Don't use isprint() for chars > 255.
724
725 2000-12-21  Havoc Pennington  <hp@redhat.com>
726
727         * tests/testtreeview.c: more work
728
729 2000-12-21  Alexander Larsson  <alexl@redhat.com>
730
731         * docs/README.linux-fb:
732         Update the docs to the new pangoft2 way.
733
734 2000-12-21  Alexander Larsson  <alexl@redhat.com>
735
736         * configure.in:
737         For linux-fb get the pangoft2 cflags and libs. This needs a recent
738         pango version.
739         Remove modules/linux-fb/Makefile.
740
741         * gdk/linux-fb/gdkdrawable-fb2.c:
742         Render glyphs using freetype.
743
744         * gdk/linux-fb/gdkfb.h:
745         Add new fb-specific functions needed for managing windows.
746
747         * gdk/linux-fb/gdkmain-fb.c:
748         Remove gdk_font_init/fini() calls.
749
750         * gdk/linux-fb/gdkpango-fb.c:
751         Remove old implementation. Use pangoft2 instead.
752
753         * gdk/linux-fb/gdkprivate-fb.h:
754         Remove PangoFBFont and related stuff.
755
756         * gdk/linux-fb/gdkwindow-fb.c:
757         Implement drawable->get_visible_region.
758         Implement support for _gdk_window_set_child_handler () and
759         _gdk_window_get_decorations().
760
761         * modules/Makefile.am:
762         Remove linux-fb subdir.
763
764         * modules/linux-fb/*:
765         Removed all.
766         
767 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
768
769         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
770         calls, as they are no longer needed.
771
772         * gtk/gtktreemodelsort.c: Fix up the comparison code.
773         
774         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
775         figure out how to emit a signal on an interface.
776
777 2000-12-20  Havoc Pennington  <hp@redhat.com>
778
779         * tests: new directory to contain tests, gtk/test* should move
780         here sometime (with appropriate on-cvs-server hackery)
781
782         * tests/testtreeview.c, tests/Makefile.am: a test
783         
784         * configure.in (AC_OUTPUT): add tests/Makefile
785
786         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
787         and "invisible_set" which were missing
788
789         * gtk/gtkrbtree.h: some cheesy indentation fix
790         
791 2000-12-20  Alexander Larsson  <alexl@redhat.com>
792
793         * gtk/gtkinvisible.c (gtk_invisible_realize):
794         Attach the style to the window so that the style it is not
795         leaked when unrealizing the window.
796
797 2000-12-18  Havoc Pennington  <hp@redhat.com>
798
799         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
800         begin/end user action where appropriate
801         (gtk_text_view_commit_handler): add begin/end user action
802
803         * gtk/gtktextbuffer.c: add begin/end user action signals, and
804         bracket interactive operations with begin/end user action pair.
805         
806         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
807         "interactive" arg from insert_text and delete_text signals.
808         Add begin_user_action, end_user_action signals
809         (gtk_text_buffer_begin_user_action): 
810         (gtk_text_buffer_end_user_action): New functions to delimit 
811         a user-visible action
812
813         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
814         signals.
815         
816 2000-12-18  Havoc Pennington  <hp@redhat.com>
817
818         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
819         was pretty non-working.
820
821         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
822         by passing the length to g_utf8_validate().
823
824 2000-12-16  Havoc Pennington  <hp@pobox.com>
825
826         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
827         Port to GObject, can go back in gdk-pixbuf after setting up 
828         a gdk-pixbuf-marshal.h header over there.
829
830         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
831         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
832         args
833         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
834         set
835         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
836         here, do it when we create the buttons later
837         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
838         (gtk_tree_view_map): paranoia checks that column->button is shown 
839         and unmapped
840         (gtk_tree_view_size_request): only request visible children.
841         Move header size calculation in here, for cleanliness, and 
842         to maintain invariants for child widgets if we eventually 
843         let users set different children inside the buttons
844         (gtk_tree_view_map_buttons): factor out code to map buttons,
845         since it was being called several times
846         (gtk_tree_view_size_allocate_buttons): move_resize the drag
847         windows instead of just moving them; their height may change 
848         if we allow random widgets in there, or the theme changes.
849         (gtk_tree_view_size_allocate): move button size allocation 
850         above emitting the scroll signals, to ensure a sane state when we
851         hit user code
852         (gtk_tree_view_button_release): remove queue_resize after
853         tree_view_set_size(), set_size() will handle any resize queuing
854         that's needed
855         (gtk_tree_view_focus_in): just queue a draw, don't fool with
856         draw_focus goo
857         (gtk_tree_view_focus): use gtk_get_current_event() and
858         gdk_event_get_state()
859         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
860         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
861         semicolon
862         (gtk_tree_view_create_button): show the button here
863         (gtk_tree_view_button_clicked): actually emit the clicked signal
864         on the column
865         (_gtk_tree_view_set_size): return right away if the size is
866         unchanged, as a cheesy optimization
867         (gtk_tree_view_setup_model): rename set_model_realized to 
868         setup_model to match the flag that indicates whether we've 
869         called it
870         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
871         exist, because set_scroll_adjustment does that and it shouldn't
872         matter what order you call these in
873         (gtk_tree_view_get_vadjustment): ditto
874         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
875         for paranoia
876         (gtk_tree_view_set_headers_visible): call
877         gtk_tree_view_map_buttons() instead of using cut-and-paste code
878         (gtk_tree_view_append_column): clarify whether the return value
879         is the count of columns before or after, and do the increment 
880         separately from the return statement so you can tell from the code.
881         (gtk_tree_view_remove_column): ditto
882         (gtk_tree_view_insert_column): ditto
883         (gtk_tree_view_get_column): remove g_return_if_fail for columns
884         outside the existing range, the docs say that outside-range
885         columns are allowed, so we handle them as documented. (Presumably
886         this allows a nice loop with column != NULL as test.)
887         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
888         mean (left/right/center etc.).
889         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
890         (gtk_tree_view_expand_row): add docs
891         (gtk_tree_view_collapse_row): add docs
892
893         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
894         function to emit the clicked signal on a column
895         
896         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
897         state of an event
898         (gdk_event_get_time): don't treat GDK_SCROLL 
899         as a button event, remove default case from switch so gcc 
900         will whine if we don't explicitly handle all event types
901
902         * gtk/gtktreeselection.h: added some FIXME 
903         
904         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
905         "columns" to "n_columns" and "column" to "columns" for clarity
906
907 2000-12-16  Havoc Pennington  <hp@pobox.com>
908         
909         * gtk/gtktextiter.c: General cleanup of the log attr iteration
910         stuff. This should make e.g. the delete key work again in the
911         text widget...
912         (gtk_text_iter_forward_cursor_positions): handle negative count
913         (gtk_text_iter_backward_cursor_positions): handle negative count
914         (gtk_text_iter_forward_word_ends): handle negative count
915         (gtk_text_iter_backward_word_starts): handle negative count
916
917         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
918         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
919         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
920         GObject. No doubt will cause breakage.
921
922         * demos/gtk-demo/textview.c: remove hacks around
923         non-GObject-ification of the text objects
924
925         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
926         the text tag
927         
928 2000-12-14  Havoc Pennington  <hp@pobox.com>
929
930         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
931         that we have Xrender
932
933 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
934
935         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
936         Add two virtualized functions gdk_drawable_get_clip_region - to
937         get the clip region when drawing.
938         
939         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
940         use invalidate_region.
941
942         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
943         region.
944
945         * acconfig.h configure.in: Check for Xft. For now, assume
946         that if Xft is found, Pango was compiled with Xft support
947         as well.
948
949         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
950         gdk_colormap_query_color().
951         
952         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
953         with Xft if appropriate.
954
955         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
956         a pangoxft context if we have XFT and the environment
957         variable GD_USE_XFT is set.
958         
959         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
960         and also possibly an XftDraw structure.
961
962         * gtk/gtkfontsel.c: Handle the case where the font from the
963         style doesn't match any of the fonts a bit better.
964         
965         * gtk/testgtk.c: Add tabs between directional segments for
966         hebrew/arabic test. (Not really necessary, just a little
967         prettier.)
968
969 2000-12-14  Havoc Pennington  <hp@redhat.com>
970
971         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
972         reading a file
973
974 2000-12-14  Havoc Pennington  <hp@redhat.com>
975
976         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
977         unused call to get_last_line()
978
979         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
980         here until boxed is working (and maybe after that - we should
981         really not gratuitously break old code)
982
983         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
984         specific types for font_desc and tabs args, move them to
985         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
986         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
987
988         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
989         use GTK_TYPE_POINTER for signal signatures as a hack-around
990
991         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
992         PangoTabArray
993
994         * gtk/gtktextlayout.c (line_display_iter_to_index): 
995         make static
996         (line_display_index_to_iter): make static
997
998         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
999         to marshal a string not a boxed
1000
1001         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
1002
1003         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
1004         since the UTF-8 isn't validated yet
1005
1006         * gtk/gtktextsegment.c (char_segment_check_func): don't require
1007         lines to end in '\n'
1008         
1009         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
1010         forward_to_delimiters, and grapheme boundaries
1011         (gtk_text_view_delete_from_cursor): properly handle non-newline
1012         delimiters, and grapheme boundaries
1013
1014         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
1015         to gtk_text_iter_forward_to_delimiters, and make it work properly
1016         if empty lines end with a character other than '\n'
1017
1018         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
1019         position
1020
1021 2000-12-15  Tor Lillqvist  <tml@iki.fi>
1022
1023         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
1024
1025         * gtk/gtk.def
1026         * gdk/gdk.def: Update.
1027
1028         * gdk/win32/gdkmain-win32.c
1029         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
1030         gdkmain-win32.c here.
1031
1032         * gdk/win32/makefile.mingw.in (all): No need to make
1033         gdk-win32res.o here, the makefile one step up will call us to make
1034         it.
1035
1036         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
1037         gdkkeys-win32.
1038
1039         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
1040
1041         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
1042         call to g_source_add().
1043
1044         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
1045         leak. Thanks to Andreas Kemnade.
1046
1047 2000-12-13  Havoc Pennington  <hp@pobox.com>
1048
1049         * gtk/gtktextbtree.h: Remove double _ in front of some functions
1050
1051         * gtk/gtktext*.[hc]: update accordingly
1052         
1053 2000-12-13  Havoc Pennington  <hp@pobox.com>
1054
1055         * gtk/gtktextbtree.h: Put _ in front of every function in this 
1056         header file
1057
1058         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
1059
1060 2000-12-13  Alex Larsson  <alexl@redhat.com>
1061
1062         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
1063         Add support for ps2 intellimouse.
1064
1065         * gdkkeyboard-fb.c:
1066         Move shift-F1 repaint handling to xlate handler only.
1067         
1068         * docs/README.linux-fb:
1069         Add imps2 to docs.
1070         Document the new refresh keys.
1071         
1072 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
1073
1074         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
1075
1076         * gtk/gtkbox.c: change property types from (u)long to (u)int for
1077         ::position and ::padding.
1078
1079         * gtk/gtkcontainer.c: make ::border_width an INT property.
1080
1081         * gtk/gtkpacker.c: make ::position an INT property.
1082
1083         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1084         guard against NULL h/v scrollbars, since this is used at construction
1085         time.
1086
1087         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
1088         internal gtk_clist_constructor().
1089
1090         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
1091         gtk_ctree_constructor().
1092
1093         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
1094         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
1095
1096         * docs/reference/Makefile.am: fun stuff, disabled docs generation
1097         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
1098
1099         * gtk/gtkwidget.[hc]:
1100         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
1101         and gtk_widget_get().
1102         (gtk_widget_new): use g_object_new_valist().
1103         (gtk_widget_set): use g_object_set_valist().
1104
1105         * gtk/gtkobject.[hc]:
1106         removed gtk_object_arg_get_info(), gtk_object_getv(),
1107         gtk_object_query_args(), gtk_object_newv(),
1108         gtk_object_class_add_signals(),
1109         gtk_object_class_user_signal_new(),
1110         gtk_object_class_user_signal_newv(),
1111         gtk_object_arg_set(), gtk_object_arg_get(),
1112         gtk_object_args_collect(),
1113         gtk_object_default_construct(),
1114         gtk_object_constructed(),
1115         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
1116         removed nsignals, signals and n_args members from GtkObjectClass.
1117         (gtk_object_new): use g_object_new_valist().
1118         (gtk_object_set): use g_object_set_valist().
1119         (gtk_object_get): use g_object_get_valist().
1120         
1121         * gtk/gtkcompat.h: define gtk_object_default_construct().
1122         
1123         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
1124         g_object_new().
1125
1126         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
1127         fucntions, cleaned up method assignments (make sure your structures
1128         are setup properly before calling out). removed all GTK_CONSTRUCTED
1129         hacks ;)
1130
1131 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
1132
1133         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
1134         off-by-one error in checks. (Dave Lambert)
1135
1136 2000-12-12  Alexander Larsson  <alexl@redhat.com>
1137
1138         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
1139         Don't free gdk_fb_keyboard twice.
1140
1141 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
1142
1143         * gtk/testgtk.c:
1144         (create_tooltips): 
1145         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
1146         use GObject swapped_signal:: properties instead.
1147
1148         * gtk/gtkcellrenderertoggle.c: 
1149         * gtk/gtkcellrenderertextpixbuf.c: 
1150         * gtk/gtkcellrenderertext.c: 
1151         * gtk/gtkcellrendererpixbuf.c: 
1152         * gtk/gtkcellrenderer.c:
1153         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
1154         missing warnings for invalid property ids, install properties
1155         with g_object_class_install_property() now.
1156         
1157         * gtk/gtksignal.c:
1158         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
1159         
1160 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
1161         
1162         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
1163         to determine if a window is the focus widget within
1164         its toplevel.
1165
1166         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
1167         to be boolean.
1168
1169         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
1170         of the case where the container CAN_FOCUS to here instead
1171         of having it in each individual move-the-focus place.
1172
1173         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
1174         focusing to be geometric in a much more obvious sense. Arrowing
1175         around is still non-intuitive because it isn't perfect and
1176         because entries, etc, grab the arrow keys, but it at least
1177         usually will do what you expect now.
1178         
1179         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
1180         file.
1181
1182         * gtk/gtknotebook.c: Change tabs to be a single item in
1183         the focus chain. Make movement of focus on tabs with arrow
1184         keys wrap around.
1185         
1186         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
1187         CHECK_FIND_CHILD macro to give informative error messages
1188         instead of silent returns.
1189
1190         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
1191         flag since we handle GdkReturn on the tabs.
1192
1193         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
1194         windows rather than sending expose events directly.
1195
1196         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
1197         definition for GtkNotebookPage into .c file, since it is private.
1198
1199         * gtk/testgtk.c (create_notebook): Add option for 
1200         testing borderless notebook.
1201
1202         * gtk/testgtk.c (page_switch): Removed egregious poking
1203         around in GTK+ internals.
1204
1205         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
1206
1207         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
1208         properly through gtk_clist_focus. Make the title headers a
1209         single item in the tab-focus chain, and make left-right wrap
1210         around.
1211
1212         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
1213         focus method so that wrapping around works properly.
1214
1215         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
1216         that is handled for the widget now. 
1217
1218 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
1219
1220         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
1221         widgets as TOPLEVEL.
1222
1223         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
1224         TOPLEVEL widgets are containers.
1225
1226         * gtk/gtkinvisible.h: Remove useless include.
1227
1228 2000-12-11  Havoc Pennington  <hp@redhat.com>
1229
1230         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
1231         Handle chopping off \r\n and 0x2029 in addition to \n before
1232         passing to PangoLayout
1233
1234         * gtk/gtkimcontextsimple.c
1235         (gtk_im_context_simple_get_preedit_string): 
1236         return an empty string if no match is pending
1237
1238         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
1239         assertion that the returned preedit string was sane
1240
1241         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
1242         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
1243         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
1244
1245 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
1246
1247         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
1248         Fix up finalizer to chain to its parent.
1249
1250 2000-12-11  Alexander Larsson  <alexl@redhat.com>
1251
1252         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
1253         Clearified the difference between the keyboard types. Wrote a note
1254         about the magic sysrq key to get out of raw mode.
1255
1256 2000-12-09  James Henstridge  <james@daa.com.au>
1257
1258         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
1259         member to hold masks for detecting the start of a protocol packet.
1260         (mouse_devs): add packet start masks for ps2 and ms device types.
1261         Left the mask for fidmour blank, as I have no idea what it should
1262         be.
1263         (handle_mouse_io): skip bytes until we get to the start of a
1264         packet.  My Logitech mouse seems to be passing an extra NULL pad
1265         byte, and GPM does a similar thing here.
1266         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
1267         this is the ms mouse driver.
1268         (gdk_fb_mouse_ms_packet): fix up button handling, which was
1269         completely broken except for button1.  It was checking the wrong
1270         bit in the packet for the status of the right mouse button, and
1271         wrongly assuming right == button2 rather than 3.  I fixed that and
1272         also added support for middle button (button2).
1273
1274 2000-12-08  Havoc Pennington  <hp@redhat.com>
1275
1276         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
1277         that cause a segfault on text insertion
1278
1279         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
1280         warning
1281
1282         * gtk/gtktextiter.c (test_log_attrs): use
1283         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
1284
1285         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
1286         Get log attrs for a line, using a cache stored on the buffer
1287         
1288         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
1289         reported by Jeff Franks
1290
1291 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1292
1293         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
1294         /dev/ttyS0 -> /dev/mouse
1295
1296 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1297
1298         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
1299         Added dummy gdk_fontset_load.
1300
1301 2000-12-08  Alexander Larsson  <alexl@redhat.com>
1302
1303         * docs/README.linux-fb:
1304         * docs/Makefile.am:
1305         Initial GtkFB docs.
1306         
1307         * gdk/linux-fb/Makefile.am:
1308         Define GDK_DATA_PREFIX.
1309
1310         * gdk/linux-fb/gdkmain-fb.c:
1311         Fix typo.
1312         Change default display to /dev/fb0.
1313
1314         * gdk/linux-fb/gdkpango-fb.c:
1315         Add $(prefix)/share/fonts/ to font path.
1316         
1317 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1318
1319         * gdk/linux-fb/gdkkeyboard-fb.c:
1320         New file containing the abstracted keyboard driver. Most code
1321         taken from gdkinput-ps2.c
1322
1323         * gdk/linux-fb/gdkinput-ps2.c:
1324         Removed file.
1325         
1326         * gdk/linux-fb/Makefile.am:
1327         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
1328
1329         * gdk/linux-fb/gdkcolor-fb.c:
1330         display->fb was renamed to display->fb_fd.
1331
1332         * gdk/linux-fb/gdkcursor-fb.c:
1333         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1334
1335         * gdk/linux-fb/gdkinput.c:
1336         Moved gdk_input_init here from gdkinput-ps2.c
1337
1338         * gdk/linux-fb/gdkmain-fb.c:
1339         display->fb was renamed to display->fb_fd.
1340         Now the tty and the console is opened here instead
1341         of in the keyboard driver. Also check GDK_VT to see what
1342         tty to open.
1343         Move gdk_beep () here from gdkinput-ps2.c
1344         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1345
1346         * gdk/linux-fb/gdkmouse-fb.c:
1347         Add header.
1348         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1349         Return correct keyboard modifiers.
1350         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
1351
1352         * gdk/linux-fb/gdkprivate-fb.h:
1353         Add tty and vt info to display.
1354         Add orignal modeinfo storage to display
1355         Update global functions
1356
1357         * gdk/linux-fb/gdkwindow-fb.c:
1358         Added gdk_fb_window_find_focus().
1359         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1360
1361 2000-12-07  Havoc Pennington  <hp@pobox.com>
1362
1363         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
1364         function, noticed by Alex
1365
1366 2000-12-06  Elliot Lee  <sopwith@redhat.com>
1367
1368         * configure.in: Detect freetype properly
1369
1370         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
1371         above.
1372
1373 2000-12-06  Alexander Larsson  <alexl@redhat.com>
1374
1375         * gdk/linux-fb/Makefile.am:
1376         Add gdkmouse-fb.c
1377         
1378         * gdk/linux-fb/gdkmouse-fb.c:
1379         New file. Abstracted the mouse drivers a bit.
1380
1381         * gdk/linux-fb/gdkcursor-fb.c:
1382         The cursor hide/show functions was moved here from gdkinput-ps2.c.
1383
1384         * gdk/linux-fb/gdkinput-ps2.c:
1385         Removed old mouse handling code. Moved cursor handling code
1386         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
1387         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
1388         gdk_mouse_get_info.
1389
1390         * gdk/linux-fb/gdkmain-fb.c:
1391         Pass NULL pointers for x,y in gdk_mouse_get_info call.
1392
1393         * gdk/linux-fb/gdkprivate-fb.h:
1394         Removed public gdk_fb_find_common_ancestor, added and renamed
1395         functions for the new mouse handling code.
1396
1397         * gdk/linux-fb/gdkwindow-fb.c:
1398         Moved gdk_fb_window_send_crossing_events here. added global
1399         variable gdk_fb_window_containing_pointer. made
1400         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
1401         renamed to gdk_mouse_get_info.
1402
1403 2000-12-06  Alexander Larsson  <alexl@redhat.com>
1404
1405         * gdk/linux-fb/gdkevents-fb.c:
1406         Update to match latest gmain/gsource changes.
1407
1408         * gdk/linux-fb/gdkinput-ps2.c:
1409         Bogus gdk_keymap_get_entries_for_keycode implementation so that
1410         it links. Will be implemented later.
1411
1412 2000-12-03  Havoc Pennington  <hp@pobox.com>
1413
1414         * gdk/Makefile.am: add gdkkeys.[hc]
1415
1416         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
1417         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
1418
1419         * acconfig.h, configure.in: add checks and command line options
1420         for XKB
1421
1422         * gdk/x11/gdkkeys-x11.c: Implement the above functions
1423         
1424         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
1425         and group in the key event
1426
1427         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
1428         field with the low-level hardware key code, and a group
1429         field with the keyboard group
1430
1431         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
1432         and declare a couple globals used for keymap handling
1433         
1434         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
1435         hold down Shift-Control and type a hex number to get a Unicode 
1436         character corresponding to the hex number
1437         (gtk_im_context_simple_get_preedit_string): Fix cursor position
1438         (return bytes not chars)
1439
1440 2000-12-05  Elliot Lee  <sopwith@redhat.com>
1441
1442         * gdk/gdkcolor.h: Make GdkColor specify element sizes
1443         to avoid waste on 64-bit platforms.
1444
1445 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
1446
1447         * INSTALL: Fix link to PNG home, remove reference
1448         to fribidi.
1449
1450         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
1451         
1452         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
1453         tested.)
1454
1455         * gtk/gtkcheckmenuitem.c: Permanently turn on
1456         always_show_toggle.
1457
1458         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
1459         be NULL. (Vladimir Klebanov, #26545)
1460
1461         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
1462         some signed/unsigned comparison problems. (#6510,
1463         David Kaelbling)
1464
1465         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
1466         return type to boolean (Oskar Liljeblad, #18648)
1467
1468 2000-12-05  Alexander Larsson  <alexl@redhat.com>
1469
1470         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
1471         Remove bogus colormap setting.
1472
1473 2000-12-05  Alexander Larsson  <alexl@redhat.com>
1474
1475         * gdk/linux-fb/gdkcolor-fb.c:
1476         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
1477
1478         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
1479         Must set colormap.
1480         
1481 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
1482
1483         * docs/tutorial/gtk-tut.sgml: DND updates
1484
1485 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
1486
1487         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
1488         Remove old debug g_warning().
1489         (gdk_fb_draw_drawable): The src argument can be either a wrapper
1490         or an implementation, just pass the implementation to draw_drawable_2.
1491         
1492         * gdk/linux-fb/gdkprivate-fb.h:
1493         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
1494
1495         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
1496         clear and invalidate area when window is destroyed.
1497         (send_map_events): Remove old commented out code.
1498
1499 2000-12-05  Alexander Larsson  <alexl@redhat.com>
1500
1501         * gdk/linux-fb/gdkpango-fb.c:
1502         Use italic instead of oblique in font aliases.
1503         
1504         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
1505         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
1506         other unsupported functions.
1507
1508 2000-12-04  Havoc Pennington  <hp@redhat.com>
1509
1510         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
1511
1512         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
1513
1514         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
1515
1516         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
1517         hack to avoid infinite loops (synthetic expose event) - 
1518         Owen has more appropriate fixes in a branch he'll check in later.
1519
1520         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
1521         separator, CR, and CRLF as line ends
1522
1523         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
1524         into lines using pango_find_paragraph_boundary(); other bits of
1525         the widget are still going to be broken if the boundary isn't '\n'
1526         though
1527
1528 2000-12-04  Alexander Larsson  <alexl@redhat.com>
1529
1530         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
1531         multiply.
1532
1533         * gdk/linux-fb/gdkpango-fb.c:
1534         Copied some 26.6 scaling macros from pango to clean up the rounding.
1535         (pango_fb_font_get_glyph_info): Correct sign on x value.
1536
1537         * gdk/linux-fb/gdkprivate-fb.h:
1538         Removed unreferenced external functions.
1539
1540         * modules/linux-fb/Makefile.am: Use ` instead of '.
1541
1542         * modules/linux-fb/basic.c:
1543         Remove dead code. In particular the dummy lang engine which broke all
1544         pango layouts in GtkFB. Don't include tables-big.i anymore.
1545
1546         * modules/linux-fb/tables-big.i:
1547         Upgrade to latest version from pango. Left for reference, basic_ranges
1548         moved to basic.c.
1549         
1550 2000-12-04  Havoc Pennington  <hp@redhat.com>
1551
1552         Fix bugs Alex found:
1553         
1554         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
1555         to "draw"
1556
1557         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
1558
1559         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
1560
1561         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
1562         implementation in here, apparently the expose() implementation was
1563         dead code.
1564
1565 2000-12-04  Alexander Larsson  <alexl@redhat.com>
1566
1567         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
1568         Return positive descent.
1569
1570 2000-12-02  Havoc Pennington  <hp@pobox.com>
1571
1572         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
1573         method and signal
1574         
1575         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
1576         calls gdk_window_process_updates() to push the exposes through
1577         (gtk_widget_class_init): No more draw signal, no
1578         gtk_widget_real_draw()  
1579         
1580         * gtk/gtkbin.c (gtk_bin_draw): remove
1581
1582         * gtk/gtkbox.c (gtk_box_draw): remove
1583
1584         * gtk/gtkbutton.c (gtk_button_draw): remove
1585
1586         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
1587
1588         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
1589
1590         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
1591
1592         * gtk/gtkclist.c (gtk_clist_draw): remove
1593
1594         * gtk/gtkentry.c (gtk_entry_draw): remove
1595
1596         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
1597
1598         * gtk/gtkfixed.c (gtk_fixed_draw): remove
1599
1600         * gtk/gtkframe.c (gtk_frame_draw): remove
1601
1602         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
1603
1604         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
1605
1606         * gtk/gtklayout.c (gtk_layout_draw): remove
1607
1608         * gtk/gtklist.c (gtk_list_draw): remove
1609
1610         * gtk/gtklistitem.c (gtk_list_item_draw): remove
1611
1612         * gtk/gtkmenu.c (gtk_menu_draw): remove
1613
1614         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
1615
1616         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
1617
1618         * gtk/gtknotebook.c (gtk_notebook_draw): remove
1619
1620         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
1621
1622         * gtk/gtkpacker.c (gtk_packer_draw): remove
1623
1624         * gtk/gtkrange.c (gtk_range_draw): remove
1625
1626         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
1627
1628         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
1629
1630         * gtk/gtktable.c (gtk_table_draw): remove
1631
1632         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
1633
1634         * gtk/gtktext.c (gtk_text_draw): remove
1635
1636         * gtk/gtktextview.c (gtk_text_view_draw): remove
1637
1638         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
1639
1640         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
1641
1642         * gtk/gtktree.c (gtk_tree_draw): remove
1643
1644         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
1645
1646         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
1647
1648         * gtk/gtkviewport.c (gtk_viewport_draw): remove
1649
1650         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
1651
1652         * gtk/gtkvscale.c (gtk_vscale_draw): remove
1653
1654         * gtk/gtkwindow.c (gtk_window_draw): remove
1655
1656 2000-20-01  Anders Carlsson  <andersca@gnu.org>
1657
1658         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
1659         a GtkToggleButton is both insensitive and active, it was being
1660         drawn by the GtkButton draw handler which doesn't check the
1661         state. Now it's calling gtk_toggle_button_paint instead.
1662         
1663 2000-12-01  Havoc Pennington  <hp@redhat.com>
1664
1665         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
1666         dangling pointers to the appearance attributes from the 
1667         line display
1668
1669         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
1670         width/height to mean "full width/height of drawable"
1671
1672         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
1673         click to select word/line
1674         
1675         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
1676         when getting log attrs. Get a slice, so that pixmaps and stuff
1677         are properly handled.
1678
1679         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
1680         paste into the selection (replaces selection now, previously
1681         crashed or added to selection). Reveals longstanding btree bug -
1682         select multiple lines, middle-click on the selection, boom. This
1683         isn't related to my changes though.
1684
1685         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
1686         PangoLogAttrs changes
1687         (gtk_entry_move_backward_word): ditto
1688
1689         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
1690         functions return bool whether the iter moved onto a
1691         dereferenceable position.
1692  
1693         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
1694         functions for motion in terms of display lines.
1695
1696         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
1697         get the buffer a mark is inside
1698         
1699 2000-12-01  Alexander Larsson  <alexl@redhat.com>
1700
1701         * gdk/linux-fb/Makefile.am:
1702         * modules/linux-fb/Makefile.am:
1703         Freetype 2 final uses freetype-config
1704
1705         * gdk/linux-fb/gdkpango-fb.c:
1706         Upgrade to use Freetype 2 final.
1707         More flexible support for font aliases, this also fixes a bug with
1708         GtkFontSelector, as the aliases must be visible in the font/family list,
1709         or GtkFontSelector reads uninitialized memory.
1710
1711 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
1712
1713         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
1714         XGetIMValues to properly terminate variable argument list, and do
1715         NULL return check for ic_values and xim_styles.
1716
1717         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
1718         Restore preedit state after XmbResetIC().
1719         
1720         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
1721         XvaCreateNestedList() should take XvaNestedList, but not
1722         XvaNestedList*.
1723
1724         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
1725         preedit_draw_callback, preedit_caret_callback): Match
1726         "preedit-changed" signal name to "preedit_changed" to be
1727         consistent to the spec.
1728
1729         * gtk/gtkimcontextsimple.c (check_table):
1730         Match "preedit-changed" to "preedit_changed" to be consistent
1731         to the spec.
1732
1733 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
1734
1735         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
1736         gc->clip_region == NULL>
1737
1738 2000-11-30  Tor Lillqvist  <tml@iki.fi>
1739
1740         Changes by Hans Breuer:
1741         
1742         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1743         Dont't use negative width and height as max_hints. This fixes
1744         Owen's recent testgtk changes for win32.
1745
1746         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
1747         gdk_win32_hdc_release): These are exported and may be called with
1748         other drawable types than our GdkDrawableImplWin32 (?).
1749
1750         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
1751         so always #define USE_BACKING_STORE.
1752
1753         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
1754         of printf for debugging output.
1755
1756         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
1757         
1758         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
1759
1760         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
1761         declaration.
1762
1763         * gtk/gtktexttypes.h: Ditto.
1764
1765         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
1766         (GDK_VoidSymbol) also if in case of arg check failure.
1767
1768         * gtk/gtkimcontextsimple.c
1769         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
1770         position to the pointer, but to the variable it points to.
1771
1772         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
1773
1774         * gtk/gtk.def: Updates.
1775
1776 2000-11-29  Elliot Lee  <sopwith@redhat.com>
1777
1778         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
1779         GTK_TYPE_TREE_MODEL.
1780
1781 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1782
1783         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
1784         Set the size of the font from the description.
1785         (gdk_text_width): Gross hack that calculates the width
1786         of text by text_length * size/2. This is necessary because
1787         GtkLabel does some ugly gtk_string_width call to calculate
1788         an good size.
1789         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
1790
1791 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
1792
1793         * docs/tutorial/gtk-tut.sgml: DND updates
1794
1795 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1796
1797         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1798         If you pass width or height == 0 to gdk_window_clear_area they
1799         should be calculated from the window size.
1800
1801 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1802
1803         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
1804         a grab, but no grab-cursor, use the cursor from the grabbed
1805         window. (gdk_fb_window_send_crossing_events): Send normal
1806         enter/leave notifications if grab and owner_events == TRUE.
1807
1808 2000-11-29  Alexander Larsson  <alexl@redhat.com>
1809
1810         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
1811         Do implicit button grabs, even if the window doesn't
1812         want the event.
1813         (gdk_fb_window_send_crossing_events): If there is a
1814         grab, only the grabbed window gets normal enter/leave
1815         notifications. On ungrab go from grabbed window to current.
1816         Don't send any notification to b when propagating from c -> b.
1817         If setting a grab on window, don't set prev_window.
1818         (handle_mouse_input): Send enter/leave events to the window the
1819         mouse is over, not the grabbed one.
1820         
1821 2000-11-28  Elliot Lee  <sopwith@redhat.com>
1822
1823         * gdk/gdkregion-generic.c: Zap warning.
1824         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
1825         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
1826
1827 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
1828
1829         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1830         The cursor should be hidden if it is part of either the
1831         source or destination region. Not only if it is in both.
1832         (gdk_window_set_transient_for): Silence warnings.
1833
1834 2000-11-28  Alexander Larsson  <alexl@redhat.com>
1835
1836         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
1837         The default mode in X is Pie Arcs, therefore that is
1838         what Gtk+ uses.
1839
1840 2000-11-28  Alexander Larsson  <alexl@redhat.com>
1841
1842         * gdk/linux-fb/gdkinput-ps2.c:
1843         Implement correct EnterNotify/LeaveNotify:
1844         (gdk_fb_window_send_crossing_events): New function that sends
1845         all GdkCrossingEvents from the last mouse-window to the specified
1846         destination.
1847         (gdk_fb_window_visibility_crossing): Removed function.
1848         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
1849         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
1850         instead of gdk_window_get_pointer() for better readability.
1851
1852         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
1853         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
1854
1855         * gdk/linux-fb/gdkprivate-fb.h:
1856         removed gdk_fb_window_visibility_crossing, added
1857         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
1858
1859         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
1860         New function that finds the least common ancestor of two windows.
1861         (gdk_window_show, gdk_window_hide):
1862         Use gdk_fb_window_send_crossing_events.
1863         (gdk_fb_window_move_resize): Send configure events to toplevel
1864         windows. Use gdk_fb_window_send_crossing_events.
1865
1866 2000-11-27  Havoc Pennington  <hp@redhat.com>
1867
1868         * gtk/gtkprivate.h (enum): Remove a trailing comma
1869
1870 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
1871
1872         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
1873         the "changed" callback of the adjustment.  We need to redraw the
1874         spin button's arrows when the adjustment's range changes.
1875         (adjustment_changed_cb): Draw the arrows.
1876         (gtk_spin_button_value_changed): Draw the arrows.
1877
1878 2000-11-23  Alexander Larsson  <alexl@redhat.com>
1879
1880         * gdk/linux-fb/gdkselection-fb.c:
1881         Initial selection implementation.
1882
1883         * gtk/gtkselection.c:
1884         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
1885         requestor in gtk_selection_request.
1886         
1887         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
1888         Added gdk_selection_property atom.
1889
1890         * gdk/linux-fb/gdkprivate-fb.h:
1891         Export _gdk_selection_window_destroyed.
1892         Removed mask_off_x/y from GdkCursorPrivateFB.
1893         Removed hbearing, added top, left to PangoFBGlyphInfo.
1894
1895         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
1896         Call _gdk_selection_window_destroyed
1897         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
1898         the root window has been created.
1899         (static_dx_hack, static_dy_hack, compare_draw_rects,
1900         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
1901         in region. They are already sorted. Instead just traverse them in
1902         reverse if draw_direction < 0.
1903         
1904         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
1905         Double-clicks must be sent after the normal button_press.
1906         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
1907         
1908         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
1909         Pass _gdk_fb_screen_gc instead of NULL.
1910
1911         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1912         Initialize gdk_selection_property.
1913         (gdk_event_make): Remove unused code.
1914
1915         * gdk/linux-fb/gdkcursor-fb.c:
1916         Make the pixmap for the cursor the same size as the mask. Also remove
1917         the mask_off_x/y fields in GdkCursorPrivateFB and combine
1918         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
1919         Now the whole cursor is visible.
1920
1921         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
1922         Fix bug where xdest+height instead of ydest+height was used
1923         to calculate if the source and dest overlapped. This fixes the
1924         redraw bug when the main window in testgtk was scrolled when
1925         partially covered by a tall window.
1926         Copy rectangles in region in order depending on draw_direction.
1927         Also moved the draw_direction flipping of start_y and end_y into
1928         the gc functions, as this might not be what all of them want.
1929         (gdk_fb_draw_lines): Support dashed lines.
1930         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
1931         so that the text is positioned correctly (was 1 pixel high).
1932
1933         gdk/linux-fb/gdkgc-fb.c:
1934         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
1935         all lines were drawn a pixel to short. Also checked the default of
1936         the rest of the values, and they're the same as X now.
1937
1938         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
1939         Clean up pixel positioning of the glyphs. Just use bgy->top and
1940         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
1941         to all divisions to get correct rounding behaviour.
1942
1943         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
1944         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
1945         Moved start_y/end_y flip into draw_drawable implementations.
1946         Flip also x rendering when draw_direction < 0.
1947         Remove unneccesary multiply with draw_direction.
1948
1949 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
1950
1951         * docs/tutorial/gtk-tut.sgml:
1952           - get rid of gtk_toggle_button_toggled FUD
1953           - start DND section - needs work - based on:
1954                 http://wolfpack.twu.net/docs/gtkdnd/
1955
1956 2000-11-22  Alexander Larsson  <alexl@redhat.com>
1957
1958         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
1959         Correct calculation of font metrics. Now GtkEntrys have sane
1960         size.
1961
1962 2000-11-22  Alexander Larsson  <alexl@redhat.com>
1963
1964         * gdk/gdktypes.h:
1965         Add new type GdkSpan
1966         
1967         * docs/reference/gdk/gdk-sections.txt,
1968         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
1969         gdk/gdkregion.h:
1970         Implement and document gdk_region_spans_intersect_foreach.
1971
1972         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
1973         Add new file gdkrender-fb.c which contains all core
1974         rendering code.
1975         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
1976         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
1977         (optimized rectangle fillers).
1978
1979         * gdk/linux-fb/gdkdrawable-fb2.c:
1980         Move all rendering code to gdkrender-fb.c.
1981         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
1982         Use the new span intersection functions in gdk_fb_fill_spans.
1983         gdk_fb_draw_rectangle() clips filled rectangles and calls
1984         gc->fill_rectangle with the result.
1985         gdk_fb_fill_spans() gets extra argument "sorted".
1986
1987         * gdk/linux-fb/gdkevents-fb.c:
1988         Remove unused includes and defines.
1989         New function gdk_fb_get_time() to get correct time for events.
1990
1991         * gdk/linux-fb/gdkinput-ps2.c:
1992         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
1993         Make sure to set the time of all events.
1994
1995         * gdk/linux-fb/gdkmain-fb.c:
1996         Use gdk_fb_get_time ().
1997
1998         * gdk/linux-fb/gdkprivate-fb.h:
1999         New virtual GC calls: fill_span & fill_rectangle.
2000         Export gdk_fb_get_time().
2001         gdk_fb_fill_spans() gets extra argument "sorted".
2002
2003         * gdk/linux-fb/mi*.c:
2004         Use GdkSpan instead of GdkRectangle.
2005         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
2006         from XFree 4 source)
2007         
2008 2000-11-22    <jrb@redhat.com>
2009
2010         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
2011         reversing the order in an if statement will do.  Doing so managed
2012         to make the treemodelsort half work.  Other half will follow after
2013         I get the insert function fully fixed.
2014
2015 2000-11-21  Elliot Lee  <sopwith@redhat.com>
2016         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
2017         more than 2 bits. Besides, I need to implement an evil hack. :)
2018
2019 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
2020
2021         * docs/tutorial/gtk-tut.sgml: minor corrections
2022
2023 2000-11-20  Jonathan Blandford <jrb@redhat.com>
2024         * gtk/gtktreemodelsort.h: Add convertion functions to let you
2025           convert to and from relative path's and iters.
2026
2027         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
2028           testing sorting functions a bit better.  Currently broken -- will
2029           fix in morning.
2030
2031 2000-11-20  Havoc Pennington  <hp@redhat.com>
2032
2033         * gtk/gtkwidget.c: Documented a bunch of functions in here
2034         (gtk_widget_realize): Warn if you try to realize
2035         a widget with no parent that isn't a toplevel
2036         (gtk_widget_intersect): return a gboolean
2037
2038 2000-11-20  Havoc Pennington  <hp@redhat.com>
2039
2040         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
2041         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
2042         scrolling to be implemented in GDK to finish. Also, right now
2043         we just size_allocate all children on every layout change,
2044         which is pretty lame. Test commented out of testtext.c, 
2045         until it works better.
2046
2047 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
2048
2049         * gdk/linux-fb/gdkdrawable-fb2.c:
2050         Removed unused arguments from gdk_fb_drawable_get_pixel().
2051
2052         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
2053         Renamed fidur specific mouse packet data in MouseDevice to
2054         generic. Used it in ps2 mouse handling code to avoid blocking
2055         reads.
2056
2057 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
2058
2059         * demos/gtk-demo/main.c: Changed to have the list become
2060         non-italic when the demo window is destroyed through an external
2061         event (like a close button).  Doing so found three bugs in the
2062         widget.
2063
2064         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
2065
2066         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
2067         we actually set the cell.
2068
2069         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
2070
2071         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
2072         free a leaked path.  Thanks memprof.
2073
2074 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
2075
2076         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
2077         off-by-one error when destroying allocated segments
2078         on failure. (Elliot)
2079
2080 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
2081
2082         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
2083         memleaks found by Evan Martin.
2084
2085 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
2086
2087         * Released 1.3.2
2088         
2089         * NEWS: Updates for 1.3.2
2090
2091 2000-11-17  Tor Lillqvist  <tml@iki.fi>
2092
2093         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
2094         but in general for window system specific events.
2095
2096         * gtk/gtk.def
2097         * gtk/makefile.mingw.in
2098         * gtk/makefile.msc.in: Update.
2099         
2100         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
2101
2102 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
2103
2104         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
2105         distribute gtk.immodules.
2106
2107         * gtk/Makefile.am (install-data-local): Don't install the
2108         gtk.immodules file created for the uninstalled modules;
2109         instead run gtk-query-immodules after install
2110
2111 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
2112
2113         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
2114         -rpath to the right install location.
2115
2116         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
2117         -export-dynamic.
2118
2119         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
2120         properly.
2121
2122 2000-11-15  Havoc Pennington  <hp@pobox.com>
2123
2124         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
2125         patch from Mikael Hermansson to temporarily stop blinking while
2126         the user is using the keyboard to type or navigate. 
2127
2128         Also, when blinking, stay on for longer than we stay off. Also,
2129         return from start_cursor_blink if !cursor_visible, to save
2130         checking that flag all over the place before we call
2131         start_cursor_blink.
2132
2133 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
2134
2135         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
2136         only contain a "fontset" line, which is now ignored.
2137
2138         * gtk/gtkentry.c (gtk_entry_button_release): Make 
2139         double-click-to-select-word work.
2140         
2141 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
2142
2143         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
2144         Don't move back one char when we are actually at the end of the 
2145         paragraph.
2146
2147 2000-11-15  Robert Brady  <robert@suse.co.uk>
2148
2149         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
2150         'o' < 'p'.
2151         
2152         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
2153         bind_textdomain_codeset.
2154
2155         (gtk_init_check): Make the warning about translating default:LTR
2156         sterner.
2157         
2158 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
2159
2160         * **/Makefile.am : remove unecessary rules for win32-specific
2161         config-substituted targets. If you want these rules, use
2162         --enable-maintainer-mode (called automatically by autogen.sh).
2163         Stops a lot of unneccessary make-time warnings.
2164
2165         * gtk/gtktext{layout,display}.c: Factor in total width as
2166         well as screen when figuring alignment for word-wrap as well as
2167         no wrap; this is necessary to handle lines that cannot be wrapped
2168         at all.
2169
2170 2000-11-15  Havoc Pennington  <hp@redhat.com>
2171
2172         * gtk/testtext.c: Implement essential color cycling feature
2173
2174 2000-11-15  Havoc Pennington  <hp@redhat.com>
2175
2176         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
2177         when we invalidate the main window.
2178
2179         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
2180         GtkTextView will now invalidate the side windows for us when text
2181         changes.
2182
2183 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
2184
2185         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
2186         unconditionally, since we may need to update the horizontal
2187         scrollbars even if the height didn't change.
2188
2189         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
2190         the extra attrs, since some of them affect size.
2191
2192         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
2193         x_offset correctly.
2194
2195 2000-11-15  Havoc Pennington  <hp@redhat.com>
2196
2197         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
2198         don't move the first line out into the margin, instead move the
2199         whole paragraph in order to make space for the first line within 
2200         the margin
2201
2202 2000-11-15  Havoc Pennington  <hp@redhat.com>
2203
2204         * gtk/gtktextview.c (changed_handler): offset redraw rect by
2205         xoffset in addition to yoffset, so horizontal scrolling doesn't
2206         break redraws
2207
2208 2000-11-15  Havoc Pennington  <hp@redhat.com>
2209
2210         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
2211         from the cursor
2212         (render_layout_line): fix reversed test that caused weird
2213         underlines to get drawn
2214
2215 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
2216
2217         * gdk/linux-fb/gdkprivate-fb.h:
2218         Fix debug macros.
2219         
2220 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
2221
2222         * gdk/linux-fb/gdkprivate-fb.h:
2223         Added virtual functions set_pixel, get_color,
2224         fill_span and draw_drawable to the GC.
2225         Added global _gdk_fb_screen_gc to use instead of
2226         NULL when drawing to the screen.
2227         Added _gdk_fb_gc_calc_state() prototype.
2228
2229         * gdk/linux-fb/gdkgc-fb.c:
2230         Call _gdk_fb_gc_calc_state() on any gc state change.
2231
2232         * gdk/linux-fb/gdkglobals-fb.c:
2233         Add _gdk_fb_screen_gc
2234                 
2235         * gdk/linux-fb/gdkdrawable-fb2.c:
2236         _gdk_fb_gc_calc_state() calculates best functions
2237         for the GC state and depth.
2238         Moved bpp specialized code to separate functions.
2239         Added optimized 24 bpp AA draw_drawable.
2240
2241         * gdk/linux-fb/gdkevents-fb.c:
2242         Silence gcc warning.
2243
2244         * gdk/linux-fb/gdkimage-fb.c:
2245         Use _gdk_fb_screen_gc
2246
2247         * gdk/linux-fb/gdkwindow-fb.c:
2248         Init and use _gdk_fb_screen_gc
2249
2250         * gdk/linux-fb/mitypes.h:
2251         Remove unused types.
2252
2253 2000-11-14  Havoc Pennington  <hp@pobox.com>
2254
2255         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
2256         to pixels
2257
2258 2000-11-14  Havoc Pennington  <hp@pobox.com>
2259
2260         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
2261
2262         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
2263         unknown char, no real reason we were using a variable. 
2264         Remove gtk_text_unknown_char variable. Fix all the text widget
2265         files accordingly.
2266
2267         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
2268         since the Unicode spec seems to prefer that character for our
2269         purposes.
2270
2271 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
2272
2273         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
2274         value of g_getenv() isn't freeable, so g_strdup it.
2275
2276         * modules/input/inuktitut.c: Inuktitut input method.
2277
2278         * modules/input/Makefile.am: Build this.
2279         
2280 2000-11-14  Elliot Lee  <sopwith@redhat.com>
2281
2282         * gtk/Makefile.am: Install gtk.immodules, needed for operation
2283         of gtk programs.
2284
2285 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
2286
2287         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
2288         reversed > that was causing Home to go to end of previous line.
2289
2290         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
2291         modified-keypresses (leave for bindings.)
2292
2293         * modules/input/Makefile.am: Remove useless -export-dynamic
2294         from module LDFLAGS.
2295
2296 2000-11-14  Havoc Pennington  <hp@redhat.com>
2297
2298         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
2299         higher.
2300
2301         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
2302         account. Also, render rise, underline, background, etc. for
2303         pixbufs as well as text. Also, draw underlines one pixel higher.
2304
2305         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
2306         PangoAttribute for the rise, so it gets drawn properly. Also,
2307         add the GtkTextAppearance attribute for pixbuf/widget segments
2308         as well; we should go ahead and have rise, underline, background,
2309         stipple work for those
2310
2311         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
2312         Pango
2313
2314 2000-11-15  Tor Lillqvist  <tml@iki.fi>
2315
2316         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
2317
2318         * gtk/gtk.def: Update.
2319
2320         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
2321         included.
2322         (gtk_rc_get_im_module_file): Use run-time installation directory
2323         on Win32.
2324
2325         * gdk/win32/rc/gdk.rc: Remove.
2326         * gdk/win32/rc/gdk.rc.in: New file.
2327         * gdk/win32/rc/Makefile.am: New file
2328         * gdk/win32/Makefile.am: Corresponding changes.
2329
2330         * gtk/gtk.rc: Remove.
2331         * gtk/gtk-win32.rc.in: New file.
2332         * gtk/Makefile.am: Corresponding changes.
2333
2334         * configure.in: Corresponding changes.
2335
2336         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
2337         has a built gtkcompat.h. Developers using CVS code on Win32 can
2338         hand-edit it from gtkcompat.h.in.
2339
2340         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
2341         gtkcompat.h from gtkcompat.h.win32.
2342
2343 2000-11-14  Havoc Pennington  <hp@redhat.com>
2344
2345         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
2346         to default to GDK_ACTION_MOVE if the drag is within a single
2347         widget. Defaults to GDK_ACTION_COPY between widgets.
2348
2349 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
2350
2351         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
2352
2353         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
2354
2355         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
2356         srcdir != builddir
2357
2358         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
2359
2360         * configure.in (GTK_VERSION): Up to 1.3.2
2361
2362         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
2363         gtkimcontextxim.h
2364
2365         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
2366         missing doc comment.
2367
2368 2000-11-14  Alexander Larsson  <alexl@redhat.com>
2369
2370         * modules/linux-fb/basic.c:
2371         Use the glib iconv wrappers.
2372
2373 2000-11-13  Havoc Pennington  <hp@pobox.com>
2374
2375         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
2376         still more bugs.
2377
2378         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
2379         scroll the GdkWindows before realization.
2380
2381 2000-11-13  Havoc Pennington  <hp@redhat.com>
2382
2383         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
2384         where GC didn't always get updated properly
2385
2386         * demos/gtk-demo/textview.c (create_tags): Use subattributes
2387         of fonts instead of setting the entire font
2388
2389         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
2390         setting entire font
2391
2392         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
2393
2394         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
2395         a bunch of individually-settable font attributes. You can still 
2396         use the "font" and "font_desc" args, they just set all the font
2397         attributes at once.
2398
2399 2000-11-13 Elliot Lee <sopwith@redhat.com>
2400
2401         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
2402
2403 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
2404
2405         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
2406         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
2407
2408         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
2409         work better.
2410
2411 2000-11-13  Havoc Pennington  <hp@redhat.com>
2412
2413         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
2414         the module file.
2415
2416         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
2417         dest->language
2418
2419         * gtk/testtext.c: Test pixels above/below/inside paragraphs
2420         settings
2421
2422         * gtk/gtktextview.c: Implement object args and setters/getters for
2423         all the aspects of the GtkTextAttributes that are not set from
2424         GtkWidget attributes. This is spacing, justification, margins,
2425         etc.
2426
2427         (gtk_text_view_set_arg)
2428         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
2429         args
2430         (gtk_text_view_class_init): Add args for justify, left_margin,
2431         right_margin, indent, and tabs
2432         
2433
2434         * gtk/gtktextlayout.c (set_para_values): fix to display indent
2435         attribute properly
2436
2437         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
2438         replace with indent attribute
2439
2440         * gtk/gtktextlayout.c (set_para_values): multiply indent by
2441         PANGO_SCALE
2442
2443         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
2444         rearranging code to do that
2445         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
2446         i.e. don't subtract the top_margin first, just to keep
2447         all margin-futzing in one place.
2448
2449         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
2450
2451         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
2452         special case of last line, Pango now handles this itself.
2453         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
2454         Y coordinate
2455         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
2456         (find_display_line_above): wasn't moving the byte index as it
2457         iterated over lines, so always returned byte 0. Also, port to use
2458         PangoLayoutIter.
2459         (find_display_line_below): same problem as
2460         find_display_line_above. Also, port to use PangoLayoutIter.
2461
2462 2000-11-13  Alexander Larsson  <alexl@redhat.com>
2463
2464         * gdk/linux-fb/*.[ch]:
2465         Massive reindent to gtk+ standard. My hands hurt.
2466
2467         * gdk/linux-fb/gdkcolor-fb.c:
2468         Move GdkColorPrivateFB from inherited to windowing_data
2469
2470         * gdk/linux-fb/gdkcursor-fb.c:
2471         _gdk_cursor_new_from_pixmap made static
2472
2473         * gdk/linux-fb/gdkdnd-fb.c:
2474         GdkDragContextPrivate moved to windowing_data
2475
2476         * gdk/linux-fb/gdkdrawable-fb2.c:
2477         Removed endian.h, use glib endianness macros instead
2478         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
2479         and GDK_DRAWABLE_IMPL_FBDATA
2480
2481         * gdk/linux-fb/gdkfont-fb.c:
2482         Add empty gdk_font_load(). Needed for linking of Gtk+.
2483
2484         * gdk/linux-fb/gdkimage-fb.c:
2485         Removed endian.h, use glib endianness macros instead
2486         Moved GdkImagePrivateFB to windowing_data
2487         gdk_image_new_bitmap didn't always allocate enough
2488         memory.
2489
2490         * gdk/linux-fb/gdkinput-ps2.c:
2491         Added semi-working support for MS serial mice.
2492
2493         * gdk/linux-fb/gdkprivate-fb.h:
2494         s/GdkWindowPrivate/GdkWindowObject/
2495         Removed GdkWindowPrivate typedef
2496         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
2497         Removed GDK_DRAWABLE_P
2498         Move GdkColorPrivateFB from inherited to windowing_data
2499         Moved GdkImagePrivateFB to windowing_data
2500
2501         * gdk/linux-fb/gdkvisual-fb.c:
2502         Removed some unused debug code.
2503
2504         * gdk/linux-fb/gdkwindow-fb.c:
2505         Use stock cursors instead of including X headers.
2506         s/GdkWindowPrivate/GdkWindowObject/
2507
2508         * gdk/linux-fb/mitypes.h:
2509         Removed unused types.
2510
2511         * modules/linux-fb/basic.c:
2512         Use the pango fribidi wrappers.
2513
2514 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2515
2516         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
2517         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
2518         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
2519         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
2520         GEqualFunc where applicable.
2521         
2522         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
2523         pango_font_description_equal as changed in pango.
2524         
2525         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
2526
2527         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
2528
2529         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
2530
2531         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
2532
2533         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
2534
2535         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
2536
2537         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
2538         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
2539
2540         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
2541         gtk_rc_styles_compare -> gtk_rc_styles_equal.
2542
2543 2000-11-12  Havoc Pennington  <hp@pobox.com>
2544
2545         * demos/gtk-demo/Makefile.am (democodedir): change demo install
2546         dir to datadir/gtk+-2.0/demo
2547
2548         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
2549         sorts of text widget and Pango font bugs. Urgh.
2550
2551         * demos/gtk-demo/Makefile.am (demos): Add textview.c
2552
2553         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
2554         tree that you should double click to see the demo. Fix 
2555         types of variables to reflect changed return values from 
2556         GtkTreeStore and GtkTreeViewColumn constructors.
2557
2558         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
2559         newly-created buffer to prepare for GObject semantics
2560
2561         * gtk/testtext.c: don't leak the buffer with GObject semantics
2562
2563         * gtk/testtextbuffer.c: ditto
2564         
2565 2000-11-12  Havoc Pennington  <hp@pobox.com>
2566
2567         Rename this testgtk to gtk-demo to avoid confusion, and 
2568         install it so people can use it as a supplement to 
2569         the documentation.
2570         
2571         * demos/gtk-demo: Moved from demos/testgtk
2572
2573         * demos/testgtk: Removed
2574
2575         * configure.in: make Makefile in gtk-demo
2576         
2577         * demos/gtk-demo/Makefile.am: Install sample source to 
2578         datadir/gtk-demo (maybe there's a better place?), and 
2579         rename the binary to gtk-demo
2580         
2581         * demos/gtk-demo/main.c (load_file): Load installed sample
2582         source if source isn't found in pwd.
2583
2584 2000-11-09  Havoc Pennington  <hp@pobox.com>
2585
2586         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
2587         argument to set the char displayed when visibility == FALSE
2588         (gtk_entry_create_layout): If !entry->visible, replace 
2589         all chars with the "invisible char"
2590
2591         * gtk/testgtk.c: Test the invisible_char deal
2592         
2593 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
2594
2595         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
2596         can't get a native font in the right encoding.
2597
2598 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
2599
2600         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
2601         respectively.
2602
2603 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
2604
2605         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
2606         Fix warning when moving between paragraphs.
2607
2608         * gtk/gtkentry.[ch]: Change move => move_cursor, 
2609         delete => delete_from_cursor, insert => insert_at_cursor
2610
2611 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
2612
2613         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
2614
2615         * modules/input/imthai-broken.c: A Thai input method for use if
2616         Thai keys are really generating Latin1 keysyms.
2617
2618         * modules/input/Makefile.am: Build these.
2619
2620 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
2621
2622         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
2623         g_filename_{to,from}_utf8 now takes an extra parameter.
2624
2625         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
2626         strftime into UTF-8.
2627
2628         (column_from_x, gtk_calendar_paint_day_names): Support RTL
2629         calendars.
2630
2631         (gtk_calendar_paint_day_names): Draw day names in the right 
2632         place.
2633         
2634 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
2635
2636         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
2637         problem with using result of g_get_charset() backwards -
2638         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
2639
2640         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
2641         negative min_width/height and max_width/height to
2642         mean "requisition"; this allows setting a window
2643         to be user-resizable in only one direction easily.
2644
2645         * gtk/testgtk.c (create_main_window): Remove hard-coded
2646         usize - set a default size in the vertical direction.
2647
2648 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
2649
2650         * gtk/gtkrange.c: Add some missing casts. Support 
2651         2 and 3 button clicks on the arrows to mean 
2652         "move by pages" and "jump to end". (Like gtkspinbutton)
2653
2654 2000-11-12 Hans Breuer <Hans@Breuer.Org>
2655
2656         * gdk/win32/makefile.msc : reflect build module changes
2657
2658         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
2659         from GdkPixmap*, cast implementation member instead.
2660
2661         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
2662         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
2663         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
2664         more Gdi functions return value checking. 
2665         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
2666         GdkImagePrivateWin32 *.
2667
2668         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
2669         menus useable again. Add #pragma message to keep reminded on this issue.
2670         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
2671         windows. This allows to enable backing store on Win32!
2672
2673         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
2674         in drawable is of impl type. Correct specific type checks appropriate.
2675  
2676         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
2677         GDK_WINDOW_DESTROYED before allocating new resources.
2678
2679         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
2680
2681         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
2682         (gdk_window_foreign_new) initialize parent handle.
2683         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
2684
2685         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
2686         Let the GDI invalidate the window on MoveWindow call to fix scrolling
2687         problems (e.g. main buttons in testgtk). 
2688
2689 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
2690
2691         * gtk/gtkentry.c (gtk_entry_key_press): Call 
2692         gtk_widget_activate for GDK_Return.
2693
2694         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
2695         of preedit cursor position.
2696
2697 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
2698
2699         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
2700         static.
2701
2702 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
2703
2704         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
2705         out support for multiple locales; that simple doesn't
2706         work reliably with current Xlib
2707
2708         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
2709         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
2710         Add support for positioning the cursor within the preedit string.
2711
2712 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
2713
2714         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
2715         at XIM input method module.
2716
2717         * gtk/gtktextview.c: Check for bindings after passing
2718         events to im context filter.
2719
2720 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
2721
2722         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
2723         empty attribute lists properly.
2724
2725 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
2726
2727         * gtk/queryimmodules.c (main): Return non-zero exit
2728         status if errors were encountered querying any
2729         modules.
2730
2731         * modules/input/Makefile.am (moduledir): remove
2732         leftover bin program target.
2733
2734         * docs/make-todo: Fix typo in error message.
2735
2736 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
2737
2738         * configure.in: Add modules/input/Makefile
2739
2740 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
2741
2742         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
2743         don't include gtkthemes.h.
2744
2745         * gtk/testgtk.c gtk/testtext.c: Set environment variables
2746         to point
2747
2748         * gtk/Makefile.am: Add new .c and .h files, build 
2749         gtk-query-immodules and use it to create a gtk.immodules
2750         file for use of test programs.
2751
2752         * gtk/gtkpreview.c: remove extra blank line.
2753
2754 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
2755
2756         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
2757         Add the ability to add extra tables beyond the default
2758         one, and also the ability to have compose sequences 
2759         that are prefixes of other compose sequences. 
2760
2761         * gtk/gtkimcontextsimple.c: Export a preedit string which
2762         consists of possible candidates for keystrokes that have
2763         been entered but not yet committed.
2764
2765         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
2766         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
2767
2768         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
2769         Add a function to add input-method switching menu items
2770         to a menu.
2771
2772         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
2773         when switching input methods.
2774
2775         * gtk/gtkimcontextsimple.[ch]: Change the format of
2776         the compose table to allow compose tables of different
2777         lengths / sequence.
2778
2779 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
2780
2781         * gtk/gtkimmodule.[ch]: Support routines for loading
2782         GtkIMContext implementations dynamically at runtime.
2783
2784         * modules/input/imcyrillic-translit.c: A sample input
2785         method (based on GtkIMContextSimple with an extra table),
2786         which demonstrates preedit strings and the module
2787         system for input modules
2788
2789         * gtk/queryimmodules.c: Program to query the available
2790         input modules and write the results into a file.
2791          
2792         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
2793         extra config options "im_module_file" (cache file for
2794         input method modules), and "im_module_path" - path
2795         to look for modules when generating cache file.
2796
2797         This doesn't scale.
2798
2799 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
2800
2801         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
2802         generic code from gtkthemes into a new abstraction
2803         GtkModule which has the logic for implementing
2804         a loadable module which implements a number of 
2805         GObject types.
2806
2807 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
2808
2809         * gtk/gtkeditable.[ch]: Convert GtkEditable from
2810         a class into an interface  
2811         
2812         * gtk/gtkoldeditable.[ch]: Move the old editable
2813         implementation into here, so legacy widgets can
2814         still rely on the implemenation. GtkOldEditable
2815         exports GtkEditable. Make selection handling
2816         code use new text conversion functions (and
2817         handle UTF-8 as a side-effect). Use GtkClipboard
2818         for CLIPBOARD.
2819
2820         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
2821         Adopt to match above changes.
2822
2823         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
2824         avoid GtkOldEditable implementation. Restructure
2825         to reduce number of places that modify state directly.
2826         Move to GtkBindingSet. Display the preedit string.
2827         Queue recomputation of PangoLayout and scroll position
2828         to improve effiency of doing complex changes naively.
2829         Add a menu with cut/copy/paste and input method selection.
2830
2831 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
2832
2833         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
2834         to set preedit string and attributes; display preedit string by
2835         inserting string and attributes at cursor when creating the
2836         GtkTextLineDisplay.
2837
2838         * gtk/gtktextlayout.c: Move all conversions between byte
2839         positions in PangoLayout and GtkTextIter into new functions
2840         line_display_iter_to_index/index_to_iter that properly
2841         handle the preedit string.
2842
2843         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
2844         it to return const char * (eventually will end up
2845         as GCONST char *, most likely.)
2846
2847         * gtk/gtktextview.[ch]: Handle the preedit string, call
2848         gtk_im_context_reset() as necessary, add a menu to switch
2849         input methods.
2850         
2851         * gtk/gtktextlayout.[ch]: Remove useless
2852         gtk_text_layout_get_log_attrs() function.
2853
2854 2000-11-11  Tor Lillqvist  <tml@iki.fi>
2855
2856         * gdk/gdk.def
2857         * gtk/gtk.def: Update.
2858
2859         * gdk/win32/*.c: Add last argument to g_type_register_static()
2860         calls.
2861
2862         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
2863
2864         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
2865         generated by older wheel mouse drivers. Get the correct y
2866         coordinate from WM_MOUSEWHEEL messages.
2867
2868         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
2869         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
2870         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
2871         Debugging functions.
2872
2873         * gdk/win32/gdkprivate-win32.h: Declare them.
2874
2875         * gdk/win32/gdkinput-win32.h: Add declaration for
2876         gdk_input_window_destroy().
2877
2878         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
2879
2880 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
2881
2882         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
2883         function to help handle keeping things in sync.
2884
2885 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
2886
2887         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
2888         BOXED marshallers.
2889
2890         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
2891         (gtk_list_store_class_init): use the new BOXED marshallers.
2892
2893         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
2894         new_with_values to new_with_types.
2895         (gtk_tree_store_get_column_type): add this.
2896         (gtk_tree_store_class_init): use the new BOXED marshallers.
2897
2898         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
2899         mirror some POINTER marshallers.
2900
2901 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
2902
2903         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
2904         allow more interesting iterators.  Also, made the lifecycle of
2905         iterators more explicit.
2906
2907         * gtk/gtktreemodelsort.[ch]: New model for sorting.
2908
2909         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
2910         types.
2911
2912 2000-11-09  Alexander Larsson  <alexl@redhat.com>
2913
2914         * demos/testgtk/menus.c:
2915         Changes to make the new testgtk compile after
2916         gtk_menu_append was removed.
2917
2918         * gdk/linux-fb/gdkdrawable-fb2.c
2919         (gdk_fb_get_depth, gdk_fb_get_visual,
2920         gdk_drawable_impl_fb_class_init): Implement
2921         these drawable functions. Now GtkImages work again.
2922
2923         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
2924
2925         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
2926         
2927         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
2928         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
2929         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
2930         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
2931
2932 2000-11-08  Havoc Pennington  <hp@pobox.com>
2933
2934         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
2935         visible_set args, don't know where these had gone, I thought they
2936         used to be there
2937
2938         * gtk/testtext.c: Add a menu item to apply invisibility tag;
2939         now we can test the feature and see that it's totally broken.
2940
2941 2000-11-08  Havoc Pennington  <hp@pobox.com>
2942
2943         Make DND copy pixbufs and tags when source and target share a 
2944         tag table.
2945         
2946         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
2947         in-process GTK_TEXT_BUFFER_CONTENTS target
2948         (gtk_text_view_drag_data_received): Paste from
2949         GTK_TEXT_BUFFER_CONTENTS if we receive it.
2950
2951 2000-11-08  Alexander Larsson  <alexl@redhat.com>
2952
2953         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
2954         API changes.
2955
2956         * gtk/gtkmenu.c: Add support for scrolling menus.
2957         Remove gtk_menu_append/prepend/insert, these have been moved to
2958         gtkcompat.h as #defines.
2959
2960         * gtk/gtkcompat.h.in:
2961         Add compatibility #defines for gtk_menu_append/prepend/insert
2962
2963         * gtk/gtkmenu.h: Add data needed for scrolling menus.
2964         GtkMenuPositionFunc gets an extra argument push_in.
2965         gtk_menu_append/prepend/insert removed.
2966         
2967         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
2968         positioning behaviour to fit to scrolling menus.
2969
2970         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
2971         into menuitem->submeny. That is wrong, and broke torn
2972         off submenus of torn off menus, since they were unrealized
2973         when the first menu was unrealized.
2974
2975         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
2976         gtk_menu_shell_select_item() since these need to be overridden in
2977         GtkMenu.
2978
2979         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
2980         positioning behaviour to fit to scrolling menus.
2981         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
2982         the current item so that it is prelighted when the menu pops up.
2983         This is a workaround to the fact that the menu doesn't get the
2984         initial enter event (due to grabs).
2985
2986         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
2987         s/gtk_menu_append/gtk_menu_shell_append/
2988
2989         * gtk/gtknotebook.c:
2990         s/gtk_menu_insert/gtk_menu_shell_insert/
2991
2992         * gtk/testgtk.c (create_menu, create_menus):
2993         Create the first menu with 50 items so that menu scrolling
2994         can be tested.
2995         
2996         
2997         Patch from Jonathan Blandford  <jrb@redhat.com>
2998
2999         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
3000         system to handle size requests.  First, we ask what the size of
3001         the toggle is.  Then, when allocating the size, we allocate the
3002         toggle_size first.  This way we can have multiple menu-item
3003         classes w/o needing a seperate class for each.
3004
3005         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
3006         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
3007
3008         * gtk/gtkcheckmenuitem.c
3009         (gtk_check_menu_item_toggle_size_request): New function to handle
3010         the toggle size-request.
3011
3012 2000-11-07  Havoc Pennington  <hp@redhat.com>
3013
3014         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
3015         Half-ass somewhat fix this function, so that scrolling to the
3016         insertion point works. Pango hacking is in the future to really
3017         fix it.
3018
3019         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
3020         length of data, no longer used.
3021
3022         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
3023         method contents in here, get rid of destroy method
3024         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
3025         that were backward. Remove debug spew.
3026         (cut_or_copy): Make the clipboard work with insert_range to
3027         preserve tags and pixbufs, not just the primary selection.
3028
3029 2000-11-07  Havoc Pennington  <hp@redhat.com>
3030
3031         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
3032         to gtk_text_mark_get_visible
3033
3034         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
3035         bug that was generating an invalid iterator
3036
3037         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
3038         ensure_char_offsets() in front of code placing the iter in an
3039         invalid state.
3040
3041         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
3042         make override_location arg const
3043         (paste): Replace the selection if we paste into the 
3044         current selection
3045
3046         * gtk/gtkselection.h: Remove "GtkSelectioData"
3047         (struct _GtkSelectionData): move the definition here.
3048
3049         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
3050         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
3051
3052         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
3053
3054         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
3055         (gtk_text_buffer_insert_range_interactive): implement
3056         (gtk_text_buffer_get_tags): Remove, replaced by
3057         gtk_text_iter_get_tags()
3058
3059         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
3060         limit parameter, to avoid infinite linear scan.
3061         (gtk_text_iter_backward_search): Add search limit
3062         (gtk_text_iter_forward_find_char): Add search limit
3063         (gtk_text_iter_backward_find_char): Add search limit
3064
3065 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
3066
3067         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3068         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
3069         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
3070         gdk/linux-fb/gdkwindow-fb.c:
3071         use g_object_new() instead of g_type_create_instance() which
3072         is a private function for fundamental type implementations.
3073
3074         * gdk/linux-fb/gdkinput-ps2.c:
3075         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
3076         instead just store the current modifier state. Add a (somewhat broken)
3077         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
3078         Rename exported function gdk_input_ps2_get_mouseinfo to
3079         gdk_input_get_mouseinfo.
3080
3081         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
3082         gdk/linux-fb/gdkwindow-fb.c:
3083         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
3084         
3085
3086 2000-11-02  Havoc Pennington  <hp@redhat.com>
3087
3088         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
3089         use stock buttons. Should be 100% source compatible, appropriate
3090         filesel fields now point to dialog->vbox and dialog->action_area.
3091         On the bizarre side, dialog->action_area and filesel->action_area
3092         are not the same widget.
3093         (gtk_file_selection_init): Put some padding around the selection
3094         entry, so it isn't touching the GtkDialog separator.    
3095
3096         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
3097         use stock buttons, etc. Should also be source compatible.
3098         Set the dialog default title in _init not _new().
3099         
3100         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
3101         Use stock buttons; don't put a button box inside the existing
3102         dialog button box. Don't bother with push/pop colormap anymore.
3103
3104         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
3105         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
3106         for message dialog, and necessary for the font selection and color
3107         selection with help and apply buttons.
3108         
3109         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
3110         to the created button widget. Set GTK_CAN_DEFAULT on the button.
3111         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
3112         between buttons, put less padding around the action area.
3113         (gtk_dialog_run): Exit on unmap rather than on destroy. 
3114         This will also exit the loop if the widget is hidden.
3115         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
3116         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
3117         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
3118         special-case delete event.
3119
3120         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
3121         formatting
3122         
3123 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
3124
3125         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
3126         button to temporarily disable position recording in the
3127         "saved position" test.
3128
3129 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
3130
3131         * gtk/gtkthemes.c: added compat code that temporarily implements
3132         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
3133         going to be revamped by owen's upcoming GtkModule patches, but
3134         untill then people want gtk to build, right? ;)
3135
3136 2000-11-04  Havoc Pennington  <hp@pobox.com>
3137
3138         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
3139         list
3140
3141         * docs/Changes-2.0.txt: Add note about
3142         gtk_container_get_toplevels()
3143
3144         * gtk/gtktextview.h: formatting
3145         
3146         * gtk/gtktextview.c: don't start descriptions with "Returns",
3147         confuses gtk-doc
3148
3149 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
3150
3151         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
3152         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
3153
3154 2000-11-03  Havoc Pennington  <hp@redhat.com>
3155
3156         * gtk/gtktexttagtable.c: Docs
3157         (gtk_text_tag_table_size): return a signed int
3158
3159         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
3160         (gtk_text_tag_event): make the event_object a GObject
3161
3162         * gtk/gtktextview.c: Write API docs for all functions.
3163
3164         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
3165         for gtk_text_view_get_window_type() called on one of the private
3166         windows.
3167
3168         * gtk/gtktextview.c: Instead of accessing text_view->buffer
3169         directly, call get_buffer() which demand-creates a default
3170         buffer. So gtk_text_view_new() can be used to create a view with a
3171         default buffer in it, if you just want an empty text box users can
3172         put data in. Useful for GUI builders also.
3173
3174 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
3175
3176         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
3177         the charset encodign portion MUST be in lowercase.
3178         * gtk/gtkrc.az: added file for Azeri language
3179
3180 2000-11-03  Havoc Pennington  <hp@redhat.com>
3181
3182         Get widgets working on the btree/buffer side. Display of them 
3183         still doesn't work.
3184         
3185         * gtk/gtktextview.c: start implementing child widget stuff
3186
3187         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
3188
3189         * gtk/gtktextlayout.c: handle embedded widgets
3190
3191         * gtk/gtktextdisplay.c: handle embedded widgets
3192
3193         * gtk/gtktextchild.c: Implement all the child anchor goo
3194
3195         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
3196         function
3197
3198         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
3199         (insert_pixbuf_or_widget_segment): abstract out common portions of 
3200         creating a child anchor or a pixbuf segment.
3201         (gtk_text_btree_create_child_anchor): new function
3202         (gtk_text_btree_unregister_child_anchor): new function
3203
3204         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
3205         allocate_child signal on GtkTextLayout
3206
3207         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
3208         values
3209         (gtk_text_iter_get_child_anchor): new function
3210
3211         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
3212         default handler for the changed signal, which calls
3213         gtk_text_buffer_set_modified(), instead of just always emitting
3214         changed then calling set_modified() manually. I guess this is
3215         maybe more flexible. It seems logical.
3216
3217 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
3218
3219         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
3220         now.
3221
3222         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
3223
3224 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
3225
3226         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
3227         been marked static.
3228
3229 2000-11-02  Havoc Pennington  <hp@redhat.com>
3230
3231         * gtk/testgtk.c (create_labels): had a test backward
3232
3233         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
3234         fields, so the dest GC ends up with the correct clip origin, 
3235         etc. Fixes a bug where colored labels didn't redraw 
3236         properly.
3237
3238 2000-11-02  Alexander Larsson  <alexl@redhat.com>
3239
3240         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3241         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
3242         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
3243         Add last argument to t_type_register_static call.
3244         
3245         * gdk/linux-fb/gdkdrawable-fb2.c:
3246         Add last argument to t_type_register_static call.
3247         export the get_image drawable virtual function.
3248
3249         * gdk/linux-fb/gdkimage-fb.c:
3250         Add last argument to t_type_register_static call.
3251         rename gtk_image_get to _gdk_fb_get_image and
3252         export it for use by gdkdrawable-fb2.
3253
3254         * gdk/linux-fb/gdkprivate-fb.h:
3255         export _gdk_fb_get_image.
3256
3257         * gdk/linux-fb/gdkselection-fb.c:
3258         Add new api call stubs.
3259
3260         * gtk/Makefile.am:
3261         Missing ( in linux-fb part.
3262
3263         * modules/linux-fb/Makefile.am:
3264         Must link with gdk_pixbuf or get unresolved symbol.
3265
3266 2000-11-01  Havoc Pennington  <hp@pobox.com>
3267
3268         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
3269         GTK_TYPE_TEXT_ITER and BOXED marshallers
3270
3271         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
3272
3273         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
3274         
3275         * gtk/gtk-boxed.defs: add GtkTextIter
3276
3277         * gtk/gtkmarshal.list: Add marshallers for text widget that 
3278         properly use OBJECT and BOXED
3279
3280 2000-11-01  Havoc Pennington  <hp@redhat.com>
3281
3282         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
3283
3284         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
3285         before returning it. 
3286         
3287 2000-11-01  Havoc Pennington  <hp@redhat.com>
3288
3289         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3290         Clip the rectangle to be rendered to the drawable, since
3291         get_from_drawable() requires a region within the drawable
3292
3293 2000-11-01  Havoc Pennington  <hp@redhat.com>
3294
3295         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
3296         from coordinates.
3297
3298 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
3299
3300         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
3301         it isn't NULL.
3302
3303 2000-11-01  Havoc Pennington  <hp@pobox.com>
3304
3305         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
3306         on a label
3307         (gtk_label_finalize): unref the attr list if any.
3308
3309         * gtk/testgtk.c (create_get_image): close test on second click
3310         (make_message_dialog): close dialog if it exists
3311
3312         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
3313
3314         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
3315         gdk-pixbuf
3316
3317         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
3318         from Pango markup format
3319         (gtk_label_set_markup_with_accel): ditto but with accelerator
3320         parsing
3321
3322         * gtk/gtkimage.c (gtk_image_expose): reformatting.
3323
3324         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
3325         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
3326         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
3327         call gdk_window_get_origin().
3328
3329         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3330         implement GDK_PIXBUF_ALPHA_FULL
3331         
3332 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
3333
3334         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
3335         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
3336         g_signal_handlers_disconnect_matched to block/unblock and disconnect
3337         multiple handlers respectively, instead of only treating the
3338         first handler found (bug reported by owen).
3339
3340 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
3341
3342         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
3343
3344         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
3345
3346         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
3347         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
3348         gtk/gtktreeviewcolumn.h: Fixed inline docs.
3349
3350         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
3351         widget.  Needs writing someday.
3352
3353         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
3354         the docs.
3355
3356 2000-10-30  Havoc Pennington  <hp@redhat.com>
3357
3358         * gtk/gtktextview.h, gtk/gtktextview.c:
3359         Rename delete_at_cursor delete_from_cursor, and 
3360         move to move_cursor.
3361
3362 2000-10-30  Havoc Pennington  <hp@redhat.com>
3363
3364         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
3365         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
3366         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
3367         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
3368         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
3369         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
3370         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
3371         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
3372         gtktexttypes.h, gtktextview.c, gtktextview.h:
3373
3374         Massive reindentation and reformatting. Arg alignment and comments
3375         still need fixing in various places.
3376
3377 2000-10-30  Havoc Pennington  <hp@redhat.com>
3378
3379         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
3380         to be named insert_at_cursor and delete_at_cursor so C++ can
3381         handle them.
3382
3383 2000-10-28  Tor Lillqvist  <tml@iki.fi>
3384
3385         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
3386         to get a double directory separator in case the home directory
3387         ends with one. This would cause trouble especially on Windows,
3388         where the path will be confused with the syntax for an an UNC
3389         (network share) path \\server\share\path.
3390         (gtk_rc_add_initial_default_files): Ditto.
3391
3392 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
3393
3394         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
3395
3396         * gtk/gtktextview.c: Use correct marshallers.
3397
3398 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
3399
3400         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
3401         use new iter stuff, and added all the appropriate signals et al.
3402
3403         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
3404         code is internal to gtk only.
3405
3406 2000-10-28  Tor Lillqvist  <tml@iki.fi>
3407
3408         * gtk/gtk.def
3409         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
3410         glib-genmarshal etc.
3411
3412 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
3413
3414         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
3415         parallel builds.
3416
3417 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
3418
3419         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
3420
3421 2000-10-27  Robert Brady  <robert@suse.co.uk>
3422
3423         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
3424         en_GB (British), ia (Interlingua).
3425
3426 2000-10-26  Havoc Pennington  <hp@redhat.com>
3427
3428         * gtk/gtktextiter.c (my_strrstr): fix constness warning
3429
3430         Fixed output of:
3431         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
3432         
3433         * gtk/gtktextsegment.c (char_segment_new): rename
3434         (_char_segment_new_from_two_strings): rename
3435         (_toggle_segment_new): rename
3436         
3437         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
3438         (make_clipboard_widget): make it static
3439         (text_get_func): static
3440         (text_clear_func): static
3441
3442         * gtk/gtkcolorsel.c (adjustment_changed): make this function
3443         static
3444         (hex_changed): make it static
3445         (hsv_changed): make it static
3446         (opacity_entry_changed): make it static
3447
3448         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
3449         (toggle_segment_check_func): rename with _gtk
3450
3451         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
3452         (_widget_segment_new): rename
3453         (_widget_segment_add): rename
3454         (_widget_segment_remove): rename
3455         (_widget_segment_ref): rename
3456         (_widget_segment_unref): rename
3457
3458         * gtk/gtktextmark.c (_mark_segment_new): Rename
3459         _gtk_mark_segment_new   
3460
3461 2000-10-26  Havoc Pennington  <hp@redhat.com>
3462
3463         * gtk/gtkmarshal.list: add new marshallers used by the text widget
3464         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3465         types
3466
3467         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
3468         marshaller types
3469
3470         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
3471         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
3472         license on these files.
3473
3474         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
3475         work.
3476
3477         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
3478         runtime random number different for each tree, instead of 
3479         a constant I made up.
3480
3481 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
3482
3483         * gtk/Makefile.am: buncha cleanups, kludged build sources
3484         dependencies with a Makefile: oldest-source-stamp dependancy
3485         for the moment. automake is really fighting us here, with
3486         intentionally not allowing user-defined rules or dependancies
3487         prior to it's -include $(DEP_FILES) statement. sucks rocks!
3488
3489         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
3490         to public headers. tehy have a comment stating that they are
3491         "semi-public" aren't included by gtk.h and if enums popup there,
3492         they can be /*< skip >*/-ed.
3493
3494         * gtk/gtktextlayout.h: 
3495         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
3496         added LGPL... <SIGH>
3497
3498 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
3499
3500         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
3501         GtkTreeIter.  Added iterators everywhere.
3502
3503         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
3504
3505         * gtk/gtktreeviewselection.c: Changed to use the iterators.
3506
3507         * gtk/gtktreestore.c: Changed to use the iterators.
3508
3509         * gtk/gtkliststore.c: Commented out the code.  Will convert to
3510         iterators tomorrow.
3511
3512         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
3513         iterators tomorrow.
3514
3515         * gtk/treestoretest.c: Changed to use iterators.
3516
3517         * demos/testgtk/main.c: Moved to use the new iterator system.
3518
3519 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
3520
3521         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
3522         localization misbehaviour.
3523
3524         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
3525         a useless type without copy/free.
3526
3527         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
3528         of GTK_TYPE_CTREE_NODE.
3529
3530 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
3531
3532         * gtk/gtksignal.c:
3533         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
3534         applicable.
3535
3536         * gtk/gtk-boxed.defs (GtkSelectionData): specify
3537         gtk_selection_data_copy and gtk_selection_data_free
3538         do GtkSelectionData work as params in signals.
3539
3540 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
3541
3542         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
3543         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
3544         couldn't they at least give it a non-standard name?
3545         
3546         * gtk/gtktextlayout.c: arg! yet another implementation of
3547         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
3548
3549         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
3550         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
3551         home. now i know this _is_ a conspiracy.
3552
3553         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
3554         ::state-changed.
3555
3556         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
3557         (gtk_accel_group_create_add): marshaller signature fixups.
3558
3559         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
3560         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
3561
3562         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
3563         anymore.
3564
3565 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
3566
3567         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
3568         due to the signal system changes, it wouldn't build currently. to
3569         be fixed soon.
3570
3571         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
3572
3573         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
3574         so it needs gtk_marshal_VOID__ENUM() instead of
3575         gtk_marshal_NONE__UINT().
3576
3577         * gdk/gdk*.c: adapted type registration functions.
3578
3579         * gtk/gtkbindings.c:
3580         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
3581         gone.
3582
3583         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
3584
3585         * gtk/gtkobject.c:
3586         (gtk_object_destroy):
3587         (gtk_object_shutdown): fixed recursion guards. basically we have to
3588         catch the case where any of GObject.shutdown() or gtk_object_destroy()
3589         is called during ::destroy, and avoid recursion there.
3590
3591         * gtk/gtktypeutils.c:
3592         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
3593         boxed_copy/boxed_free. this needs a more general solution based on a
3594         publically installed code-generator utility.
3595
3596         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
3597         glib's gobject has support for that now.
3598         define GtkSignalMarshaller in terms of GSignalCMarshaller.
3599
3600 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
3601
3602         * gtk/gtksignal.[hc]:
3603         * gtk/gtkmarshal.[hc]:
3604         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
3605         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
3606         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
3607         care of that.
3608
3609         * *.c: marshaller name fixups.
3610
3611         * gtk/gtkmarshal.list: added a comment briefing the format.
3612
3613 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
3614
3615         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
3616         compatibility macros here now. more specifically, most of
3617         the API is preserved (yes, _most_, nonwithstanding the
3618         following exceptions listed, the API is stil lHUGE ;)
3619         things that got removed completely:
3620         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
3621         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
3622         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
3623         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
3624         gtk_signal_remove_emission_hook().
3625         non-functional functions variants:
3626         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
3627         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
3628         not supported anymore.
3629         (gtk_signal_compat_matched): new internal function to aid
3630         implementation of the compatibility macros, it  provides
3631         functionality to block/unblock/disconnect handlers based
3632         on func/data.
3633
3634         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
3635
3636         * *.c: adaptions to new type registration API signatures.
3637
3638 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
3639
3640         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
3641
3642 2000-10-25  Robert Brady  <robert@suse.co.uk>
3643
3644         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
3645         gdk_property_delete): If window == NULL, assume the root window.
3646         (restoring the behaviour that was in 1.2).
3647         
3648         * gtk/testtext.c (save_buffer): Allow creation of new files when
3649         saving.
3650
3651         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
3652         calls to read().
3653
3654 2000-10-25  Tor Lillqvist  <tml@iki.fi>
3655
3656         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
3657
3658         * gdk/win32/gdkdrawable-win32.c
3659         * gdk/win32/gdkimage-win32.c
3660         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
3661         X11 backend.
3662
3663         * gdk/win32/gdkcc-win32.c
3664         * gdk/win32/gdkcolor-win32.c
3665         * gdk/win32/gdkfont-win32.c
3666         * gdk/win32/gdkinput-win32.c
3667         * gdk/win32/gdkmain-win32.c
3668         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
3669
3670 2000-10-24  Havoc Pennington  <hp@redhat.com>
3671
3672         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
3673         it a static function
3674
3675         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
3676         redraw text when a tag is applied to it.
3677
3678         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
3679         (gtk_text_tag_affects_nonsize_appearance): private functions to
3680         see if a tag requires various kinds of redraw/layout to be queued
3681         up.
3682
3683         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
3684
3685         * gtk/testtext.c (fill_example_buffer): Put the cursor 
3686         at the start of the buffer, so search works by default
3687
3688         * gtk/gtktextiter.c (lines_match): init match_start always
3689
3690         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
3691         function, get iter at a line + a byte index
3692
3693         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
3694         to set byte position within a line
3695         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
3696
3697 2000-10-23  Havoc Pennington  <hp@redhat.com>
3698
3699         * gtk/testtext.c: Re-enable the "find" dialog
3700
3701         * gtk/testgtk.c: Add test for gdk_drawable_get_image
3702         
3703         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
3704         the arguments to gdk_draw_drawable were in the wrong order
3705         (gdk_window_paint_init_bg): This function was ignoring the
3706         init_region, instead of clipping to it, so the entire backing
3707         pixmap was cleared on every begin_paint()
3708         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
3709         was in here again, the loop kept using the same GtkWindowPaint
3710         over and over.
3711         (gdk_window_begin_paint_region): Fix a bug where we had two
3712         x_offset instead of x_offset and y_offset
3713
3714         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
3715         before we get the image.
3716         (gdk_draw_drawable): get the composite before we draw the drawable.
3717         (gdk_drawable_real_get_composite_drawable): default
3718         get_composite_drawable implementation that returns the drawable 
3719         itself
3720
3721         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
3722         get_composite_drawable virtual function
3723
3724         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
3725         list-walking bug
3726
3727         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
3728         make this work if the source drawable is a GdkDrawableImplX11
3729         instead of a public drawable type. This is really broken; the
3730         problem is that GdkDrawable needs a virtual method get_xid(), but
3731         of course that doesn't work in practice. Enter RTTI.
3732
3733         Also, improve mismatched depth message.
3734
3735         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
3736         GdkPixmap
3737
3738         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
3739         install _gdk_x11_get_image as our implementation of get_image
3740         
3741         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
3742         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
3743
3744         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
3745         gdk_drawable_get_image
3746
3747         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
3748
3749         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
3750         get_image
3751
3752         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
3753         trailing semicolon after for loop
3754
3755 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
3756
3757         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
3758         where font_desc for widget's context lagged widget's font_desc by
3759         one step.
3760
3761 2000-10-22  Tor Lillqvist  <tml@iki.fi>
3762
3763         * gdk/win32/gdkgc-win32.c
3764         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
3765
3766         * gtk/makefile.mingw.in
3767         * gtk/gtk.def: Updates.
3768
3769         * gtk/testgtk.c: sleep() is called _sleep in MS's C
3770         library.
3771
3772         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
3773
3774         * gtk/makefile.msc: Remove
3775
3776         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
3777
3778         * gtk/Makefile.am: Add it.
3779
3780         * configure.in: Generate it.
3781
3782         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
3783         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
3784         something even if not implemented, to satisfy picky MSVC.
3785
3786         Patches by Hans Breuer:
3787         
3788         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
3789         SetBkMode() and SetTextAlign() before calling
3790         pango_win32_render().
3791
3792         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
3793         Set hcliprgn to NULL after destroying it.
3794         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
3795
3796         * gdk/win32/gdkgeometry-win32.c
3797         (_gdk_windowing_window_queue_antiexpose): More effective
3798         implementation.
3799
3800         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
3801         depth as default, not the visual's.
3802
3803         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
3804         against empty title.
3805
3806         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
3807         IMAGE_PRIVATE_DATA.
3808
3809         * gdk/win32/gdkimage-win32.c: Use it.
3810
3811 2000-10-22  Robert Brady  <robert@suse.co.uk>
3812
3813         * configure.in: Check for bind_textdomain_codeset
3814
3815         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
3816         present, make use of it.
3817
3818         Add a translatable string "default:LTR" which, if translated
3819         to "default:RTL", will cause the default direction to be
3820         Right-to-Left.
3821
3822         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
3823         direction if marked as flippable.
3824
3825         * gtk/gtkhscale.c: Mark widget as flippable.
3826         
3827 2000-10-04  Havoc Pennington  <hp@redhat.com>
3828
3829         * gtk/testgtk.c (create_buttons): create some stock buttons
3830         with the default accel group
3831         (create_image): test some new GtkImage features
3832         (make_message_dialog): test GtkMessageDialog
3833         (create_modal_window): fix someone's bizzarro indentation
3834
3835         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
3836         GTK_WIN_POS_CENTER_ON_PARENT. 
3837         Add "destroy with parent" setting, which means the window goes
3838         away with its transient parent.
3839         (gtk_window_get_default_accel_group): get the default accel group
3840         for the window.
3841         (gtk_window_set_destroy_with_parent): set/unset destroy with
3842         parent flag
3843         (gtk_window_read_rcfiles): invalidate icon set caches
3844         after reloading rcfiles 
3845
3846         * gtk/gtkenums.h (GtkWindowPosition): add
3847         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
3848         on its parent window when the dialog is mapped for the first time.
3849
3850         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
3851         a simple message dialog class
3852         
3853         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
3854         handler to emit response signal, and maybe later it would
3855         honor a hide_on_delete flag - though that isn't there yet.
3856         Set border width on the vbox to 2, so we get some padding.      
3857         Use a button box for the action area.
3858         (gtk_dialog_key_press): synthesize a delete event if Esc
3859         is pressed and the GtkWidget key press handler didn't 
3860         handle the escape key.
3861         (gtk_dialog_new_with_buttons): new function creates a dialog
3862         with some default buttons in it.
3863         (gtk_dialog_add_action_widget): add an activatable widget
3864         as a button in the dialog - you can also add a non-activatable
3865         widget by accessing the action area directly.
3866         (gtk_dialog_add_button): add a simple button - stock ID or 
3867         label - to the action area
3868         (gtk_dialog_response): emit response signal
3869         (gtk_dialog_run): block waiting for the dialog, return 
3870         the response. Override normal delete_event behavior, so that 
3871         delete_event does nothing inside gtk_dialog_run().
3872
3873         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
3874         emitted when an action widget is clicked or the dialog gets
3875         delete_event
3876
3877         * gtk/gtk.h: add gtkmessagedialog.h
3878
3879         * gtk/Makefile.am: add gtkmessagedialog.[hc]
3880
3881 2000-10-18  Havoc Pennington  <hp@redhat.com>
3882
3883         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
3884         where any number of empty lines would get skipped
3885
3886         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
3887         edge.
3888
3889         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
3890         warning about invalid iterators (explain more thoroughly)
3891         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
3892
3893         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
3894         big
3895
3896         * demos/*.c: Add error handling
3897
3898         * gtk/gtktextbuffer.c: don't modify const iterators
3899
3900         * gtk/gdk-pixbuf-loader.c: Add full error handling here
3901
3902         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
3903         on file load
3904
3905         * gtk/gtkiconfactory.c: Update to reflect addition of error
3906         handling to gdk-pixbuf loaders
3907
3908 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
3909
3910         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
3911         move to new modularized testgtk.
3912
3913 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
3914
3915         * gtk/gtktreeview.c: Draw the arrows correctly.
3916
3917         * gtk/gtktreemodel.c: Added user docs.
3918
3919         * gtk/gtk.h: remove gtktreedatalist.h.
3920
3921         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
3922         parent when generating my type.
3923
3924         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
3925         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
3926
3927 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
3928
3929         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
3930         GtkTreeModel from object to interface.
3931
3932 2000-10-16  Havoc Pennington  <hp@redhat.com>
3933
3934         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
3935         compilation
3936
3937 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
3938
3939         * gtk/gtktreeselection.c: Add API documentation to all public
3940         functions.
3941
3942         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
3943         functions.
3944
3945 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
3946
3947         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
3948         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
3949         docs to all public functions.
3950
3951         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
3952         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
3953         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
3954         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
3955         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
3956         issue.
3957
3958 2000-10-14  Robert Brady  <robert@suse.co.uk>
3959
3960         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
3961
3962 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
3963
3964         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
3965         values other then G_TYPE_STRING.
3966         * gtk/gtktreeselection.c: Minor commenting updates.
3967         * gtk/gtktreeview.c: Format updates.
3968
3969 2000-10-09  Tor Lillqvist  <tml@iki.fi>
3970
3971         * README.win32: Update.
3972
3973         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
3974         lines that had been deleted by mistake (?).
3975
3976         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
3977         also the case fg==white and bg==black (but still not randomly
3978         coloured cursors). Thanks to Wolfgang Sourdeau.
3979
3980         * gdk/win32/*.c: Silence gcc -Wall.
3981
3982         * gtk/gtk.def: Add missing entry points.
3983
3984         Fixes by Hans Breuer:
3985
3986         * gdk/makefile.msc
3987         * gdk/win32/makefile.msc: Update.
3988
3989         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
3990         some MSVC thing, presumably), cause breakpoint on failures. Add
3991         GDK_NOR case. Call g_log_set_always_fatal.
3992
3993         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
3994         should be pased by reference.
3995         
3996         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
3997         
3998         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
3999
4000         * gdk/win32/gdkevents-win32.c
4001         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
4002
4003         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
4004         implementation object.
4005
4006         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
4007         not just windows.
4008         
4009         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
4010         Use the wrapper object.
4011         
4012 2000-10-06  Havoc Pennington  <hp@redhat.com>
4013
4014         * Makefile.am (SRC_SUBDIRS): contrib subdir
4015
4016         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
4017         so it can be used in Xlib version
4018
4019         * demos/testpixbuf.c (update_timeout): error checking from 1.0
4020         tree
4021
4022         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
4023         change from 1.0 tree that returns first frame of animation
4024         if the loaded file is an animation.
4025
4026         * contrib: add new directory to hold stuff that comes with GTK+
4027         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
4028         
4029         * configure.in: add contrib/*
4030
4031 2000-10-05  Havoc Pennington  <hp@redhat.com>
4032
4033         * demos/testpixbuf-save.c: add pixbuf save test
4034
4035         * demos/Makefile.am: add testpixbuf-save.c
4036
4037 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
4038
4039         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
4040         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
4041         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
4042         * gtk/gtktreeselection.[ch]: Replaced
4043         "node_selected"/"node_unselected" signal with "selection_changed"
4044         signal.
4045
4046 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
4047
4048         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
4049         tree widget.
4050
4051 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
4052
4053         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
4054         drawing.
4055
4056 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
4057
4058         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
4059         Move list pointer forwards before removing item from
4060         list. (Crash reported by Salmaso Raffaele)
4061
4062         * gdk/gdkwindow.h: Remove spurious trailing ,
4063
4064         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
4065         dependencies on uninstalled libraries, sorry folks.
4066
4067 2000-10-04  Havoc Pennington  <hp@redhat.com>
4068
4069         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4070         gtk/gtkiconfactory.c: Fix copyrights    
4071
4072         * demos/testpixbuf.c: add inline pixbuf test
4073         
4074 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
4075
4076         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
4077         Add gdk_window_iconify.
4078
4079         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
4080         (gdk_window_set_geometry_hints): Add win_gravity
4081         to geometry structure.
4082
4083         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
4084         Implement _NET_WM_PING.
4085
4086         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
4087         Set _NET_WM_PID on the client leader.
4088
4089         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
4090         Handle UTF-8 better.
4091
4092         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
4093         UTF-8 better, set _NET_WM_NAME as well. Only set
4094         icon name if it hasn't previously been explicitely 
4095         set.
4096
4097 2000-10-03  Havoc Pennington  <hp@redhat.com>
4098
4099         * gtk/testtextbuffer.c: clean up trailing whitespace,
4100         add extensive tests for tag toggle iteration.
4101         
4102         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
4103         distance
4104
4105         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
4106         optimize case where the tag root is on level 1
4107         (gtk_text_line_previous_could_contain_tag): attempt to implement
4108         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
4109         functionality
4110
4111         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
4112         Implement this, though not very efficiently.
4113
4114         * gtk/gtktextiterprivate.h: reformat
4115
4116         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
4117         iterator
4118
4119         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
4120         this to properly revalidate the iterators.
4121
4122         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
4123         properly at the end of the line (and therefore on empty lines)
4124
4125         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
4126         maybe we should return a value...
4127
4128 2000-10-03  Tor Lillqvist  <tml@iki.fi>
4129
4130         * config.h.win32: Guard definition of alloca(). glib.h now handles
4131         that.
4132
4133         * gdk/gdk.def
4134         * gtk/gtk.def: Add new entry points.
4135
4136         Changes just to make GTK+ build without errors on Win32. No hope
4137         of it working in its current state, though...:
4138         
4139         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
4140         some functions from the X11 backend, just to make GTK+ build.
4141
4142         * gdk/makefile.mingw.in
4143         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
4144         number. Add new object files.
4145
4146         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
4147         GetMessageTime to get timestamp (where on X11 uses
4148         gdk_x11_get_server_time()).
4149
4150 2000-10-02  Havoc Pennington  <hp@pobox.com>
4151
4152         * gtk/gtktextview.c: text_window_* weren't static and should have
4153         been.
4154         Start work on child widgets; not yet complete, syncing to 
4155         office computer.
4156
4157         * gtk/gtktextchild.h: change this to contain a public interface,
4158         starting work on child interfaces.
4159         * gtk/gtktextchildprivate.h: move private interfaces here
4160
4161         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
4162
4163         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
4164         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
4165         gtk/gtktextmark.c: copyright notices
4166
4167         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
4168         internal functions      
4169
4170         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
4171         internal function
4172
4173         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4174         Reformatting    
4175
4176 2000-09-30  Havoc Pennington  <hp@pobox.com>
4177
4178         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
4179         NULL start/end pointers
4180
4181         * gtk/gtktextbuffer.c: Write some docs
4182         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
4183         NULL, so you can just check whether there's a selection.        
4184
4185         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
4186         cleanup_line or segments_changed ourselves, it gets done 
4187         in unlink_segment
4188
4189         * gtk/gtktextmark.h:
4190         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
4191         
4192         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
4193
4194         * gtk/gtktextmark.c: delete some more old Tk cruft
4195
4196         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
4197         mark before removing it, so we can emit MARK_DELETED with a valid
4198         pointer.
4199         (gtk_text_buffer_mark_set): hold ref across signal emission
4200
4201         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
4202         whining about attempts to delete special marks
4203
4204         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
4205         underscore, since it's internal.
4206
4207         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
4208         now implemented in terms of iterators in gtktextiter.h
4209
4210         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
4211         New function, destructively sets contents of buffer. Also 
4212         a convenient way to clear the buffer by setting text to ""
4213
4214         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
4215         multiline string literal
4216
4217         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
4218         text changes.
4219
4220         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
4221         is not dereferenceable
4222         (gtk_text_iter_forward_lines): fix return value
4223
4224 2000-09-29  Havoc Pennington  <hp@redhat.com>
4225
4226         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
4227
4228         * gtk/gtktextview.c: Implement drag thresholding; change functions 
4229         that set border window size to have nicer name
4230         (gtk_text_view_mark_set_handler):  Fix this to have the 
4231         right signature.
4232
4233         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
4234
4235         * gtk/testtext.c: Update with API changes, put line numbers on 
4236         both sides.
4237         
4238         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
4239         with this
4240
4241         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
4242         pixbuf; delete a big block of #if 0 Tk code
4243
4244         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
4245         insert_pixmap with insert_pixbuf
4246
4247 2000-09-29  Martin Baulig  <baulig@suse.de>
4248
4249         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
4250         confusion with the GdkPixbuf of the GNOME 1.x platform.
4251
4252 2000-09-29  Havoc Pennington  <hp@pobox.com>
4253
4254         * gtk/gtktextview.c: Implement the side windows.
4255
4256         * gtk/testtext.c: Implement simple line numbering in the 
4257         left side window; seems to make scrolling sloooow. Oops.
4258         Also, cursor blink is for some reason causing redraws
4259         of the line numbers. Should investigate...
4260
4261 2000-09-28  Havoc Pennington  <hp@redhat.com>
4262
4263         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
4264         scrolling child windows, and draw focus rectangle properly.
4265         
4266         (gtk_text_view_buffer_to_window_coords):
4267         Coordinate transformation to deal with all these freaking windows
4268         and offsets
4269         (gtk_text_view_window_to_buffer_coords): transform the other way
4270
4271         * gtk/testtext.c (create_buffer): Update to match Pango API change
4272
4273         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
4274         anonymous tags
4275         (foreach_unref): don't emit remove signal from finalize, just
4276         set tag's parent to NULL
4277
4278 2000-09-26  Havoc Pennington  <hp@redhat.com>
4279
4280         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
4281         Fix some warnings       
4282
4283 2000-09-26  Havoc Pennington  <hp@redhat.com>
4284
4285         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
4286         headers into the private header list
4287
4288         * Makefile.am (pkgconfig_DATA): install pkg-config files
4289
4290         * configure.in: add pkg-config files
4291
4292         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
4293
4294         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
4295         outstanding icon caches on theme change.
4296
4297         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
4298         important types:
4299
4300         (GtkIconSource): Specification for creating a pixbuf 
4301         appropriate for a direction/state/size triplet from 
4302         a source pixbuf or filename
4303
4304         (GtkIconSet): List of GtkIconSource objects that are used to
4305         create the "same" icon (e.g. an OK button icon), and cache for
4306         rendered icons
4307
4308         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
4309         up the icon set for a given stock ID.  GTK maintains a stack of
4310         GtkIconFactory to search, and applications or libraries can add
4311         additional icon factories on top of the stack
4312         
4313         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
4314         the set of GtkIconSource specified for a given stock ID into 
4315         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
4316         RcStyle, under the specified stock ID.
4317
4318         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
4319         render_icon used to derive a GdkPixbuf from a GtkIconSource.
4320         This allows people to theme how prelight, insensitive, etc. are
4321         done.
4322
4323         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
4324         icon factories for a style, and return the resulting 
4325         icon set if any.
4326
4327         (gtk_style_render_icon): Render an icon using the render_icon 
4328         method in the GtkStyleClass.
4329
4330         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
4331         Use the style for a given widget to look up a stock ID, get the
4332         icon set, and render an icon using the render_icon method 
4333         of the style
4334
4335         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
4336         (contains information about a stock item), the built-in stock item
4337         IDs, and functions to add/lookup stock items.
4338
4339         * gtk/stock-icons/*: Stock icons that come with GTK
4340
4341         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
4342         a button based on a GtkStockItem
4343         (gtk_button_new_accel): Takes a uline string and accel group, and
4344         installs the accelerator.
4345
4346         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
4347         image-display widget.
4348
4349 2000-09-25  Havoc Pennington  <hp@redhat.com>
4350
4351         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
4352
4353         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
4354         Fix a bug when removing node data, we didn't properly 
4355         re-splice the linked list after removing the data.
4356
4357         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
4358         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
4359
4360         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
4361
4362         * gtk/gtktextlayout.c (set_para_values): Set tab array 
4363         for the layout from the GtkTextTag.
4364
4365         * gtk/gtktexttypes.h: delete tab and search cruft, 
4366         remove g_convert() in favor of GLib version
4367
4368         * gtk/gtktexttypes.c: remove tab implementation from here,
4369         move to Pango
4370
4371         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
4372         tab stuff using new PangoTabArray from Pango
4373
4374         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
4375         unused border_width stuff
4376
4377 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
4378
4379         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
4380         glib) and now useless utf_to_latin1() latin1_to_utf()
4381
4382         * gtk/gtktextview.[ch]: Change ::move_insert and
4383         ::delete_text action signals to ::move and ::delete;
4384         create the signals with the right enumeration type,
4385         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
4386         C-v bindings, change Home, End to move to beginning/end
4387         of line, Add C-Home C-End to move to beginning/end
4388         of buffer. Change ::cut_text to ::cut_clipboard, etc;
4389         combine ::scroll_text into ::move; use new GtkSelectionData
4390         functions to simplify DND text handling.
4391         
4392         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
4393         deletion enumerations here, rename enumeration values to 
4394         be consistently plural.
4395
4396         * gtk/gtktextbuffer.c: Use new clipboard interfaces
4397         for cut/copy/paste and primary selection.
4398
4399         * gtk/gtktextbuffer.[ch]: Remove excess time and
4400         'interactive' arguments from cut/copy/paste;
4401         rename cut to cut_clipboard, etc; remove
4402         gtk_text_buffer_get_clipboard_contents().
4403
4404         * gtk/gtktextlayout.[ch]: Add 
4405         gtk_text_layout_move_iter_to_line_end() to move the iter to 
4406         line ends.
4407
4408         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
4409         Functions to set or get a UTF-8 string on the selection
4410         data.
4411
4412         * gtk/gtkclipboard.[ch]: New, simplified selection handling
4413         interfaces.
4414
4415         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
4416         created widgets - one of these is useless if we don't.
4417
4418         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
4419         a public function clear all targets registered for the
4420         widget.
4421
4422         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
4423         Never call gtk_widget_realize() - that was just asking
4424         for bizarre side-effects.
4425
4426         * gtk/gtkselection.c (gtk_selection_owner_set): Call
4427         gdk_selection_owner_set even if the widget is the
4428         same so that we reliably update the timestamp on
4429         the server.
4430
4431         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
4432         gdk_x11_get_server_time() function.
4433         
4434         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
4435         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
4436         Add some tricky filtering on serial numbers for
4437         selection clear events to fix up long-standard
4438         race condition FIXME's in gtkselection.c.
4439
4440         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
4441         routines to convert from utf8 to compound text or
4442         STRING and from a text property to UTF-8.
4443
4444         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
4445         a convenience function gdk_get_current_event_time().
4446
4447         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
4448         and free selection_data->data properly
4449
4450 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
4451
4452         * gtk/gtkthemes.c: Remove some unecessary includes.
4453
4454 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
4455
4456         * gtk/gtktextdisplay.c
4457         * gtk/gtktextlayout.c
4458         * gtk/gtktexttag.c
4459         * gtk/gtktexttag.h
4460         * gtk/testtext.c: Change the overstrike property to strikethrough,
4461         to closer match pango.
4462
4463 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
4464
4465         * gtk/gtktextview.c: Fix up visibility so that focus,
4466         cursor_visible and blink interact properly.  Reenable cursor blink
4467         which had been roughly disabled. Make blink and focus
4468         properly per-view.
4469
4470         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
4471         Add a flag for whether to display insertion cursor and
4472         a function to set the flag.
4473
4474         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
4475         get_line_y() to get_line_yrange(), to be a bit more generally
4476         useful.
4477
4478 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
4479
4480         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
4481           do stop_navigating_submenu, to clear last timeout properly.
4482           Also in gtk_menu_motion_notify move ignore_enter above
4483           the conditional to make it always happen as suggested by Owen
4484
4485 2000-09-07  Tor Lillqvist  <tml@iki.fi>
4486
4487         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
4488
4489         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
4490         w32api headers.
4491
4492         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
4493         declarations.
4494
4495         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
4496         (gdk_win32_get_colormap): A line had been deleted by mistake.
4497
4498         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
4499         (gdk_event_translate): Handle more virtual keycodes to be able to
4500         generate GDK events for Control-comma, Control-period, etc.
4501
4502         * gtk/gtk.def: Add some missing entry points.
4503
4504 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
4505
4506         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
4507         Doc comment fixing. (Mostly non-matching parameter names.)
4508
4509         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
4510         comments a little to avoid looking like a doc comment.
4511
4512         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
4513         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
4514         conversions be changed to GError?)
4515
4516         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
4517         Move private #defines into .c file.
4518
4519         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
4520         order of argument addition, remove duplicates.
4521
4522         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
4523         parent class is FrameClass, not BinClass.
4524
4525         * gtk/gtk.h: Add gtkinvisible, which was missing.
4526         (It's occasionalyl useful for client apps, if seldom.)
4527
4528         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
4529         #define.
4530
4531 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
4532
4533         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
4534         coordinates when creating window, instead of GDK-space
4535         coordinates. (Avoid BadValue on too large windows.)
4536
4537 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4538
4539         * configure.in (use_mmx_asm): Remove conftest* after use along the
4540         lines of AC_TRY_COMPILE.        
4541         
4542         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
4543         of g_dirname, which is deprecated.
4544         (gtk_rc_parse_any): Removed calls to
4545         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
4546
4547         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
4548         Removed calls to g_hash_table_{freeze,thaw}, as they are
4549         deprecated now.
4550
4551         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
4552         instead of g_basename.
4553         
4554 2000-09-04 Elliot Lee <sopwith@redhat.com>
4555         
4556         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
4557         ANSI warning.
4558
4559 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
4560
4561         * gtk/gtkwidget.h:  Add some documenting comments about 
4562           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
4563           just as owen said on irc.
4564
4565         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
4566           set HAS_DEFAULT.  Only set it if there isn't another window
4567           holding it (a focus window which RECEIVES_DEFAULT) and only unset
4568           it if the widget is not the focused window with RECEIVES_DEFAULT.
4569           This fixes weird double default bugs in dialogs which has things
4570           call gtk_window_set_default at times.
4571
4572 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
4573
4574         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
4575         Nils Barth and David Santiago to improve submenu
4576         navigation. The patch does this by creating a triangular
4577         region from the point where the pointer leaves the
4578         menu to the submenu.  While the pointer is in
4579         that region and a timeout has not expired, events 
4580         that would cause the active submenu to change are
4581         ignored.
4582
4583 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
4584
4585         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
4586         moving a toplevel window immediately after sizing it would
4587         result in it being sized back to the old size since 
4588         impl->width, impl->height aren't updated until we hear
4589         back from the server. There is still a (longstanding) bug
4590         here that gdk_window_get_size() will give the wrong size
4591         until we do hear back.
4592
4593 2000-08-31  Havoc Pennington  <hp@redhat.com>
4594
4595         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
4596         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
4597         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
4598         Rename GtkTextStyleValues to GtkTextAttributes
4599
4600 2000-08-31  Havoc Pennington  <hp@pobox.com>
4601
4602         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
4603         for rapid testing whether an iterator is the end iterator
4604         (gtk_text_btree_new): init end line cache
4605         (gtk_text_line_is_last): use fast cached line to 
4606         see if we're the last line.
4607         (get_last_line): use cached line here too, should 
4608         speed up some random unrelated code.
4609         
4610 2000-08-30  Havoc Pennington  <hp@pobox.com>
4611
4612         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
4613         signals.
4614
4615         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
4616         delete_text signals. This allows the signals to be used for
4617         implementing undo.
4618
4619         * gtk/gtktextbuffer.c: Change signal handler signatures; 
4620         provide "interactive" argument when emitting insert_text or
4621         delete_text signal.
4622         
4623 2000-08-30  Havoc Pennington  <hp@pobox.com>
4624
4625         * gtk/gtktextbuffer.c: Docs
4626
4627 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
4628
4629         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
4630         from switch statements, since Tor removed the enumeration
4631         value.
4632         
4633         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
4634         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
4635
4636 2000-08-29 Elliot Lee <sopwith@redhat.com>
4637         * */*.h: Use G_GNUC_CONST.
4638
4639 2000-08-27  Havoc Pennington  <hp@pobox.com>
4640
4641         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
4642         minor indentation fixes, inserted some FIXME about stuff I
4643         realized was broken while documenting it.
4644         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
4645         GTK convention  
4646
4647 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
4648
4649         * gtk/testgtk.c (create_styles): Fix double free of
4650         font desc.
4651
4652 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
4653
4654         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
4655         
4656         * gtk/testgtk.c (create_styles): Add a test for modifying
4657         the style through gtk_widget_modify_*.
4658
4659         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
4660         a function to get the current modifier style.
4661
4662         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
4663         of the passed in GtkRcStyle instead of ref'ing it.
4664
4665         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
4666
4667 2000-08-20  Tor Lillqvist  <tml@iki.fi>
4668
4669         * gdk/gdkimage.h
4670         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
4671         shared memory image+pixmap GdkImage type, or
4672         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
4673         I am dropping that.
4674
4675         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
4676         actually call gtk_init_abi_check(), passing also
4677         sizeof(GtkWindow). Ditto for gtk_init_check(). 
4678
4679         * gtk/gtk.def
4680         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
4681         New functions, used to check that the GTK+-using code has been
4682         compiled using the correct compiler and switches. In particular,
4683         with gcc one has to use the -fnative-struct switch as GTK+ is
4684         compiled with that.
4685
4686 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
4687
4688         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
4689         ->prev fields when merging lists. (Found simultaneously
4690         by Pawel Salek and Jakub Jelinek)
4691
4692 2000-08-12  Tor Lillqvist  <tml@iki.fi>
4693
4694         * gdk/gdk.def
4695         * gtk/gtk.def: Add missing entries.
4696
4697         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
4698         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
4699
4700         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
4701         function. Dummy implementation at this point.
4702
4703         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
4704         rules. Undefine GTK_COMPILATION when compiling the test programs.
4705         
4706         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
4707
4708 2000-08-11  Tor Lillqvist  <tml@iki.fi>
4709
4710         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
4711         to convert back and forth from UTF-8 and the "system" (or "current
4712         locale") charset when necessary. Indentation/spacing cleanup.
4713
4714 2000-08-10  Havoc Pennington  <hp@redhat.com>
4715
4716         * Makefile.am (snapshot): Change the format of the snapshot
4717         version to match glib
4718
4719         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
4720         from EXTRA_DIST since it doesn't seem to exist
4721
4722 2000-08-10  Tor Lillqvist  <tml@iki.fi>
4723
4724         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
4725         version of the directory name (not the UTF-8 one) when building
4726         the path name to stat().
4727
4728 2000-08-03  Elliot Lee  <sopwith@redhat.com>
4729
4730         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
4731         PANGO_ATTR_SHAPE set.
4732
4733 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
4734
4735         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
4736         Peter Osterlund to simplify the code while keeping the
4737         functionality the same.
4738
4739 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
4740
4741         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
4742         is_viewable() test further inside the function, since removing the 
4743         window from the redraw list without clearing ->update_area
4744         was also very broken.
4745
4746 2000-08-02  Tor Lillqvist  <tml@iki.fi>
4747
4748         * configure.in: Check for <unistd.h>.
4749
4750 2000-08-01  Martin Baulig  <baulig@suse.de>
4751
4752         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
4753         to display the message that this is a development version of GTK+.
4754
4755 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
4756
4757         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
4758         was depending on widget->allocation instead of the width of text_area,
4759         which was incorrect for subclasses like GtkSpinButton.
4760
4761         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
4762         with width == 1 tests that should be width == -1.
4763
4764 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
4765
4766         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
4767         (broken, Elliot, every single window blank on X) custom code with call
4768         to gdk_window_is_viewable() which a) prevents code duplicate and
4769         b) works. 
4770
4771 2000-07-31  Elliot Lee  <sopwith@redhat.com>
4772
4773         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
4774         to get the GDK_PARENT_ROOT() macro to work.
4775         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
4776         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
4777         of, windows that aren't shown.
4778         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
4779         pointer grab stuff.
4780
4781 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
4782
4783         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
4784           s/gtk_main_iteration/g_main_iteration/
4785
4786           Did this already in change:
4787                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
4788           don't know how it got reverted.
4789
4790 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
4791
4792         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
4793         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
4794
4795         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
4796         not gdk_pixbuf.
4797
4798 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
4799
4800         * configure.in,po/{sp,sr}.po: Added Serbian files
4801
4802 2000-07-30  Tor Lillqvist  <tml@iki.fi>
4803
4804         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
4805
4806         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
4807         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
4808         GIOChannel implementation.
4809
4810         * gdk/win32/gdkinput.c
4811         * gdk/win32/gdkpango-win32.c: Update license name here, too.
4812
4813         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
4814         definition to match prototype.
4815
4816         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
4817
4818 2000-07-27  Elliot Lee  <sopwith@redhat.com>
4819
4820         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
4821         function, to allow handling image formats that cannot be detected
4822         by looking at content alone.
4823
4824 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
4825
4826         * docs/tutorial/*.gif *.jpg *.eps
4827           Update these to the same look-n-feel.
4828           Why does including images in DocBook suck so badly?
4829
4830 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
4831
4832         * gtk/gtktable.c: applied patch from Phil Thompson
4833         <phil@river-bank.demon.co.uk> that enables space settings for
4834         the last row/columns as well.
4835
4836 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
4837
4838         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
4839         updates the license headers to the GNU Lesser General Public License,
4840         as well as updating the copyright year to 2000.
4841
4842 2000-07-26  Robert Brady  <rwb197@zepler.org>
4843
4844         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
4845           and po/Makefile, was installing and looking for them under gtk20
4846           and gtk2 respectively.
4847
4848 2000-07-25  Havoc Pennington  <hp@redhat.com>
4849
4850         * gtk/testtext.c: Comment out some stuff that depends on the rest
4851         of my patches.
4852
4853 2000-07-25  Havoc Pennington  <hp@redhat.com>
4854
4855         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
4856         buffer
4857
4858 2000-07-25  Havoc Pennington  <hp@redhat.com>
4859
4860         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
4861         widget changes.
4862
4863         * gtk/gtktextview.h: To be consistent with usage of "line"
4864         throughout the API to mean "newline-terminated thingy", change
4865         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
4866         to MOVEMENT_LINE.
4867
4868         (GtkTextView): Add flags for default editability, and whether to
4869         show the cursor. Add functions to get/set that. Add 
4870
4871         (gtk_text_view_get_iter_location): new function
4872
4873         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
4874         gtktextlayout.h
4875         (g_convert): Add g_convert temporarily, will go in glib in a bit
4876         
4877         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
4878         GtkTextTagTableForeach instead of brokenly using GHFunc.
4879         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
4880
4881         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
4882         moved to public header.
4883
4884         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
4885         "invisible", since "elide" was a bad name.
4886         (gtk_text_tag_get_priority): Added
4887
4888         (GtkTextStyleValues): put this in public header, along with
4889         functions to use it.
4890
4891         * gtk/gtktextmarkprivate.h: Include more headers, since we no
4892         longer include gtktextbtree.h.
4893
4894         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
4895         gtk_text_mark_deleted
4896
4897         * gtk/gtktextlayout.h: Don't include the "really private" headers,
4898         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
4899         to make this possible. Now we only need to install
4900         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
4901         (However the Makefile.am isn't changed yet because of the
4902         logistics of merging gtk-hp-patches piecemeal)
4903
4904         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
4905         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
4906         gtk_text_iter_get_line is now used in the public API for a
4907         different purpose.
4908
4909         * gtk/gtktextiter.h: Clean up function names to be more
4910         consistent. Always call char offset "offset" and byte index
4911         "index". A "line" is always a line number. 
4912
4913         (gtk_text_iter_is_last): new function, more efficient than 
4914         the existing way to check
4915         (gtk_text_iter_is_first): new function, also more efficient
4916
4917         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
4918
4919         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
4920         gtk_text_iter_forward_char, etc.
4921
4922         (gtk_text_iter_forward_to_tag_toggle): Renamed from
4923         forward_find_tag_toggle, since this isn't a linear search
4924
4925         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
4926
4927         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
4928         New functions, search for a buffer substring.
4929
4930         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
4931         interactive and default editable (since we need to store that info
4932         until we receive the selection data).
4933
4934         Remove all the _at_char and at_line etc. versions of functions;
4935         only have iterator versions.
4936
4937         Add _interactive() versions of functions, that consider the
4938         editability of text. (FIXME add interactive flag to the 
4939         insert/delete signals per Darin's suggestion)
4940
4941         (gtk_text_buffer_get_tag_table): new function, demand-creates the
4942         tag table if necessary
4943
4944         Remove declaration of gtk_text_buffer_get_iter_from_string
4945
4946         (_gtk_text_buffer_get_btree): private/internal function, added.
4947         
4948
4949         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
4950         (gtk_text_line_is_last): new function
4951
4952 2000-07-25  Havoc Pennington  <hp@redhat.com>
4953
4954         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
4955         using GtkProgressBar. See Changes-2.0.txt for details.
4956
4957         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
4958         "pulse_step" which are the equivalent of
4959         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
4960         Implement new API.
4961         
4962         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
4963         (use_text_format) to mark whether text set on the progress bar is
4964         a format string. Deprecate entire GtkProgress interface.
4965
4966         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
4967         (gtk_progress_build_string): make this a no-op if use_text_format
4968         is FALSE
4969
4970         * docs/Changes-2.0.txt: Describe progress bar changes.
4971
4972 2000-07-25  Tor Lillqvist  <tml@iki.fi>
4973
4974         * Makefile.am: Include the build directory.
4975
4976         * configure.in: Generate build/Makefile, build/win32/Makefile,
4977         gdk/, gdk/win32/, and gtk/makefile.mingw.
4978
4979         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
4980         Add GETTEXT_PACKAGE.
4981         
4982         * gdk/gdk.def
4983         * gtk/gtk.def: Updates.
4984
4985         * gdk/gdkfont.h
4986         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
4987         need them any longer.
4988
4989         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
4990
4991         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
4992         PANGOWIN32_LIBS and gdk_pixbuf.
4993
4994         * gdk/win32: Compiles, but no doubt doesn't work at all.
4995
4996         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
4997
4998         * gdk/win32/gdkinput.c: New file, temporarily.
4999         
5000         * gdk/win32/gdkinput-win32.h: New file
5001
5002         * gdk/win32/gdkinputprivate.h: Remove.
5003
5004         * gdk/win32/gdkpango-win32.c: New file.
5005
5006         * gtk/makefile.mingw.in: New file
5007
5008         * gtk/makefile.cygwin: Removed
5009         
5010         * gtk/Makefile.am: Update accordingly.
5011
5012         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
5013         made externally visible.
5014
5015         * gtk/gtkmain.c: Use it.
5016         
5017         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
5018         is enough.
5019
5020         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
5021
5022 2000-07-24 Elliot Lee <sopwith@redhat.com>
5023         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
5024         individual backends already.
5025         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
5026         again. Yes, there really is a good reason for this, if you are using the gdkregion
5027         internals, and if you're not, why do you care?
5028         * gdk/gdkwindow.c: Fix inverted condition
5029         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
5030         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
5031         * gtk/gtkrange.c: Redraw trough when moving.
5032         * gtk/gtktypeutils.c: Fix warning by adding const cast.
5033         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
5034
5035 2000-07-23  Tor Lillqvist  <tml@iki.fi>
5036
5037         * configure.in: Check for mkstemp and sigsetjmp. Output
5038         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
5039
5040         More work on GDK for Win32. Still in an intermediate state.
5041
5042         * gdk/makefile.cygwin
5043         * gdk/win32/makefile.cygwin: Removed.
5044         
5045         * gdk/makefile.mingw.in
5046         * gdk/win32/makefile.mingw.in: New files.
5047
5048         * gdk/Makefile.am
5049         * gdk/win32/Makefile.am: Generate and distribute them.
5050
5051         * gdk/win32/gdkwindow-win32.h
5052         * gdk/win32/gdkdrawable-win32.h
5053         * gdk/win32/gdkpixmap-win32.h: New files.
5054
5055         * gdk/win32/gdkcolor-win32.c
5056         * gdk/win32/gdkcursor-win32.c
5057         * gdk/win32/gdkdrawable-win32.c
5058         * gdk/win32/gdkgc-win32.c
5059         * gdk/win32/gdkimage-win32.c
5060         * gdk/win32/gdkprivate-win32.h
5061         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
5062         Rename fields and variables called xcursor, xid, etc (these names
5063         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
5064
5065 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
5066
5067         * gtk/gtkentry.[ch]: Fix some problems with vertical
5068         alignment.
5069
5070         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
5071         char/byte confusion.
5072
5073 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
5074
5075         * gtk/gtktextview.c (changed_handler): Fix bug where
5076         redraw wasn't being done properly when height of
5077         dirty region changed.
5078
5079         * demos/Makefile.am: Remove various references to
5080         -lgmodule
5081
5082 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
5083
5084         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
5085         PangoAttrShape to reserve space for pixmaps, add 
5086         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
5087         in the display functions.
5088         
5089         * gtk/testgtk.c (create_layout): Set some more exotic
5090         scrolled window options
5091
5092         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
5093         Add function to set the shadow type of a window, to allow
5094         putting a shadow around widgets such as GtkLayout or GnomeCanvas
5095         which don't draw their own frame.
5096
5097 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
5098
5099         * docs/tutorial/package-db-tutorial.sh: New file for
5100           packaging DocBook format tutorial
5101
5102 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
5103
5104         * docs/tutorial/gtk-tut.sgml: Minor updates
5105
5106         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
5107
5108 2000-07-19  Tor Lillqvist  <tml@iki.fi>
5109
5110         * gtk/gtksignal.c: Fix C++ comment.
5111
5112         * gtk/gtkimmulticontext.c
5113         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
5114         don't return value from void functions.
5115
5116         * gtk/gtk.def: Add gtk_rc_style_unref.
5117
5118 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5119
5120         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
5121         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
5122         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
5123         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
5124         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
5125         gtk/gtktypeutils.h: Include files outside of the extern "C"
5126         block. Makes some C++ compiler happy. Reported by Denis Vakatov
5127         <vakatov@peony.nlm.nih.gov>.
5128
5129 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
5130
5131         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
5132           Completes first pass. Hurrah!
5133
5134 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
5135
5136         * docs/tutorial/gtk-tut.sgml: More clean ups.
5137
5138 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
5139
5140         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
5141         paint the background of the text area which was accidentally
5142         removed at some point.
5143
5144         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
5145           
5146          - Move most of the functionality from the theme vtable
5147            into GtkRcStyleClass and GtkStyleClass. The moved
5148            vtable functions were changed a bit in the move to
5149            work better in their new home.
5150
5151          - Get rid of the engine and engine_data fields from
5152            GtkRcStyle and GtkStyle; instead the theme
5153            engine derives theme-specific subclasses of GtkRcStyle
5154            and GtkStyle
5155
5156          - Add extra dlsym() found entry point to themes,
5157            theme_create_rc_style().
5158
5159         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
5160         in gtk_style_real_copy.
5161
5162         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
5163         to register a type associated with an engine. (The engine
5164         won't be unloaded as there is an instance of the type.)
5165
5166
5167 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
5168
5169         * docs/tutorial/gtk-tut.sgml: Clean ups.
5170
5171 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
5172
5173         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
5174           of cleaning up to do.
5175
5176 2000-07-15  Tor Lillqvist  <tml@iki.fi>
5177
5178         * gdk/testgdk.c: New file, quick hack to test backends for
5179         pixel-by-pixel correctness of the most simple graphic operations.
5180
5181 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
5182
5183         * Really release 1.3.1
5184         
5185         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
5186         include structure.
5187
5188 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
5189
5190         * Released 1.3.1
5191
5192 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
5193
5194         * gtk/gtktextlayout.c: use FALSE for size_only most
5195         of the time when calling gtk_text_layout_get_line_display()
5196         to avoid causing double reshapes when a redraw follows
5197         immediately after.
5198
5199 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
5200
5201         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
5202         appropriate region and gdk_window_process_updates() so trough
5203         updating doesn't lag behind the window being scrolled.
5204
5205         * gdk/gdkgc.c: Make parent_class pointer static.
5206          
5207 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
5208
5209         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
5210         include <string.h>.
5211          
5212         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
5213         cut-and-paste error in computing memory offset for 4 channels.
5214
5215 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
5216
5217         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
5218         gtk_rc_append_default_pixmap_path(), since it wasn't
5219         adding an interesting path and we don't have a meaningful
5220         default for this value.
5221
5222 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
5223
5224         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
5225         gtk-config to gtk-config-2.0 move gtk_.m4 to
5226         gtk-2.0.m4
5227
5228         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5229         gdk/Makefile.am demos/Makefile.am: Change 
5230         library names to libgtk-1.3.la, etc, so that we
5231         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
5232
5233         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5234         gdk/Makefile.am gdk/x11/Makfile.am
5235         Move include files into /usr/include/gtk-2.0, 
5236         /usr/lib/gtk-2.0/include/
5237          
5238         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
5239         gtk/gtkintl.h: Change package for gettext from 
5240         gtk+ to gtk20. Put hack in autogen.sh to modify
5241         po/Makefile.in.in after gettextize to make this
5242         possible.
5243
5244         * gtk+.spec: Some updates, not tested.
5245
5246         * gdk-pixbuf/Makefile.am: Move loaders into
5247         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
5248
5249         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
5250         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
5251         to THEMENAME/gtk-2.0/. Move engine directory  to
5252         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
5253         
5254 2000-07-12  Tor Lillqvist  <tml@iki.fi>
5255
5256         Win32 changes, still doesn't build though.
5257
5258         * gdk/makefile.cygwin
5259         * gdk/win32/makefile.cygwin
5260         * gtk/makefile.cygwin: Updates.
5261
5262         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
5263         default values for fg and bg pixel as X11 does (0 and 1), not
5264         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
5265         Use 0 for pen width by default (treated as 1 anyway later, but for
5266         apps that might check the value in the GdkGC).
5267         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
5268         interface to gdk_gc_predraw and _postdraw.
5269
5270         * gdk/win32/gdkwin32.h
5271         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
5272
5273         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
5274         extraneous semicolon.
5275
5276         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
5277
5278         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
5279         not the Win32 bitspixel value.
5280
5281         * gdk/win32/gdkcc-win32.c:
5282         * gdk/win32/gdkcolor-win32.c 
5283         * gdk/win32/gdkprivate-win32.h
5284         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
5285         GDK object structure.
5286
5287 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
5288
5289         * docs/tutorial/gtk_tut_12.es.sgml (name): 
5290         * docs/tutorial/gtk_tut_it.sgml (name): 
5291         * docs/tutorial/gtk_tut_fr.sgml (name): 
5292         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
5293         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
5294
5295 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
5296
5297         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
5298           small changes.
5299
5300 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
5301
5302         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
5303         a bug here, never been here and never fixed anything ;(
5304         (don't segfault if tree->root_tree is NULL, which happens prior
5305         to widget realization, but puke instead).
5306
5307 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
5308
5309         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
5310         add the necessary tokens.
5311
5312         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
5313         (gtk_rc_style_to_style): copy thicknesses.
5314         (gtk_rc_init_style): apply thicknesses.
5315         (gtk_rc_parse_style): parse xthickness and ythickness.
5316
5317         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
5318
5319         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
5320         (gdk_window_new): 
5321         (_gdk_windowing_window_init): 
5322         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
5323         (gdk_pixmap_create_from_data): 
5324         (gdk_bitmap_create_from_data): 
5325         (gdk_pixmap_new): 
5326         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
5327         (gdk_image_new): 
5328         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
5329         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
5330         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
5331         (gdk_colormap_get_system): 
5332         (gdk_colormap_new): 
5333         * gdk/gdkwindow.c (gdk_window_init): 
5334         * gtk/gtkstyle.c (gtk_style_new):
5335         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
5336         * gdk/gdkpixmap.c (gdk_pixmap_init): 
5337         * gtk/gtkrc.c (gtk_rc_style_new):
5338         use g_object_new() instead of g_type_create_instance() which
5339         is a private function for fundamental type implementations.
5340
5341 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
5342
5343         * configure.in: Add check for db2html
5344
5345 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
5346
5347         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
5348         hack to set glib_debug_objects based on gtk_debug_flags.
5349
5350 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
5351
5352         * INSTALL.in: Update the Prerequisites section.
5353
5354         * Makefile.am demos/Makefile.am docs/Makefile.am
5355         docs/tutorial/Makefile.am gdk/x11/Makefile.am
5356         gdk/linux-fb/Makefile.am: Dist fixes
5357
5358 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
5359
5360         * NEWS: 10,000 foot view of 1.3.1 changes.
5361
5362 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
5363
5364         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
5365         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
5366         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
5367         gdk/x11/gdkmain-x11.c: 
5368
5369         Patch from George Lebl to add a GdkGrabStatus enumeration to use
5370         as a return value of gdk_*_grab(). Previously, we just
5371         returned the X11 values directly.
5372
5373 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
5374
5375         * gdk/x11/Makefile.am: Patch from George Lebl to 
5376         install all the headers in the right place.
5377
5378 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
5379
5380         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
5381           initial conversion to DocBook.
5382
5383 2000-07-04  Tor Lillqvist  <tml@iki.fi>
5384
5385         * README.win32: Improve a bit.
5386
5387         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
5388         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
5389         Alt+0nnn on the numpad (used to enter characters by numeric code
5390         from current DOS or ANSI codepage) working correctly, as in other
5391         Windows apps.
5392
5393         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
5394         same argument validity tests as in X11 version.
5395         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
5396
5397         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
5398         definitions in case missing from headers.
5399
5400         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
5401         destroy the window-specific cursor.
5402         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
5403         calling GetModuleHandle(NULL).
5404         (gdk_window_set_cursor): Reworked to always copy the passed cursor
5405         with CopyCursor before setting it as the window-specific
5406         cursor. It is OK for the caller to destroy the GdkCursor (and thus
5407         also its Windows cursor) after calling this function. Destroy any
5408         previous window-specific cursor.
5409
5410 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
5411
5412         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
5413         font charset is iso8859-1, not iso-8859-1.
5414
5415 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
5416
5417         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
5418         Use g_get_charset() instead of g_get_codeset().
5419
5420         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
5421         Comment out some strdup'ing functions to keep timj
5422         happy until we finish fighting this out.
5423
5424 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
5425
5426         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
5427         <= width or height.
5428
5429         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
5430         from 1.2 for parent/child states.
5431
5432         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
5433         of typos.
5434
5435         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
5436         event structures, replace with a generic axes field. Replace 
5437         deviceid/sourec with GdkDevice *device.
5438
5439         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
5440         to extract particular axis use value from event. (Also
5441         can be used for normal X/Y.)
5442
5443         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
5444         allow for arbitrary number of axes, namespace everything
5445         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
5446         everywhere.
5447
5448         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
5449         Get rid of the gdk_input_vtable setup if favor of simply
5450         defining the functions in gdkinput-none/gxi/xfree.c in
5451         a similar fashion to the way that the port structure is 
5452         done.
5453
5454         * gtk/gtkdnd.c: Fix fields of synthesized button press event
5455         for new event structures. 
5456
5457         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
5458         new device interfaces.
5459
5460 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
5461
5462         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
5463         set the initial text.
5464
5465         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
5466         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
5467         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
5468         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
5469
5470         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
5471         pango_layout_set_font_description to simplify.
5472
5473 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
5474
5475         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
5476         pango_layout_set_font_description to simplify.
5477
5478 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
5479
5480         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
5481         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
5482         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
5483
5484         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
5485         PANGO_PIXELS() macro.
5486
5487 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
5488
5489         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
5490         that returns a PangoContext owned by the widget and updated to
5491         match future changes in the widget. Also, make 
5492         gtk_widget_create_pango_layout() use this context. If we ever
5493         add a ::changed signal to PangoContext, this will make things
5494         much more convenient. 
5495
5496         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
5497         in the appropriate places instead of destroying the layouts and
5498         creating new ones.
5499
5500         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
5501         in a few strategic places.
5502
5503 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
5504
5505         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
5506         gtk_widget_size_request() on reparented child, if one. Otherwise,
5507         queue_resize() on the child never results in it getting size-requested
5508         at all.
5509
5510         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
5511         in option menus, so that (with luck) people won't copy it into
5512         their apps in the future.
5513
5514         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
5515         to gtk_option_menu_calc_size. This isn't perfect, but should fix
5516         a lot of problems with changing the size of the menu's menu
5517         items after adding it to the option menu.
5518
5519         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
5520
5521         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
5522         the text direction for a widget changes.
5523
5524         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
5525         ::direction_changed to get rid of various hacks.
5526
5527 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
5528
5529         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
5530         name.
5531
5532 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
5533
5534         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
5535         flag to the structure. Do not call XFreePixmap on pixmaps created
5536         by gdk_pixmap_foreign_new().
5537
5538 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
5539
5540         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
5541         value using GdkRGB functionality given GdkColormap and GdkColor.
5542         (name not final, waiting for inspiration.)
5543         
5544         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
5545         set the foreground/background of a GC using the GC's colormap
5546         and GdkRGB. (name not final, waiting for inspiration.)
5547
5548         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
5549         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
5550
5551         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
5552         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
5553         purely a function of the corresponding colormap. Make
5554         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
5555
5556         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
5557         gdk_pixbuf_*create_from_xpm_* in terms of
5558         gdk_pixbuf_new_from_xpm_data(), move into platform independent
5559         code.
5560
5561         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
5562         advantage of the new draw_rgb_32_image_dithalign.
5563
5564         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
5565
5566         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
5567         on each created GC.
5568
5569         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
5570
5571         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
5572         which we initialize from the drawable when the GC is created,
5573         if the drawable has a colormap.
5574
5575         * gdk/x11/gdkgc-x11.c: include string.h for memset.
5576
5577         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
5578
5579         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
5580
5581 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
5582
5583         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
5584         actually returning expose events, make sure to set
5585         the count field properly.
5586
5587         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
5588         accidentally reintroced bug which always cleared
5589         the graphics_exposures value. 
5590
5591 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
5592
5593         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
5594
5595 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
5596
5597         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
5598
5599 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
5600
5601         * docs/faq/gtk-faq.sgml: Start of Section 6.
5602
5603 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
5604
5605         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
5606         
5607         (Fixes problem with drawing childless frames. Pointed out
5608         by and a first patch from Anders)
5609         
5610         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
5611         compute a child_allocation, even if we don't have a child.
5612
5613         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
5614         Always chain to the parent's impl, even if we don't have a child.
5615
5616 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
5617
5618         * gdk/gdkrgb.c: If possible, create only a single shm segment and
5619         use multiple parts of it instead of creating a bunch of separate
5620         segments, since the maximum number of segments per system is not
5621         large. (This might be worth backporting to GTK+-1.2.x if we make a
5622         new release )
5623
5624         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
5625         structure in preparation for per-colormap GdkRGB.
5626
5627         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
5628         to False when we get EINVAL from shmget so that the caller of
5629         gdk_image_new can retry with a smaller segment size.
5630
5631 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
5632
5633         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
5634
5635 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
5636
5637         * configure.in: make the current version number 1.3.1 (binary age 0,
5638         interface age 0).
5639         
5640         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
5641         gtkcompat.h is all we want.
5642
5643         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
5644         GLib primitive types. fixed g_type_register_fundamental() argument
5645         ordering.
5646
5647         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
5648         compiles.
5649
5650         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
5651         object code cleanup, comment trigraph fixes, etc...
5652
5653 2000-06-23  Havoc Pennington  <hp@redhat.com>
5654
5655         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
5656         instead of making up a bogus name for first_para_mark
5657
5658         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
5659         0 as a context ID
5660
5661 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
5662
5663         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
5664
5665 2000-06-21  Havoc Pennington  <hp@pobox.com>
5666
5667         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
5668         we didn't check window->bg_pixmap != GDK_NO_BG.
5669
5670         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
5671         gdk-pixbuf
5672
5673 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
5674
5675         * docs/faq/gtk-faq.sgm: Move file to here.
5676           TODO: Update Makfile.am 
5677
5678 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
5679
5680         * docs/gtk-faq.sgm: Add Section 2
5681
5682 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
5683
5684         * docs/gtk-faq.sgm: New file. Start of DocBook
5685           version of the FAQ.
5686
5687 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
5688
5689         * configure.in (GDK_PIXBUF_MAJOR): Define version
5690         numbers for GDK_PIXBUF_*, as they get substituted
5691         into a header file. Need to consider versioning
5692         for gdk-pixbuf more carefully later.
5693
5694 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
5695
5696         Work with srcdir != builddir.   
5697         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
5698         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
5699         * demos/testpixbuf.c: Likewise.
5700         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
5701         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
5702         <gdk/x11/gdkx.h>.
5703         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
5704         "gdk-pixbuf.h".
5705         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
5706
5707 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
5708
5709         * TODO.xml: Change 1.4 version numbers to 2.0.
5710
5711 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
5712
5713         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
5714         fixups to GTK+ standard.
5715
5716 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
5717
5718         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
5719         gdk-pixbuf.
5720
5721         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
5722         fixups for GObject.
5723
5724         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
5725         gdk-pixbuf with GDK dependencies moved into GDK.
5726         
5727         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
5728         move gdk-pixbuf-loader here until GObject has signals.
5729
5730         * demos/: New directory of demos. Move demos from
5731         gdk-pixbuf here.
5732
5733         * demos/pixbuf-init.c: Small bit of code to check for
5734         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
5735         set GDK_PIXBUF_MODULEDIR appropriately.
5736
5737         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
5738         define which no longer makes sense.
5739
5740 2000-06-21  Havoc Pennington  <hp@redhat.com>
5741
5742         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
5743         gtk_get_default_language
5744
5745         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
5746         new function to get the default language
5747
5748         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
5749         s/gtk_text_view_style_values/gtk_text_style_values/
5750
5751         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
5752         Add a "language" field to tags.
5753
5754         (gtk_text_tag_set_arg): Fix bug in setting
5755         "bg_full_height_set" tag.
5756
5757 2000-06-21  Havoc Pennington  <hp@redhat.com>
5758
5759         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
5760         in the interfaces
5761
5762         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
5763         stuff instead when possible.
5764
5765         * gtk/gtktexttypes.h: Delete some unused constants
5766
5767         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
5768         testtextbuffer.c: use glib instead of custom unicode routines
5769
5770 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
5771
5772         * docs/es/: Removed mistakenly added generated sgml
5773
5774         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
5775         Remove outdated info files.
5776
5777         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
5778         Moved tutorial files into subdir
5779
5780         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
5781         subdir.
5782
5783         * docs/man/gtk_button.pod: Remove. (contents will be
5784         integrated into gtk-reference button page.)
5785
5786         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
5787         docs/faq/Makefile.am: Adjust for new organization
5788
5789 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
5790
5791         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
5792         not $(MKINSTALLDIRS)
5793
5794 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
5795
5796         * gtk/testgtk.c (create_text): Finish the job Elliot started
5797         of removing font setting test for text widget. (Since text widget
5798         and GdkFont are not deprecated, and cause portability problems.)
5799
5800 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
5801
5802         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
5803         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
5804         Remove use of libunicode in favor of new GLib functions.
5805
5806         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
5807         nano-x, framebuffer. The X11 include is just a hack until we get
5808         the necessary functions in gdkcolor.h, so there is no reason to
5809         add other includes of platforms.
5810
5811         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
5812         window bigger than the screen change.
5813
5814         * gtk/testgtk.c: Revert some random changes from Elliot
5815         that had no particular point and were causing testgtkrc
5816         not to function correctly.
5817         
5818         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
5819         because GdkSegment and GdkRegionBox have the same fields,
5820         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
5821         results in clearer code.
5822
5823         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
5824         gdk_input_translate_coordinates): Fix missed GdkObjectification
5825
5826 2000-06-18  Elliot Lee  <sopwith@redhat.com>
5827
5828         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
5829         * gtk/gtk{plug,socket}.h: Missed commits from previous.
5830
5831 2000-06-20  Havoc Pennington  <hp@redhat.com>
5832
5833         * modules/linux-fb/Makefile.am: Make this compile
5834         without framebuffer enabled
5835
5836         * gdk/linux-fb/Makefile.am: Add conditional to not build
5837         framebuffer unless specified in configure
5838
5839         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
5840         the size of the target instead of source if -1 was passed for
5841         width/height
5842
5843         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
5844         width/height confusion.
5845
5846 2000-06-19  Havoc Pennington  <hp@redhat.com>
5847
5848         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
5849         GDK_DRAWABLE_XID. In the future, we probably want to make it
5850         faster with G_DISABLE_CHECKS turned on.
5851
5852 2000-06-14  Havoc Pennington  <hp@redhat.com>
5853
5854         * gdk/Makefile.am: add gdkpixmap.c
5855
5856         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
5857         s/gdk_image_init/_gdk_windowing_image_init
5858
5859         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
5860         ref/unref
5861
5862         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
5863
5864         * gdk/gdkcompat.h: remove GdkWindowType compat, since
5865         GdkWindowType is now non-deprecated; 
5866         change gdk_window_get_type() compat to be
5867         gdk_window_get_window_type().
5868
5869         * gdk/gdkdnd.h: make GdkDragContext a GObject.
5870
5871         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
5872         virtual GObject. Make all functions call into the vtable.
5873         Move gdk_image_put() guts in here. Remove GdkDrawableType
5874         and gdk_drawable_get_type(), these are now GdkWindow-specific.
5875         draw_image, get_depth, get_size, set_colormap, get_colormap,
5876         get_visual added to the vtable.
5877         
5878         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
5879         GObject. Virtualize everything. 
5880         (gdk_gc_new_with_values): remove check for destroyed window,
5881         because now GdkWindow::create_gc will check this.
5882         (gdk_gc_set_values): New function to set GC values, this 
5883         was already implemented but wasn't in the header
5884
5885         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
5886
5887         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
5888         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
5889         remove _gdk_window_class; add _gdk_window_impl_get_type() and
5890         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
5891         _gdk_windowing_window_init, rename gdk_image_init to
5892         _gdk_windowing_image_init.
5893         
5894         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
5895         (gdk_draw_layout): Remove check for destroyed window, 
5896         because all the drawable methods already check it.
5897         
5898         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
5899         Add gdkpixmap.c which contains implementation of GdkDrawable
5900         virtual table (by chaining to a platform-specific implementation
5901         object).
5902         
5903         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
5904         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
5905         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
5906         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
5907         GdkColormapPrivate. 
5908
5909         * gdk/gdktypes.h: #include <glib-object.h>
5910
5911         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
5912         Move most functionality to platform-specific implementation
5913         object. GdkWindow itself now handles the backing store, then
5914         chains to the platform-specific implementation.
5915         (gdk_window_get_window_type): return GdkWindowType of the window.
5916         (gdk_window_peek_children): New routine, returns the children of 
5917         a GdkWindow
5918         (gdk_window_get_children): Was in X11-specific code and did 
5919         XQueryTree. Changed to simply return a copy of window->children; 
5920         so it can go in cross-platform code.
5921         
5922         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
5923
5924         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
5925         GdkColormap; just changed to use the new private data instead
5926         of casting to GdkColormapPrivate.
5927
5928         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
5929         gdk_cursor_new().
5930
5931         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
5932         (private data member in the GObject). 
5933         (xdnd_manager_source_filter): Function had broken 
5934         error handling, fix it (use gdk_error_trap_push).
5935
5936         * gdk/x11/gdkdrawable-x11.c: This file now implements
5937         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
5938         base class is purely for the convenience of the X port,
5939         and not part of the interface to cross-platform GDK.
5940
5941         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
5942         
5943         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
5944         specific to X, and returned by the create_gc virtual method
5945         of GdkDrawableImplX11. 
5946         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
5947         rather than gchar, this was also changed in the GdkGC vtable.
5948         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
5949         mask is 0, return immediately, instead of checking every flag.
5950         This is faster, and keeps us from segfaulting if values is NULL
5951         and the mask contains some nonzero flags.
5952
5953         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
5954         GdkWindow.
5955
5956         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
5957         GdkWindowPrivate is gone.
5958
5959         * gdk/x11/gdkim-x11.c: rename things that got renamed.
5960
5961         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
5962         remove the image_put stuff that got transferred to GdkDrawable.
5963         
5964         * gdk/x11/gdkinput.c: renamings
5965
5966         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
5967
5968         * gdk/x11/gdkpixmap-x11.c: GObject conversion
5969
5970         * gdk/x11/gdkprivate-x11.h: indentation fixes
5971
5972         * gdk/x11/gdkproperty-x11.c: renamings
5973
5974         * gdk/x11/gdkselection-x11.c: renamings
5975
5976         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
5977         implements the platform-specific "impl" object.
5978         Moved gdk_window_get_children to gdk/gdkwindow.c
5979
5980         * gdk/x11/gdkx.h: Remove all the private structs and private datas
5981         that no longer exist. Add declaration of GdkGCX11 object here.
5982         Fix all the macros to still work. 
5983
5984         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
5985         GdkDragContext from the boxed types since they are now GObjects.
5986
5987         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
5988         moved xthickness/ythickness into the instance. GtkStyleClass
5989         functions are now in the standard vtable for GtkStyle, so you have
5990         to create a GObject subclass to write a theme engine.
5991         (gtk_style_copy): fixed a leaked PangoFontDescription
5992         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
5993         can be the standard GObject function.
5994         
5995         * Throughout GTK:
5996         s/style->klass->[xy]thickness/style->[xy]thickness
5997         s/pango_layout_unref/g_object_unref/
5998
5999         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
6000         
6001         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
6002         accessing GDK internals.
6003
6004         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
6005         accessing GDK internals.
6006
6007 2000-06-18  Elliot Lee  <sopwith@redhat.com>
6008
6009         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
6010
6011         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
6012         problem by calculating event position relative to the trough
6013         rather than the slider.
6014         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
6015
6016         * gdk/gdkgc.h: Add GDK_NOR.
6017
6018         * configure.in, Makefile.am: Add modules top level dir
6019         * configure.in: Only use pangox library if building x11 target.
6020         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
6021
6022 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
6023
6024         * gtk/gtkcolorsel.c: Change private class member to be named
6025         private_data throughout the file.
6026
6027         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
6028         private_data to avoid clashing with keyword.
6029
6030 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
6031
6032         * gdk/gdkdnd.h: Add comment to remove warning.
6033
6034 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
6035
6036         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
6037         Byelorussian language; changed the Makefile and file names 
6038         to reflect that.
6039
6040 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
6041
6042         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
6043         rather than gdk_window_hide; this makes things work
6044         correctly if the window is programmatically hidden while
6045         iconified.
6046
6047 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
6048
6049         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
6050         cut and paste typo where wrong pixmap was being
6051         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
6052
6053 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
6054
6055         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
6056         Add helper function to compute format / bytes 
6057         relationship. Use in a couple places to fix up
6058         errors which assume 8 * format.
6059
6060         * gtk/gtkselection.c (gtk_selection_request): Use 32
6061         rather than 8 * sizeof (GdkAtom), to work correctly
6062         on Alpha.
6063
6064 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
6065
6066         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
6067         libgtk.la
6068         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
6069         versions
6070
6071         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
6072         checking macros return NULL since the function has a return value.
6073
6074 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
6075
6076         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
6077         GTK+ from building at all.
6078
6079         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
6080
6081 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
6082
6083         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
6084         gtk/Makefile.am: make it possible to configure gtk for different
6085         targets on the same platform. The library name is now 
6086         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
6087         flag. Only the x11 target compiles right now.
6088         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
6089         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
6090         * gdk/nanox/gdk*generic*: delete generic region code.
6091         * gdk/linux-fb/gdk*generic*: delete generic region code.
6092         * README.nanox: update information.
6093         
6094 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
6095
6096         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
6097         prepend not append. (Pointed out by Brett Hall.)
6098
6099 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
6100
6101         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
6102
6103 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
6104
6105         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
6106         need this later, and this makes sure that the atexit for
6107         glib gets called after that for GDK, so atexits are
6108         properly ordered for object leak checking.
6109
6110         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
6111
6112         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
6113         pango_x_shutdown_display()
6114
6115         * gtk/simple.c (main): Close window on destroy.
6116
6117 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
6118
6119         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
6120         to treat initial creation different from setting with 
6121         regards to the graphics-exposures parameter, so add a parameter
6122         indicating whether this is initial or not.
6123
6124 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
6125
6126         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
6127         to sort of work by adding an extra return_exposes arg
6128         to gdk_event_translate() - it might be better to simply
6129         deprecate the function altogether and force people to rewrite
6130         without it. gdk_window_scroll() handles most of it, and where
6131         gdk_window_scroll() doesn't work, simply redrawing more does.
6132
6133         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
6134         assertion.
6135
6136         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
6137
6138         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
6139         bunch of pretty much useless /* Print debugging info */ comments 
6140         which had drifted away from the code they were commenting.
6141
6142 2000-06-02  Havoc Pennington  <hp@pobox.com>
6143
6144         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
6145         is in working order.
6146         
6147         * gtk/testtext.c: Change to reflect anonymous mark API
6148
6149         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
6150
6151         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
6152         field, which was unused.
6153
6154         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
6155         saves some typing.
6156
6157         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
6158
6159         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
6160         flag on the insertion point and selection bound
6161
6162         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
6163         make mark-manipulation functions take a GtkTextMark* instead of a
6164         mark name.
6165         
6166         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
6167         GtkTextMarkBody; will be used to detect attempts to delete
6168         the permanent marks (insert and selection bound)
6169
6170         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
6171
6172 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
6173
6174         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
6175         flag to on.
6176
6177         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
6178         Honor DOUBLE_BUFFRED_FLAG
6179
6180         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
6181         function to set the DOUBLE_BUFFERED flag.
6182
6183         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
6184         or not exposes done on the widget should be double-buffered.
6185
6186         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
6187         to be what would be expected. (Fixes problem with a
6188         g_return_if_fail() validating a TextDirection enumeration)
6189
6190 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
6191
6192         * gtk/gtkwidget.c: Remove all references to 
6193         offscreen flag which was no longer used.
6194
6195         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
6196
6197         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
6198         for non-null label_widget->parent.
6199
6200         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
6201         which no longer was used.
6202
6203         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
6204
6205         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
6206         for null arguments.
6207
6208         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
6209         check for destroyed windows.
6210
6211 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
6212
6213         * gtk/gtkimmulticontext.c: Add a finalize method and unref
6214         the slave context there.
6215
6216         * gtk/gtkinvisible.[ch]: Make reference counting behavior
6217         identical to GtkWindow.
6218
6219 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
6220
6221         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
6222         pangox to here, so we can write them independent of rendering
6223         system, using GDK primitives.
6224
6225         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
6226         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
6227         since we have a rendering-system independent implementation in
6228         terms of draw_glyphs().
6229         
6230         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
6231         function to render a single line.
6232
6233         * gdk/x11/gdkpango.c: Move the guts of this file mostly
6234         into ../gdkpango.c, which simplifies things, since we
6235         don't have to deal with raw X gc's.
6236
6237 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
6238
6239         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
6240         get the logical attributes for a given GtkTextLine.
6241
6242 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
6243
6244         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
6245         g_locale_get_codeset() to g_get_codeset() change.
6246
6247 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
6248
6249         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
6250         descriptions.
6251
6252         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
6253         the entry.
6254
6255         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
6256         redoing (vastly simplifying) for Pango. Still needs quite
6257         a bit of work. (Size selection is currently poor. List of 
6258         predefined sizes is not a good idea, since all of these
6259         sizes won't necessarily be distinct.)
6260
6261 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
6262
6263         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
6264         CODESET results for LANG=C.
6265
6266 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
6267
6268         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
6269         which takes a stringized pango font description;
6270         ignore the older 'font' and 'fontset' declarations.
6271
6272         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
6273         field with a GdkFont derived via gdk_font_from_description(),
6274         for compatibility. (Should we just remove it entirely?
6275         Probably too much compatibility breakage, but people
6276         should be migrating to the new Pango stuff as quickly
6277         as possible.)
6278
6279 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
6280
6281         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
6282
6283 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
6284
6285         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
6286         redoing; there are some bugs in size allocation right
6287         now, the semi-existant distinction between header / day
6288         fonts was removed, but, with Pango, could actually
6289         be made functional in a nice way.
6290         
6291         * gtk/testcalender: Move calender from examples into this
6292         directory as a test program. (We really need to restrcture
6293         testgtk into a whole directory full of tests for every
6294         widget or functionality group, separated into multiple .c
6295         files.)
6296
6297 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
6298
6299         * gtk/testgtk.c (file_exists): Fix stupid typo that
6300         was keeping RC file from being loaded.
6301
6302         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
6303         RC file font code.
6304
6305 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
6306
6307         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
6308         Add function to load a GdkFont from a PangoFontDescription.
6309
6310 2000-05-29  Tor Lillqvist  <tml@iki.fi>
6311
6312         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
6313         variable should be of type GdkEventPrivate.
6314
6315 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
6316
6317         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
6318         to have any widget for the label, use a GtkLabel widget
6319         to display the text. (Based partially on a patch from
6320         Anders Carlson.)
6321
6322         (Quite a bit of code reorganization - strip 90% of the
6323         guts out of gtkaspectframe and add a single virtual
6324         func to GtkFrameClass - compute_child_allocation.)
6325
6326 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
6327
6328         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
6329         (Removed clist->row_center_offset field because caching
6330         it wasn't saving time or code, added private function
6331         _gtk_clist_create_cell_layout()).
6332
6333 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
6334
6335         * gtk/gtkaccellabel.c: Pangoized.
6336
6337         * gtk/[hv]ruler.c: Pangoized
6338
6339 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
6340
6341         * gtk/gtkfilesel.c (gtk_file_selection_init):
6342         Use gtk_clist_set_column_auto_resize() to remove need
6343         need for manual column width computations.
6344
6345 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
6346
6347         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
6348         ensuring Pango correctness, and considerably simplifying the
6349         code.
6350         
6351         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
6352
6353         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
6354         getting of numbers of lines.
6355
6356         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
6357         to the actual requested width of the lable, not to the wrap
6358         width we set.
6359
6360         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
6361
6362         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
6363           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
6364
6365         * gtk/gtktextview.c: Fix structure inheritance.
6366
6367         * gtk/gtkprogressbar.c: Pangoize.
6368
6369 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
6370
6371         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
6372         in a function.
6373
6374         * gtk/gtktextlayout.c (find_display_line_above): Fixed
6375         bug with computing line tops.
6376
6377         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
6378
6379 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6380
6381         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
6382         and y_offset coordinates to do what we need now. (The offset between
6383         buffer and layout coordinates has been reintroduced, but is a 
6384         bit different than before.)
6385
6386         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
6387         handle the adjustments ourselves, and scroll as necessary using
6388         the new gdk_window_scroll().
6389         
6390         The advantage of this is that when we are incrementally revalidating,
6391         we are essentially rearranging things around the visible portion
6392         of the screen. With the old setup, the visible portion of the
6393         screen was moved around in the layout, so scrolling and redrawing
6394         to track that caused jumping of the display. Since we now
6395         control the scrolling ourselves, we can suppress this and
6396         only redraw when things actually change.
6397
6398 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
6399
6400         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
6401         the region not just redisplay it after-all, since we store the
6402         cursors in the LineDisplay. (Ugly interactions here between
6403         GtkLayout and GtkTextBTree here.)
6404         
6405         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
6406
6407 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
6408
6409         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
6410         Added function to scroll contents of a window while keeping the
6411         window constant. Works by XCopyArea or guffaw-scrolling depending
6412         on the details of how the window is set up. (guffaw-scrolling
6413         still needs to be filled in.)
6414
6415 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
6416
6417         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
6418         move the debugging that was tied to a global variable
6419         to that.
6420
6421         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
6422
6423         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
6424         validated flag, in line data instead of setting height/width to
6425         -1. This allows us to perform operations with partially invalid
6426         buffer (using the old size for invalid lines) and thus to do
6427         incremental vaidation. Keep height/width aggregates up to date
6428         when deleting text and rebalancing the tree.
6429
6430         * gtk/gtktextbtree.[ch]: Add functions validate a line
6431         (gtk_text_btree_validate_line), and to validate up
6432         to a number of pixels (gtk_text_btree_validate).
6433
6434         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
6435         that indicates that something is changed and a revalidation
6436         pass is needed. Change ::need_repaint to ::changed, and
6437         make it take old and new yranges instead of a rectangle.
6438
6439         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
6440         the line_data_destroy() function from 
6441         gtk_text_btree_add_view() to a virtual function in 
6442         GtkTextLayout
6443
6444         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
6445         since we are handling partial repaints in a different fashion
6446         now.
6447
6448         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
6449         of the selection instead of queueing a repaint on the
6450         entire widget.
6451
6452         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
6453         get_selection_bounds() down to btree, make the function
6454         in buffer a wrapper around the btree function.
6455
6456         * gtk/gtktextlayout.[ch]: Add functions to check if the
6457         layout is valid and to recompute either a range of pixels
6458         aroudn a line or a certain total number of pixels.
6459
6460         * gtk/gtktextlayout.[ch]: Cache a single line display;
6461         now that we only redraw the needed portions, the hit rate
6462         for this cache is quite high.
6463         
6464         * gtk/gtktextview.[ch]: Keep track of the first paragraph
6465         on the screen so that when re-laying-out the buffer, we can
6466         keep the same place. This requires connecting to ::value_changed
6467         on the adjustments
6468
6469         * gtk/gtktextview.[ch]: Add idle functions to revalidate
6470         the buffer after we receive an ::invalidated signal.
6471         
6472 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
6473
6474         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
6475         to max of allocation and layout size, not just to the
6476         layout size.
6477
6478         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
6479         Invalidate window so it gets redrawn properly.
6480
6481         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
6482         to mean the entire window.
6483
6484         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
6485         into public header.
6486
6487 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6488
6489         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
6490         to get the name of a mark.
6491
6492         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
6493         to find the paragraph from a y position.
6494
6495 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
6496
6497         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
6498         nodes have width/height >= 0, not > 0.
6499
6500 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
6501
6502         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
6503         Add a size_only flag, so when we only need the size, we don't create
6504         useless appearance attributes.
6505
6506         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
6507         duplicate setting of font description.
6508
6509         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
6510
6511 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
6512
6513         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
6514         EXTRA_DIST. It does not work well when the file that
6515         everything depends on is not in the tarball.
6516
6517 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
6518
6519         * gtk/testgtk.c: Some hacks and fixes so that it basically
6520         works when not sitting in the GTK+ build tree.
6521
6522 2000-05-03  Havoc Pennington  <hp@redhat.com>
6523
6524         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6525         Properly determine the ordering of the tag root and the current
6526         line within the tree. Previous algorithm only worked if the tag
6527         root's immediate parent was the common root of both the current
6528         line and the tag root.
6529
6530 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
6531
6532         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
6533         alignment.
6534
6535         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
6536         the widget text directional dynamically.
6537
6538         * gtk/gtktextview.[ch]: Added functions to get and set default
6539         wrap mode.
6540
6541 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
6542
6543         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
6544         in cursor location computation.
6545
6546 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
6547
6548         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
6549         vadjusment values properly when layout gets smaller.
6550
6551         * gtk/gtktextview.c (need_repaint_handler): Areas being
6552         passed in are far completely inaccurate, and sometimes
6553         too small, so, for now, just queue a redraw on the
6554         whole visible region.
6555
6556 2000-04-25  Havoc Pennington  <hp@redhat.com>
6557
6558         * gtk/gtktextbtree.c (summary_destroy): new function to 
6559         destroy tag summary nodes
6560         (gtk_text_line_next_could_contain_tag): this function was 
6561         totally broken if the line passed in wasn't below the tag
6562         root. Fix it.
6563         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
6564         "wildcard" case, we have to do a linear scan. Blah.
6565         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
6566         we have to do the linear scan
6567         (tag_removed_cb): When a tag is removed from the tag table, 
6568         remove the GtkTextTagInfo node from the btree.
6569         (gtk_text_btree_spew): Implement the spew function, for 
6570         our debugging pleasure.
6571
6572 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
6573
6574         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
6575         a problem with referring to the wrong buffer.
6576
6577         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
6578
6579         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
6580         font description to gtk_style_new() - otherwise things
6581         don't work without a .gtkrc file.
6582
6583         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
6584         tags table if we create it ourself, too.
6585
6586         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
6587         it was conflicting with XKB modifiers.
6588
6589         * gtk/gtktextview.[ch]: Add simple support for 
6590         GtkIMContext.
6591
6592 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
6593
6594         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
6595         with deletion from last commit.
6596
6597 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
6598
6599         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
6600         in the context from the current locale.
6601         
6602         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
6603         context, not hardcoded value.
6604
6605         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
6606         not logical.
6607
6608 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6609
6610         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
6611         attributes - that doesn't handle partial-glyph selection
6612         properly. Instead use new pango_layout_line_get_x_ranges()
6613         functionality to draw the selection.
6614
6615         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
6616         now properly handles out-of-range coordinates.
6617
6618         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
6619
6620         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
6621         public.
6622
6623         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
6624         for paragraphs opposite to the base direction of the widget.
6625
6626         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
6627
6628         * gtk/gtktextlayout.c: Don't split segments on marks, since that
6629         causes Arabic words to reshape as you cursor through.
6630
6631         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
6632         cursor position when moving vertically with the arrow keys and
6633         scrolling with page-up/page-down. (Arrow keys save only the X,
6634         scrolling saves both X and Y.)
6635
6636         This means you can line-up / line-down or page-up / page-down
6637         without losing your place, and also that moving vertically
6638         with the cursor keys keeps the same X position, not the same
6639         character count:
6640
6641         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
6642         arrow keys move by display lines, not paragraphs.
6643
6644 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
6645
6646         * gtk/gtklayout.c: Make sure that the bin window is at least
6647         as big as the allocation. (Should we also make sure that the
6648         bin window is big enough to completely cover widget->window?)
6649
6650         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
6651         function to get the onscreen rectangle.
6652
6653         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
6654         for offsets in window coordinates.
6655
6656 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
6657
6658         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
6659         confusion.
6660
6661         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
6662         from the widget direction.
6663
6664         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
6665         Add a "direction" attribute.
6666
6667         * gtk/gtktextview.c: global s/tkxt/text_view/.
6668
6669         * gtk/testtext.c: Added long block of text in Arabic, to test out
6670         the direction attributes. (Some problems with the shaping system
6671         for arabic become obvious - like the fact the cursor splits words
6672         into unjoined pieces.)
6673
6674 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
6675
6676         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
6677
6678         * gtk/gtktextlayout.c: Fix up alignment.
6679
6680         * gtk/testtext.c: Add some tests for centering, wrapping.
6681
6682 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
6683
6684         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
6685         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
6686         If we wrote GTK+-specific layout-render function this could just replace
6687         the draw_layout() operation in the vtable.
6688
6689         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
6690         pango_layout_get_cursor_pos() and use that function.
6691
6692         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
6693         is a non-static symbol.
6694
6695         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
6696         with gtk_text_btree_find_line_by_y()
6697
6698         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
6699         renderer that handles GtkTextAppearance attributes.
6700
6701         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
6702
6703           - Move the values in the style that don't affect geometry into a
6704             GtkTextAppearance structure.
6705           - Change underline to take a PangoUnderline and "font" a string
6706             representation of a font description
6707           - Add a "font_desc" attribute which takes a FontDescription structure.
6708
6709         * gtk/gtktextlayout.[ch]:
6710
6711           - Get rid of the display-line list per each line. Instead, we
6712             generate, on demand, a GtkTextLineDisplay structure which]
6713             contains a PangoLayout * and other necesary information
6714             (offsets, cursor locations) for displaying a paragraph.
6715           - Get rid of the code to wrap lines, create display chunks,
6716             etc. Instead, we just go through a paragraph and convert
6717             it into the necessary inputs to a PangoLayout.
6718           - Implement a new attribute type, GtkTextAttrAppearance. This
6719             holds a GtkTextAppearance, and is used to pass colors, 
6720             stipple, etc, through from the layout to the display without
6721             having to use lots and lots of individual attributes.
6722           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
6723             in terms of PangoLayout functions.
6724         
6725         * gtk/gtktextview.c: 
6726          
6727           - Handle passing the necessary PangoContext to the layout
6728           - Some fixups in painting to deal with the automatic backing store
6729             and offsetting of GTK+-1.4
6730           - Add a style_set handler so that the default style reacts
6731             properly to theme changes.
6732         
6733         * gtk/gtktext?*.[ch]: Random code-style fixes.
6734
6735         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
6736
6737 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
6738
6739         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
6740         in original form preparatory to Pango-ization and gdkimcontext-ization.
6741
6742 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
6743
6744         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
6745         so that we can derive from gtkimcontext in language bindings properly.
6746
6747 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
6748
6749         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
6750         Add a compose table including (almost) all the compose combinations
6751         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
6752         data in the XIM implementation.
6753
6754         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
6755         Moved functions to convert keyvalues from and to unicode here from
6756         the win32 port and made them public.
6757
6758 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
6759
6760         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
6761
6762 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
6763
6764         * gtk/gtkimcontext.[ch]: Base class for new input context system
6765
6766         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
6767         the real input context implementation to be loaded from modules
6768         and switched on the fly.
6769
6770         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
6771         context that just does direct keysymbol => unicode translation.
6772
6773         * gtk/gtkentry.[ch]: Start switching editing over to using
6774         GtkInputContext. (No handling of preedit yet.)
6775
6776 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
6777
6778         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
6779         many substitutions. (klass should not be subsituted.)
6780
6781 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
6782
6783         * configure.in: Add checks for Pango
6784
6785         * configure.in docs/Makefile.am: Add test for sgml2html
6786         and allow 'make dist' without building html, but print out
6787         warnings in that case. (For making snapshots)
6788
6789         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
6790         Add Pango libraries and C flags
6791
6792         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
6793         Add function (gdk_draw_layout) to draw a pango layout.
6794
6795         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
6796         for getting Pango contexts for GDK.
6797
6798         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
6799
6800         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
6801         editing.
6802
6803         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
6804         keysym => unicode translations. More languages can be added
6805         here, but real input-method support is needed.
6806
6807         * docs/Changes-1.4.txt: Added note about entry behavior.
6808         
6809         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
6810         to set the reading direction for a widget and the global direction.
6811         Add test which allows toggling the global direction. Two private
6812         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
6813
6814         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
6815           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
6816
6817         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
6818
6819         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
6820         underlining now handled by Pango.
6821
6822         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
6823         to RCStyle and Style. (Having both this and the old font name and GdkFont 
6824         is temporary.)
6825
6826         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
6827         convenience functions for creating contexts and layouts for widgets.
6828
6829         * gtk/testgtk.c: Enhance label tests with multilingual labels.
6830
6831 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
6832
6833         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
6834         titles to be active, even if they aren't visible.
6835         (gtk_clist_column_titles_passive):  Ditto.
6836
6837 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
6838
6839         * gtkmenu.c:
6840         * gtkmenu.h:
6841         * gtktypeutils.h: Spelling/grammar fixes in comments.
6842
6843 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
6844
6845         * gdk/nanox/*.h: add missing header files.
6846
6847 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
6848
6849         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
6850         send_event to TRUE.
6851         (gtk_drawing_area_size): queue a resize.
6852
6853 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
6854
6855         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
6856         the handlers, also invalidate them. bug nailed down by Karl Nelson
6857         <kenelson@ece.ucdavis.edu>.
6858
6859 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
6860
6861         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
6862         "(nil)" foundries, patch from Grigorios Magklis.
6863
6864         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
6865         on non-available fonts, based on a patch by Grigorios Magklis
6866         <maglis@cs.rochester.edu>.
6867
6868 2000-05-18  Elliot Lee  <sopwith@redhat.com>
6869
6870         * gdk/x11/gdkregion-generic.c: If a region does not have any
6871         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
6872         instead of GDK_OVERLAP_RECTANGLE_IN.
6873
6874 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
6875
6876         * gtk/gtklayout.c (gtk_layout_map): Remove references to
6877         OFFSCREEN, as it is no longer necessary.
6878
6879 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
6880
6881         * gtk/gtkcolorsel.c: Patch from David Santiago
6882         <mrcooger@cyberverse.com> to change things so that the 
6883         indicator of the active palette entry is done independently,
6884         not via the focus, since it should always be visible.
6885
6886 2000-05-17  Tor Lillqvist  <tml@iki.fi>
6887
6888         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
6889         refcount leaks as in the X11 backend.
6890
6891         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
6892         cosmetics.
6893
6894         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
6895         backend. Add _gdk_windowing_window_destroy().
6896
6897         * gtk/gtkcolorsel.c: Include correct backend-specific header.
6898         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
6899         either, but these probably do exist on nanox?)
6900         
6901         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
6902         which isn't necessarily defined by <math.h>.
6903
6904         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
6905         ancestry past GtkObject.
6906
6907         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
6908         from DLL on Win32.
6909
6910         * gtk/gtk.def: Update corresponding to recent changes.
6911
6912         * gtk/makefile.{cygwin,msc}: Updates.
6913
6914 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
6915
6916         * docs/Changes-1.4.txt: A bit of editing.
6917
6918         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
6919         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
6920         to clear the update area for the window, and clear it
6921         when hiding a window.
6922
6923         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
6924         if window destroyed.
6925
6926         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
6927
6928         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
6929         gdk_window_destroy() to the generic code, since there was a lot of 
6930         window-system-independent logic it in. Add a function:
6931         
6932          _gdk_window_destroy() 
6933
6934         to the internal API to destroy a window without unreferencing it.
6935         Add a function:
6936
6937          _gdk_windowing_window_destroy()
6938
6939         That does the windowing-system-dependent part of destroying 
6940         the window.
6941
6942 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
6943
6944         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
6945
6946 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
6947
6948         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
6949         Make gtk_widget_shape_combine_mask() keep a reference count on
6950         the pixmap since it keeps it around.
6951
6952 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
6953
6954         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
6955         leak.
6956
6957         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
6958         leak with event filters.
6959
6960 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
6961
6962         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
6963         signal handlers with the right data arguments. (Fixes
6964         some warnings when a widget was repeatedly set as a drag
6965         destination.)
6966
6967         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
6968         window so we can avoid avoid setting the DND properties on the
6969         toplevel window repeatedly.
6970
6971 2000-05-13  Tor Lillqvist  <tml@iki.fi>
6972
6973         * gdk/win32/gdkwin32.h: Define more message types missing from
6974         mingw headers.
6975
6976         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
6977         call gdk_window_destroy_notify(). It was never called. This
6978         probably meant that the GdkWindow was never freed. Thanks Owen for
6979         noticing (!).
6980
6981         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
6982         window as destroyed before calling DestroyWindow(). DestroyWindow()
6983         causes a call to the window procedure (gdk_WindowProc), which
6984         calls gdk_event_translate(), which calls
6985         gdk_window_destroy_notify(), which gets confused unless the window
6986         is set as destroyed.
6987
6988         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
6989         this function to indicate it's win32 only. Put inside #ifdef
6990         G_ENABLE_DEBUG.
6991
6992         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
6993         debugging function. (gdk_event_translate:) Add a default branch
6994         that uses the above function to print debug messages with all
6995         Windows messages symbolically.
6996
6997         * gdk/win32/gdkprivate-win32.h: Declare it, and
6998         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
6999
7000 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
7001
7002         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
7003         public header file.
7004
7005 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
7006
7007         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
7008
7009         * gtk/gtktext.c: made the adjustments no-construct args, simply
7010         provide default adjustments.
7011         (gtk_text_destroy): release adjustments.
7012
7013         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
7014         adjustment argument non-construct.
7015
7016         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
7017         instead of in finalize.
7018         (gtk_progress_get_text_from_value): 
7019         (gtk_progress_get_current_text): 
7020         (gtk_progress_set_value): 
7021         (gtk_progress_get_percentage_from_value): 
7022         (gtk_progress_get_current_percentage): 
7023         (gtk_progress_set_percentage): 
7024         (gtk_progress_configure): ensure an adjustment is present.
7025
7026 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
7027
7028         * gtk/gtkcolorsel.[hc]:
7029         * gtk/gtkcolorseldialog.[hc]:
7030         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
7031         their parent implementation, use bit fields for boolean values, don't
7032         create unused widgets, usage of glib types, braces go on their own
7033         lines, function argument alignment, #include directives etc. etc. etc..
7034
7035         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
7036
7037 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
7038
7039         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
7040
7041         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
7042         of NULL.
7043
7044         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
7045         to freed data.
7046         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
7047
7048         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
7049         to NULL when the toplevel is getting destroyed.
7050         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
7051         (gtk_menu_destroy): 
7052         (gtk_menu_init): store the information of whether we have to
7053         readd the initial child ref_count during destruction in a new
7054         GtkMenu field needs_destruction_ref_count.
7055
7056         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
7057         here, those reading: learn from my mistake! ;)
7058         in order for set_?adjustment to support a default adjustemnt if
7059         invoked with an adjustment pointer of NULL, the code read (pseudo):
7060         if (v->adjustment) unref (v->adjustment);
7061         if (!adjustment) adjustment = adjustment_new ();
7062         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
7063         now imagine the first unref to actually free the old adjustment and
7064         adjustment_new() creating a new adjustment from the very same memory
7065         portion. here, the latter comparision will unintendedly fail, and
7066         all hell breaks loose.
7067         (gtk_viewport_set_hadjustment):
7068         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
7069         after unreferencing it.
7070
7071         * gtk/gtkcontainer.[hc]: removed toplevel registration
7072         functions: gtk_container_register_toplevel(),
7073         gtk_container_unregister_toplevel() and
7074         gtk_container_get_toplevels() which had wrong semantics
7075         anyways: it didn't reference and copy the list.
7076
7077         * gtk/gtkwindow.c: we take over the container toplevel registration
7078         bussiness now. windows are registered across multiple destructions,
7079         untill they are finalized. the initial implicit reference count
7080         users are holding on windows is removed with the first destruction
7081         though.
7082         (gtk_window_init): ref & sink and set has_user_ref_count, got
7083         rid of gtk_container_register_toplevel() call. add window to
7084         toplevel_list.
7085         (gtk_window_destroy): unref the window if has_user_ref_count
7086         is still set, got rid of call to
7087         gtk_container_unregister_toplevel().
7088         (gtk_window_finalize): remove window from toplevel list.
7089         (gtk_window_list_toplevels): new function to return a newly
7090         created list with referenced toplevels.
7091         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
7092
7093         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
7094         adjustment a non-construct arg.
7095         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
7096         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
7097         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
7098
7099         * gtk/gtkrange.c: added some realized checks.
7100         (gtk_range_destroy): get rid of the h/v adjustments in the
7101         destroy handler instead of finalize. remove timer.
7102         (gtk_range_get_adjustment): demand create adjustment.
7103
7104         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
7105         we simply create them on demand now and get rid of them in
7106         the destroy handler.
7107         (gtk_viewport_destroy): get rid of the h/v adjustments in the
7108         destroy handler instead of finalize.
7109         (gtk_viewport_get_hadjustment): 
7110         (gtk_viewport_get_vadjustment): 
7111         (gtk_viewport_size_allocate): demand create h/v adjustment
7112         if required.
7113
7114         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
7115         gtk_widget_real_destroy () functionality.
7116         (gtk_widget_real_destroy): reinitialize with a new style, instead
7117         of setting widget->style to NULL.
7118
7119 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
7120
7121         * gtk/gtkcalendar.c:
7122         * gtk/gtkbutton.c: ported _get_type() implementation over to
7123         GType, either to preserve memchunks allocation facilities,
7124         or because Gtk+ 1.0 GtkTypeInfo was still being used.
7125
7126         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
7127         over. prepare for ::destroy to be emitted multiple times.
7128         removed reference tracer magic. chain into GObjectClass.shutdown()
7129         to emit ::destroy signal.
7130
7131         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
7132         fundamental.
7133
7134         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
7135         cludge.
7136
7137         * gtk/gtksocket.c:
7138         * gtk/gtkplug.c:
7139         * gtk/gtklayout.c:
7140         * gtk/gtklabel.c:
7141         * gtk/gtkargcollector.c:
7142         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
7143         not being a fundamental anymore, and to work with the new
7144         type system (nuked fundamental type varargs clutter).
7145
7146         * gtk/*.c: install finalize handlers in the GObjectClass
7147         part of the class structure.
7148         changed direct GTK_OBJECT()->klass accesses to
7149         GTK_*_GET_CLASS().
7150         changed direct object_class->type accesses to GTK_CLASS_TYPE().
7151
7152         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
7153         GType. made most of the GTK_*() type macros and Gtk* typedefs
7154         simple wrappers around macros and types provided by GType.
7155         most notably, a significant portion of the old API vanished:
7156         GTK_TYPE_MAKE(),
7157         GTK_TYPE_SEQNO(),
7158         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
7159         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
7160         GTK_TYPE_ARGS,
7161         GTK_TYPE_CALLBACK,
7162         GTK_TYPE_C_CALLBACK,
7163         GTK_TYPE_FOREIGN,
7164         GtkTypeQuery,
7165         gtk_type_query(),
7166         gtk_type_set_varargs_type(),
7167         gtk_type_get_varargs_type(),
7168         gtk_type_check_object_cast(),
7169         gtk_type_check_class_cast(),
7170         gtk_type_describe_tree(),
7171         gtk_type_describe_heritage(),
7172         gtk_type_free(),
7173         gtk_type_children_types(),
7174         gtk_type_set_chunk_alloc(),
7175         gtk_type_register_enum(),
7176         gtk_type_register_flags(),
7177         gtk_type_parent_class().
7178         replacements, where available are described in ../docs/Changes-1.4.txt.
7179         implemented compatibility functions for the remaining API.
7180
7181         * configure.in: depend on glib 1.3.1, use gobject module.
7182
7183 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
7184
7185         * TODO.xml: Various updates to current status.
7186
7187 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
7188
7189         * gtk.m4: Print out version when test succeeds.
7190
7191 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
7192
7193         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
7194         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
7195         
7196         (Original triangle color selector from Simon Budig
7197         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
7198         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
7199         Santiago <mrcooger@cyberverse.com>)
7200
7201         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
7202         out into a separate widget.
7203
7204         * gtk/testgtk.c: Add some checkbuttons for toggling palette
7205         and opacity controls.
7206
7207 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
7208
7209         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
7210         snuck in prematurely.
7211
7212 2000-05-07  Tor Lillqvist  <tml@iki.fi>
7213
7214         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
7215         had deleted a ! operator by mistake, which caused
7216         GDK_SELECTION_CLEAR events never to be generated, which caused
7217         only the first copy to the clipboard from an gtkeditable to
7218         actually cause a copy to the Windows clipboard.
7219
7220 2000-05-06  Tor Lillqvist  <tml@iki.fi>
7221
7222         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
7223         compilation, too. Current mingw gcc distributions include the
7224         necessary headers. Also the necessary IIDs are now in mingw
7225         headers/libraries, and own definitions unnecessary.
7226
7227         More hacking on OLE2 DND, still doesn't work though, and thus
7228         ifdeffed out.
7229
7230         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
7231         here, too.
7232
7233 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
7234
7235         * gdk/nanox/*: nano-X port work in progress.
7236         * gdk/simple.c: simple test for Gdk.
7237         * README.nanox: notes about the port: read this first!
7238         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
7239         with nano-X.
7240
7241 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
7242
7243         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
7244         gdk_window_clear() into common code, implement in terms of
7245         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
7246         not redirected to the backing rectangle.
7247
7248 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7249
7250         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7251         EXTRA_DIST. It does not work well when the file that
7252         everything depends on is not in the tarball.
7253
7254 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
7255
7256         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
7257         with recursion where process_updates() is called from
7258         an expose handler. (GtkTextView is highly broken in
7259         doing this, but it should work, so it is a nice test
7260         case.)
7261
7262 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7263
7264         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
7265         handle the case where updates are queued during processing of
7266         updates.
7267
7268 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
7269
7270         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
7271         window is on gdk_display - use that instead of segfaulting.
7272
7273 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
7274
7275         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
7276         broken and require an empty arg, give it to them.
7277
7278 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
7279
7280         * gtk/gtklabel.h: indentation fixes.
7281
7282 2000-05-02  Tor Lillqvist  <tml@iki.fi>
7283
7284         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
7285         draw too narrow or too low arcs, they seem to fail, at least with
7286         some display drivers.
7287
7288         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
7289
7290         Large changes to the Win32 backend, partially made necessary by
7291         the changes to the backend-independent internal
7292         structures. Attempts to implement similar backing store stuff as
7293         on X11. The current (CVS) version of the Win32 backend is *not* as
7294         stable as it was before the no-flicker branch was merged. A
7295         zipfile with that version is available from
7296         http://www.gimp.org/win32/. That should be use by "production"
7297         code until this CVS version is usable. (But note, the Win32
7298         backend has never been claimed to be "production quality".)
7299
7300         * README.win32: Add the above comment about versions.
7301
7302         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
7303
7304         * gdk/gdk.def: Update.
7305
7306         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
7307         presumably be replaced by some more better mechanism as 1.4 gets
7308         closer to release shape.
7309
7310         * gdk/makefile.{cygwin,msc}: Update.
7311
7312         * gdk/win32/*.c: Correct inclusions of the backend-specific and
7313         internal headers. Change code according to changes in these. Use
7314         gdk_drawable_*, not gdk_window_* where necessary.
7315
7316         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
7317         our old DND.
7318
7319         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
7320         to interpret single characters as UTF-8. Thanks to Hans Breuer.
7321         Use correct function name in warning messages.
7322
7323         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
7324         GSourceFuncs gdk_event_prepare and gdk_event_check.
7325         (gdk_event_get_graphics_expose): Do implement, use
7326         PeekMessage. Thanks to Hans Breuer.
7327         (event_mask_string): Debugging function to print an GdkEventMask.
7328         (gdk_pointer_grab): Use it.
7329
7330         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
7331         (old) book I used claimed was Hangul actually is CJK Unified
7332         Ideographs Extension A. Also, Hangul Syllables were missing.
7333         Improve logging.
7334
7335         * gdk/win32/gdkgc-win32.c: Largish changes.
7336
7337         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
7338         g_win32_getlocale() from GLib, and not setlocale() to get current
7339         locale name.
7340
7341         * gdk/win32/gdkprivate-win32.h
7342         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
7343         gdkwin32.h, similarily as in the X11 backend.
7344
7345         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
7346         assignment was used instead of equals in if test. Thanks to Hans
7347         Breuer.
7348
7349         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
7350         the X11 version.
7351
7352         * gdk/win32/makefile.{cygwin,msc}
7353         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
7354         path to the Win32 headers that works also with the mingw compiler.
7355
7356         * gtk/gtkstyle.c: Include <string.h>.
7357
7358 2000-04-26  Havoc Pennington  <hp@redhat.com>
7359
7360         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
7361         replacing the broken gtk_label_get ()
7362
7363 2000-04-15  Havoc Pennington  <hp@pobox.com>
7364
7365         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
7366         this keeps scanner scripts from getting confused.
7367
7368         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
7369         data, rather than void
7370
7371 2000-04-15  Tor Lillqvist  <tml@iki.fi>
7372
7373         * gtk/gtkclist.c (gtk_clist_motion)
7374         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
7375         with is_hint FALSE, get x and y from the event. They used to be
7376         used uninitialised. The Win32 backend never sends motion events
7377         marked as hints. This for instance fixes the annoying file and
7378         font selector behaviour in the Win32 version.
7379
7380 2000-04-14  Tor Lillqvist  <tml@iki.fi>
7381
7382         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
7383         gtk_private_n_signals variables, they are used by some software,
7384         sigh.
7385
7386         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
7387         installation directory from the Registry, where the installer
7388         should have put it.
7389
7390 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
7391
7392         * gdk/x11/Makefile.am: Fix problem with installation directory for
7393         gdkx.h
7394
7395         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
7396         <mrcooger@cyberverse.com> so that when selecting menus with the
7397         mouse, the first item will not be selected, but when selecting
7398         with an accelerator, or navigating left-right on a menubar with
7399         the menus popped up, the first item will be selected.
7400
7401 2000-04-05  Dan Damian  <dand@dnttm.ro>
7402
7403         * configure.in: Added "ro" to ALL_LINGUAS.
7404
7405 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
7406
7407         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
7408         indentation.
7409
7410         * Makefile.am (EXTRA_DIST): Fix typo.
7411
7412         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
7413         to catch gdkconfig.h
7414
7415         * gtk/gtkitemfactory.c: Added FIXME.
7416
7417 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
7418
7419         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
7420         s/return_if_fail/return_val_if_fail/g and add a return value.
7421
7422 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
7423
7424         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
7425         merge slipup.
7426
7427         * gdk/gdkinput.h: Fix missing line from merge.
7428
7429 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
7430
7431         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
7432         instead of gdkprivate.h.
7433
7434 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
7435
7436         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
7437         parent class to correctly be GtkDialogClass.
7438
7439 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
7440
7441         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
7442         toplevel windows and their immediate children by their parents,
7443         since the size of toplevel windows is out of our immediate
7444         control and we don't get any real benefit from trying to track
7445         this size for clipping.
7446
7447         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
7448         for input_only windows.
7449
7450         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
7451         to fix some hacks and make sure that we don't try to set the
7452         background of input only windows.
7453
7454 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
7455
7456         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
7457         the _really_ internal stuff, and leave gdkprivate.h for the fake private
7458         stuff that we've traditionally exposed.
7459
7460         * gdk/**.c: Use gdkinternals.h where appropriate.
7461
7462         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
7463         not include gdkprivate-x11.h, move all stuff of conceivable public
7464         interest into gdkx.h; keep all really private stuff in
7465         uninstalled header gdkprivate-x11.h.
7466
7467         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
7468         image->image_put on windows through a new function _gdk_window_draw_image()
7469         to allow us to do backing store for images. (Sort of ugly)
7470
7471         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
7472         contexts locally so that we can offset them properly when drawing 
7473         onto backing pixmaps.
7474
7475         * gdk/gdkinput.h: Reindented
7476
7477         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
7478         pixmap or color for the window, so we can properly initialize
7479         our double-buffer pixmaps, and also so that we temporarily set
7480         a background of None while scrolling.
7481
7482         * gdk/gdkregion.h: Revise region boolean operators to have an
7483         interface that is actually convenient - switch from creating new
7484         regions on every op, to "methods" that modify existing regions
7485         (A = A OP B). 3 argument forms which allow dest == src, would also
7486         be possible, but the current interfaces seem to map nicely
7487         onto what needs to be done. (There is quite a lot of region
7488         code in GDK now.)
7489
7490         * gdk/gdkregion.h: Add constructor from rectangle and a copy
7491         operator.
7492
7493         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
7494         gdkpoly-generic.h: Copy region code from Xlib, switch it over
7495         to 32 bit coordinates, modify it to be mostly GTK+ style
7496         and to have interfaces that match gdkregion.h.
7497
7498         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
7499         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
7500         create a backing pixmap and redirect all drawing to
7501         that backing pixmap until a matching gdk_window_end_paint().
7502
7503         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
7504         Create a special drawable class for GtkWindow's that 
7505         redirects the drawing to the backing pixmap as necessary
7506         and then calls the real operations in _gdk_windowing_window_class.
7507
7508         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
7509         Store invalid region for each window. Generate expose events for invalid
7510         region in an idle. This replaces both the expose compression
7511         and the redrawing queuing in GTK+. It is both more efficient and
7512         simpler than either one individually and far more so then the
7513         combination.
7514
7515         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
7516         Emulate 32 bit coordinates for windows with 16 bit coordinates
7517         by offsetting drawing, guffaw scrolling techniques and
7518         mapping/unmapping child windows as necessary.
7519
7520         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
7521         where, when invalid regions are processed, the region is stored,
7522         and if expose events come in that are detectably duplicate
7523         the processed exposes (by comparison of event serial numbers),
7524         the stored region is subtracted out of those exposes.
7525
7526         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
7527         regions newly exposed when scrolling or resizing windows.
7528         This, combined with forcing processesing of queued invalidated
7529         regions, gives nice flicker-free scrolling.
7530
7531         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
7532         invalidated regions after every scroll.
7533
7534         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
7535         emulation in GDK. Its, for all practical purposes just a
7536         GtkViewport/GtkFixed hybrid now.
7537
7538         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
7539         (16-bit) structures as necessary instead of just casting.
7540
7541         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
7542         in terms of the structures from gdkregion-generic.c, using appropriate
7543         offsets from GDK to X11 coordinates. Cache clip mask and
7544         origin and ts origin locally and only flush to the server
7545         when drawing, to avoid constantly setting and resetting these
7546         values when offsetting GC's for scrolling and backing pixmaps.
7547
7548         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
7549
7550         * gtk/gtkcontainer.c: Call process_all_updates at end
7551         of resizing to reduce flicker. (Avoids having redraw
7552         lag arbitrarily behind resize under some circumstances)
7553
7554         * gtk/gtkentry.c: Remove old backing store code, and simply take
7555         advantage of the new backing store capabilities of GDK.
7556
7557         * gtk/gtkmain.c: Simple implementation of widget backing
7558         store - simply push a paint while handling each expose.
7559         (Should really be configurable widget for widget.)
7560         
7561         * gtk/gtkwidget.c: Remove all the old complicated redraw
7562         code, and simply invalidate the GDK windows from
7563         gdk_window_queue_clear(), etc. (Sigh, so much carefully
7564         debugged complexity ... gone to the winds.)
7565
7566         Remove all the code for suppressing expose events while
7567         resizes are pending; this isn't needed since the invalid
7568         areas won't be processed until after the resizes are
7569         processed, since they are in a lower priority idle.
7570
7571 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
7572
7573         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
7574         and height of dest rectangle for non-intersecting rectangles.
7575
7576 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
7577
7578         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
7579         for GdkRectangle.
7580
7581 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
7582
7583         * gdk/gdk{events,image,private,types,window}.h
7584          gdk/x11/gdkinputprivate.h: Change all coordinates
7585          from int16 to int. Also, Change width and height from
7586          unsigned to signed to avoid all the stupid C 
7587          signedness bugs.
7588
7589 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
7590
7591         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
7592         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
7593         Add some more detailed checking.
7594
7595         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
7596         New function to retrieve the depth of a drawable.
7597
7598         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
7599         field, reorder fields to save memory. 
7600
7601 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
7602
7603         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
7604         of the background image instead of scaling the background down to
7605         a line.
7606
7607         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
7608         which temporarily set slider to wrong size.
7609
7610         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
7611         queue_clear().
7612
7613 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
7614
7615 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
7616
7617         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
7618
7619 2000-03-17  Tor Lillqvist  <tml@iki.fi>
7620
7621         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
7622         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
7623
7624         * gdk/win32/gdkfont-win32.c
7625         * gdk/win32/gdkproperty-win32.c
7626         * gdk/win32/gdkselection-win32.c
7627         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
7628         now declared such.
7629
7630 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
7631
7632         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
7633
7634 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
7635
7636         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
7637         is called without trapping X errors.
7638
7639 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
7640
7641         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
7642         way into the fontset lists.
7643
7644 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
7645
7646         * gtk/gtkthemes.h: add extern "C" scope.
7647
7648 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
7649
7650         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
7651         to make appends to the list constant. (gtk-guy-990901-0.patch)
7652
7653 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
7654
7655         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
7656         for the typename hash table.
7657
7658 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
7659
7660         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
7661         to make sure we never divide by zero. 
7662         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
7663
7664 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
7665
7666         * gtk/gtkfontsel.c: Apply patch from
7667         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
7668         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
7669
7670         Also, some cleanups in atom handling.
7671
7672 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
7673
7674         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
7675         not GtkWidget.
7676
7677 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
7678
7679         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
7680         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
7681         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
7682         more guint wrap-around bugs before going to bed.
7683
7684 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
7685
7686         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
7687         guint wrap arounds in allocation.width.
7688
7689         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
7690         process untill we fit the allocation given.
7691
7692 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
7693
7694         * gtk/gtkwidget.c:
7695         (gtk_widget_unrealize): guard widget access with ref/unref
7696         around signal emission.
7697         (gtk_widget_hide): same here, but also check its destroyed
7698         state before queueing a resize.
7699
7700 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
7701
7702         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
7703         of gtk_default_insensitive_bg as insensitive base color.
7704
7705         * gtk/gtktext.c (gtk_text_style_set): set the background color according
7706         to the widget's state.
7707         (gtk_text_realize): same here.
7708         (gtk_text_state_changed): same here.
7709         (draw_bg_rect): compare background color against base[] from
7710         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
7711
7712 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
7713
7714         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
7715         grabs are active, unless a delete event is send to the toplevel
7716         of the currently grab holding widget.
7717
7718 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
7719
7720         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
7721         debugging g_print's.
7722
7723 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
7724
7725         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
7726         ever make the scrolled-window requisition ever depend on the 
7727         visibility state of the scrollbars for the AUTOMATIC policy. 
7728         This breaks the GTK+ requisition model, and causes loops.
7729
7730 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
7731
7732         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
7733         the default font to avoid problems with XFree86-4.0 where the
7734         default charset is iso10646-1, not iso8859-1.
7735
7736 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
7737
7738         * acinclude.m4
7739         * config.guess
7740         * config.sub
7741         * ltconfig
7742         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
7743
7744         * gtk/Makefile.am: minor cosmetic consistency tweak
7745
7746 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
7747
7748         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
7749         the activate_time to 0, so that we handle a quick
7750         press/release press/release properly and don't suppress
7751         the second release. (Red Hat bug #7545)
7752
7753 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
7754
7755         * gtk/gtkctree.c (row_delete):
7756         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
7757         bugs with destruction notifier, *always* update internal
7758         structures *before* calling user code.
7759
7760 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
7761
7762         A few more fixes for bug #5487, #2051, #2677.
7763         * gtk/gtkclist.c : 
7764         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
7765         not GDK_BUTTON_PRESS.
7766         (resync_selection): resync only if selection_mode is
7767         GTK_SELECTION_EXTENDED
7768         * gtk/gtkctree.c (resync_selection): same here
7769
7770 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
7771
7772         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
7773         gdk_drag_get_selection() and gtk_menu_detach().
7774
7775         [ From Jeroen Ruigrok/Asmodai ]
7776
7777 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
7778
7779         * gtk/gtknotebook.c (gtk_notebook_size_request): 
7780         page->tab_label can be NULL.
7781
7782 2000-01-25  Havoc Pennington  <hp@pobox.com>
7783         
7784         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
7785         arg is boolean
7786
7787         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
7788
7789         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
7790
7791         * gdk/gdkproperty.c (gdk_property_get): return boolean
7792
7793         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
7794
7795         * gdk/gdkim.c (gdk_im_ready): return boolean
7796
7797         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
7798
7799         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
7800         glib clash, should fix glib)
7801
7802         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
7803         (gdk_get_show_events): return gboolean, and canonicalize 
7804         to TRUE/FALSE
7805
7806         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
7807         colormap is private
7808         (gdk_colors_alloc): gboolean whether to be contiguous
7809         (gdk_color_equal): return gboolean since we are a predicate
7810         and not a qsort() (this looks semi-wrong due to glib breakage,
7811         IMO glib should be fixed)
7812         
7813         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
7814         (gdk_get_use_xshm): return gboolean
7815         (gdk_pointer_is_grabbed): return gboolean
7816
7817         * gdk/gdk.h: Change prototypes to match all the above changes,
7818         and re-run egtk-format-protos as required.
7819
7820 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
7821
7822         * gtk/gtkctree.c (resync_selection): 
7823         * gtk/gtkclist.c (resync_selection):
7824
7825         Return immediately if clist->drag_pos < 0. This is a workaround
7826         for the corrupt state that the clist gets into when a
7827         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
7828
7829         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
7830         
7831         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
7832         variable from recent commit.
7833
7834 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
7835
7836         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
7837
7838 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
7839
7840         * gtk/Makefile.am: prefix all autogenerated source that get build in
7841         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
7842         in builddir. since we subsequently cd into srcdir for autogeneration,
7843         the paths have to be stripped from the target file names, thusly we
7844         use $(@F) as target names now.
7845         put a comment about configure.in's --disable-rebuilds option,
7846         which can be used for non-writable source directories, for development
7847         setups though, srcdir has to be *writable*.
7848
7849 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
7850
7851         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
7852           Finish the job of allowing event to be NULL.
7853           (Fixes bug #4283, reported by Chris Blizzard)
7854
7855         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
7856           things so that the cursor appears on screen, properly
7857           take into account INNER_BORDER.
7858           (Fixes bug #4754, reported by Antonio Campos)
7859
7860 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
7861
7862         * gtk/gtknotebook.c (gtk_notebook_map): Don't
7863           show the tab_label unless it itself is visible.
7864
7865           gtk/gtknotebook.c (gtk_notebook_size_request):
7866           Do a better job of making sure that the visibility
7867           of the tab label corresponds to whether it should
7868           be mapped or not.
7869
7870 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
7871
7872         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
7873           Use the requisition, not the allocation, since the
7874           allocation has not necessarily been computed yet.
7875           (Pointed out by Eugene Osintsev)
7876
7877 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
7878
7879         * gtk/gtkstyle.c (gtk_style_new): Dont' set
7880           style/base[GTK_STATE_INSENSITIVE] both to
7881           gtk_default_insensitive_bg!
7882           (Bug #2187, reported by Jonathan Blandford)
7883
7884         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
7885           Add Alt_L, Alt_R to list of invalid accelerators.
7886           (Bug #3736, reported by Vlad Harchev)
7887
7888 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
7889
7890         * gtk/gtkfilesel.c (open_ref_dir): Fix several
7891         bugs which occured after an attempt to open 
7892         invalid home directory left cmpl_state->reference_dir == NULL.
7893
7894          - completion on files in home directory didn't work
7895          - completion on an empty string caused  segfault
7896
7897          (Bug #3678, reported by Steve Ratcliffe)
7898
7899         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
7900         cut and paste error that was causing scales to
7901         be incorrectly positioned.
7902         (Bug #2956,
7903          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
7904
7905 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
7906
7907         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
7908         when checking for dcgettext, if we've found we needed
7909         it for dgettext.
7910 +
7911 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
7912
7913         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
7914         queue_clear on NO_WINDOW widgets during a reparent,
7915         since at that point the window and widget heirarchies
7916         are out of sync. This stops crashing in some cases
7917         (the scrolled window reparent test, for instance), and
7918         _probably_ won't cause drawing errors.
7919
7920         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
7921         test do what it was supposed to do and be robust against
7922         window closings, etc. (Bug #2443)
7923
7924 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
7925
7926         * gtk/gtkentry.c: Fix return values on mouse events.
7927         (Bug #2686, Sky <seb_sky@yahoo.com>)
7928
7929         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
7930         (pointed out by George Lebl)
7931
7932         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
7933         (From Ettore Perazzoli  <ettore@helixcode.com>)
7934  
7935 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
7936
7937         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
7938         clicks between rows or outside calender area correctly.
7939         (Patch from Damon Chaplin)
7940
7941         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
7942         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
7943           Call destroy function when overwriting existing data. 
7944           (Pointed out by Damon Chaplin)
7945
7946 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
7947
7948         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
7949           which was causing problems on various systems with Xmu.
7950           This hasn't been needed for a very long time.
7951           (Fixes #1185 3167)
7952
7953 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
7954
7955         * gdk/gdki18n.h: Include <ctype.h> when defining
7956           gdk_isw* in terms of is* as a fallback.
7957           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
7958
7959 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
7960
7961         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
7962           realize the widget when it is size allocated!
7963           (old, old bug)
7964
7965         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
7966           Removed unused call to gdk_window_get_size() that
7967           showed up when the above was fixed.
7968
7969 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
7970
7971         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
7972           fix up widget->window when the widget is a
7973           NO_WINDOW container widget.
7974
7975 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
7976
7977         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
7978           to account for the fact that feof() does _not_ 
7979           return TRUE on errors, and thus avoid infinite loops
7980           when trying to use gdk_pixmap_create_from_xpm()
7981           on unreadable values.
7982
7983 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
7984
7985         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
7986
7987 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
7988
7989         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
7990           gdk_gc_set_dashes to take gint8 instead of gchar to
7991           make it clearer that it is _not_ a NULL terminated string.
7992
7993         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
7994           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
7995           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
7996           arguments.
7997
7998 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
7999
8000         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
8001         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
8002         background size relative to our allocation, guard against small
8003         allocations, we may have not yet been size allocated.
8004
8005 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
8006
8007         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
8008         not just version == 3. We implement all 3 + most of 4 - 
8009         (we don't support matching text/plain;charset=iso-8859-1
8010         to a dest that expects text/plain). We'll still advertise
8011         3 to be safe, but any client implementing version >= 3
8012         must interoperate with 3.
8013         
8014 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8015
8016         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
8017         background and gc members, add a warning in gtk_tooltips_set_color()
8018         indicating that this function is deprecated.
8019
8020 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
8021
8022         * docs/gtkfaq.sgml: FAQ Update:
8023           - Minor cleanups (Emmanuel, me)
8024           - New questions:
8025                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
8026                 How can I retrieve the text from a GtkMenuItem? (timj)
8027                 How do I validate/limit/filter the input to a GtkEntry? (me)
8028                 Memory does not seem to be released when I free the list
8029                         nodes I've allocated (timj)
8030
8031 2000-03-07  Tor Lillqvist  <tml@iki.fi>
8032
8033         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
8034         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
8035         for which it is no use to call GetLastError onWin9x.
8036         (gdk_other_api_failed) New function, for general error
8037         reporting without calling GetLastError.
8038         (gdk_win32_api_failed) OTOH, this function always calls
8039         GetLastError. (gdk_win32_last_error_string) Remove this function,
8040         GLib has the equivalent now.
8041
8042         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
8043         call them with function name, file name and line number in the
8044         arguments.
8045
8046         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
8047         functions.
8048         
8049         * gtk/gtk.def: Add some missing entry points.
8050
8051         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8052         gtk_paned_set_gutter_size, which don't exist any longer, as void.
8053         
8054         Fixes by Hans Breuer:
8055
8056         * gdk/makefile.msc: Update for debugging.
8057
8058         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
8059         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
8060         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
8061         in the dash_list.
8062
8063         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
8064         the x11 backend.
8065
8066         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
8067
8068         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
8069
8070 2000-03-04  Tor Lillqvist  <tml@iki.fi>
8071
8072         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
8073         just pixel value of background colour.
8074
8075         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
8076         containing code snippet previously duplicated in a couple of
8077         places.
8078         
8079         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
8080         gdk_colormap_color.
8081
8082         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
8083         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
8084         events for autorepeated Shift, Control and Alt keys. Use
8085         gdk_colormap_color.
8086
8087         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
8088         pointer is inside the window the cursor of which we are setting,
8089         call SetCursor immediately.
8090
8091         * gdk/win32/makefile.cygwin
8092         * gtk/makefile.cygwin: If we don't have the build number stamp
8093         file, use zero.
8094
8095         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8096         gtk_paned_set_gutter_size as empty.
8097
8098         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
8099         
8100 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
8101
8102         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
8103           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
8104           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
8105           docs/gtk_tut.sgml docs/gtk.texi TODO:
8106
8107           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
8108
8109 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
8110
8111         * gtk/gtkcalendar.c: Implement num_marked_dates,
8112           and don't emit mutiple day_selected signals on
8113           month_prev.
8114
8115 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
8116
8117         * docs/make-todo (lineno): let title and logo be configurable so
8118         that GNOME can use this script too.
8119
8120         * TODO.xml: added logourl and a title
8121
8122 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
8123
8124         * TODO.xml: Added some UI items, and an explanatory
8125         comment at the top of the file.
8126
8127 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
8128
8129         * TODO.xml: some updates, added abunch of new entries.
8130         a note for those fiddeling with this file, when done
8131         with it, invoke:
8132         $ ./docs/make-todo TODO.xml >/dev/null
8133         and correct output errors before comitting changes.
8134
8135 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
8136
8137         * TODO.xml: Added XML-structured TODO file.
8138         * docs/make-todo: python script to turn TODO.xml into
8139           pretty XML output. 
8140
8141 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
8142
8143         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
8144         the function to let it draw the seven dots, instead of the old,
8145         much maligned, method.
8146         (draw_dot): New function to draw a dot.
8147
8148         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
8149         to draw the handle inside the border width as opposed to outside.
8150         Use paint function instead of gdk_draw_point.
8151
8152         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
8153         to draw the handle inside the border width as opposed to outside.
8154         Use paint function instead of gdk_draw_point.
8155
8156         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
8157         Change indenting to be more GTK like.
8158
8159 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
8160
8161         * docs/gtk_tut.sgml: New section on GtkCalendar
8162         * examples/calendar: Update example code
8163
8164 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
8165
8166         * docs/gtkfaq.sgml: FAQ Update
8167
8168 2000-02-19  Anders Carlsson  <andersca@gnu.org>
8169
8170         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
8171         to prevent the scroll event to be propagated upwards.
8172
8173 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8174
8175         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
8176         OwnerGrabButtonMask from button entries for
8177         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
8178
8179         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
8180         to the event mask (which will result in button/press release
8181         being added to the event mask on Unix) so scrolling works
8182         for layouts in scroll windows.
8183
8184         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
8185
8186         Patch from Anders Carlsson  <andersca@gnu.org> to add
8187         a scroll event.
8188
8189         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
8190         scrolling to the "Test Scrolling" part of testgtk.
8191  
8192         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
8193  
8194         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
8195         it against GDK_SCROLL.
8196  
8197         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
8198         way of mouse wheel scrolling.
8199  
8200         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
8201  
8202         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
8203  
8204         * gtk/gtkmain.c: Removed previous mouse wheel hack.
8205  
8206         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
8207         gdk_event_mask_table.
8208  
8209         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
8210         GdkEventScroll handler.
8211  
8212         * gdk/gdkevents.h: Added GdkEventScroll structure.
8213  
8214 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
8215
8216         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
8217         and Anders Carlsson to change the Paned widgets so that they
8218         can be dragged from anywhere along the length. Also change
8219         the way that this is drawn to make this apparent.
8220
8221         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
8222         from George Lebl to check that option_menu->menu is present
8223         before getting history.
8224
8225 2000-02-14  Tor Lillqvist  <tml@iki.fi>
8226
8227         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
8228         before the assertion for non-NULL segment list.
8229
8230         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
8231         Seems that pattern brushes *must* be 8x8 pixels! At least on my
8232         machine, but it might be display driver dependent. Sigh, so make
8233         sure the stipple is that size. Does Windows suck or what?
8234
8235         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
8236         places.
8237
8238 2000-02-13  Havoc Pennington  <hp@pobox.com>
8239
8240         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
8241         refcount to 1
8242         (gdk_cursor_new): init refcount to 1
8243
8244         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
8245
8246 2000-02-13  Tor Lillqvist  <tml@iki.fi>
8247
8248         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
8249         so that we don't have to do unnecessary settings to the HDC.
8250
8251         * gdk/win32/gdkdrawable-win32.c
8252         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
8253         gdk_gc_predraw.
8254
8255         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
8256         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
8257         GDI paths, call WidenPath to get the outline of the stroken path,
8258         and then fill the outline (with the brush that was built from the
8259         stipple).
8260
8261         * gdk/win32/gdkgc-win32.c: Factor out common code from
8262         _gdk_win32_gc_new and gdk_win32_gc_set_values into
8263         gdk_win32_gc_values_to_win32values. Use correct colour for
8264         SetBkColor() (Until now the code actually used a random colour in
8265         the call to SetBkColor()... but that didn't show up as not many
8266         GDI APIs use the background colour. Pattern (opaque stippled)
8267         brushes do.)
8268
8269         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
8270         gdk_win32_api_failed): New functions for error logging.
8271
8272         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
8273         WIN32_API_FAILED to call them, passing function or file name and
8274         line number.
8275
8276         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
8277
8278         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
8279         GdkColor for foreground and background in GdkGCWin32Data.
8280
8281         * gdk/makefile.cygwin: Link in the resource object separately.
8282
8283         * gdk/win32/rc/gdk.rc
8284         * gtk/gtk.rc (New file)
8285         * gdk/win32/makefile.cygwin
8286         * gtk/makefile.cygwin: Update build number in DLLs automatically,
8287         as in GLib.
8288
8289 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
8290
8291         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
8292         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
8293         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
8294         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
8295         parameters given and cursor->ref_count. coding style fixups.
8296
8297         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8298         not GtkWidget.
8299         
8300         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
8301         fix up widget macros and add _GET_CLASS() variant.
8302         
8303         * gtk/*.c: some GtkType fixups.
8304
8305 2000-02-09  Tor Lillqvist  <tml@iki.fi>
8306
8307         * gdk/win32/gdkproperty-win32.c
8308         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
8309         were reversed.
8310
8311 2000-02-04  Tor Lillqvist  <tml@iki.fi>
8312
8313         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
8314         g_filename_to_utf8 to convert the font names Windows gives us from
8315         whatever is the default codepage to UTF-8.
8316         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
8317         in the other direction.
8318
8319         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
8320         error in debugging output.
8321
8322 2000-02-02  Tor Lillqvist  <tml@iki.fi>
8323
8324         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
8325         and height parameters to gdk_window_clear_area(). Not minus one.
8326
8327 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
8328
8329         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
8330         checks if the widget passed to gtk_drag_get_data() was not the
8331         dest widget.
8332
8333 2000-02-01  Tor Lillqvist  <tml@iki.fi>
8334
8335         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
8336         g_filename_from_utf8 functions (which were added a moment ago to
8337         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
8338         size buffers.
8339
8340         gtk_file_selection_get_filename returns the filename in the C
8341         runtime encoding. It calls g_filename_from_utf8, but copies the
8342         returned string to a static buffer, which is returned. I think
8343         this is better than returning the result from g_filename_from_utf8
8344         directly, which would mean all apps that use it would have to free
8345         the return value. Or should this function care about this issue at
8346         all? Maybe a new function with clearly defined semantics.
8347
8348         * gtk/gtkfilesel.h: Add comment about
8349         gtk_file_selection_get_filename returning the filename in the C
8350         runtime's encoding.
8351
8352         * README.win32
8353         * gdk/gdk.def
8354         * gdk/makefile.{cygwin,msc}
8355         * gtk/gtk.def: Updates.
8356
8357         * gdk/gdkcursor-win32.c: Initialise refcount.
8358
8359 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
8360
8361         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
8362
8363 2000-01-30  Havoc Pennington  <hp@pobox.com>
8364
8365         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
8366         destroy
8367
8368         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
8369
8370         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
8371         implemented in platform-specific code
8372
8373         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
8374
8375         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
8376         underscore in front
8377
8378         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
8379         put an underscore in front
8380
8381         * gdk/gdkcursor.c: new file, implements
8382         gdk_cursor_ref/gdk_cursor_unref
8383
8384         * gdk/gdkcursor.h: Refcount GdkCursor
8385
8386         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
8387
8388 2000-01-29  Tor Lillqvist  <tml@iki.fi>
8389
8390         * gdk/gdkwindow.h
8391         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
8392
8393 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8394
8395         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
8396         structures to properly inherit from GtkWidget not GtkBin.
8397
8398 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
8399
8400         * gtk+.spec.in: Added lib/gtk+/include/* to %files
8401         (bug #5178 - Peter Wainright)
8402         
8403         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
8404         so that it will be installed.
8405         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
8406
8407 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
8408
8409         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
8410         for the GtkStyleClass vtable const.
8411
8412         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
8413         take a const string argument like GtkTranslateFunc. This will
8414         require changes in use code.
8415
8416 2000-01-19  Tor Lillqvist  <tml@iki.fi>
8417
8418         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
8419         semantics (to mimic the X11 backend, which just calls XClearArea)
8420         is to check for zero width (and height), and in that case use the
8421         window's width minus x (height minus y). This fixes for instance
8422         some redraw problems with gtkclist, which were easily noticeable
8423         in the gtk file selection widget.
8424
8425         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
8426         windows.
8427
8428 2000-01-13  Tor Lillqvist  <tml@iki.fi>
8429
8430         * configure.in
8431         * gdk/Makefile.am
8432         * gdk/x11/Makefile.am
8433         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
8434         (bug #5177).
8435         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
8436         out later.
8437
8438 2000-01-09  Tor Lillqvist  <tml@iki.fi>
8439
8440         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
8441         WM_MOVE for iconified or invisible windows. This fixes various
8442         problems when minimising windows. Thanks to Bernd Herd.
8443
8444 2000-01-05  Tor Lillqvist  <tml@iki.fi>
8445
8446         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
8447         backend's draw_lines method, not draw_points.
8448
8449 2000-01-02  Tor Lillqvist  <tml@iki.fi>
8450
8451         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
8452         before Owen's reorganisation: Don't have queued_events and
8453         queued_tail statics in this file, but use gdk_queued_events and
8454         gdk_queued_tail. This makes exposure event compression work again.
8455
8456         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
8457         seem to be needed?
8458
8459 1999-12-30  Tor Lillqvist  <tml@iki.fi>
8460
8461         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
8462         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
8463         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
8464         doesn't do anything.
8465
8466         * gdk/gdk.def: Add gdk_xid_table_insert.
8467
8468         * gdk/win32/gdkprivate-win32.h
8469         * gdk/win32/gdkevents-win32.c
8470         * gdk/win32/gdkinput-win32.c
8471         
8472         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
8473         extension_events field in the GdkWindowWin32Data struct. Use only
8474         the extension_events field in GdkWindowPrivate. Previously one was
8475         set, and the other one tested, which broke tablet
8476         functionality. Thanks to Keishi Suenaga for pointing this out.
8477
8478 1999-12-18  Tor Lillqvist  <tml@iki.fi>
8479
8480         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
8481         When handling a single character (text length == 1), don't handle
8482         it as if it was UTF-8.
8483
8484 1999-12-11  Tor Lillqvist  <tml@iki.fi>
8485
8486         * Makefile.am: Distribute README.win32.
8487         
8488         * gdk/Makefile.am
8489         * gdk/win32/Makefile.am: Distribute Win32 files.
8490
8491         * gdk/makefile.msc: New file.
8492
8493         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
8494         after label).
8495
8496         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
8497         gdk_error_code as GDKVAR, as they are referred outside GDK.
8498
8499         * gdk/win32/makefile.msc: Update.
8500
8501         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
8502         tweaks. Check only if at least one of those Unicode subrange bits
8503         we care for is set. If no code page bits are set, guess (wildly)
8504         based on the charset.
8505
8506         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
8507
8508         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
8509         non-NULL.
8510
8511         * gtk/gtkdnd.c
8512         * gtk/gtklayout.c
8513         * gtk/gtkplug.c
8514         * gtk/gtkselection.c
8515         * gtk/gtksocket.c
8516         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
8517         appropriate. There must be a cleaner way to handle this?
8518
8519         * gtk/gtkrc.c: Must include windows.h on Win32.
8520
8521         * gtk/testgtk.c: No need to include gdkx.h.
8522
8523         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
8524
8525 1999-12-07  Tor Lillqvist  <tml@iki.fi>
8526
8527         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
8528         the rbearing is set to the same as the width, but this should be
8529         fixed.
8530
8531 1999-12-06  Tor Lillqvist  <tml@iki.fi>
8532
8533         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
8534         function. If Windows doesn't tell us what Unicode subranges a font
8535         covers, guesstimate based on the codepages it covers. This will
8536         hopefully help those Windows versions or fonts that don't give us
8537         any useful Unicode subrange information with GetTextCharsetInfo.
8538         Call this function in gdk_font_load_internal.
8539
8540         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
8541         minor changes.
8542
8543 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
8544
8545         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
8546         New function, long needed.
8547
8548 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
8549
8550         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
8551         only_if_exists argument of gdk_atom_intern to
8552         bool.
8553
8554 1999-11-25  Tor Lillqvist  <tml@iki.fi>
8555
8556         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
8557         Fix two copy&paste errors.
8558
8559         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
8560         win32 has changed.
8561
8562         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
8563         GdkWin32SingleFont struct.
8564
8565         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
8566         subranges of loaded fonts. Clear font signature first, in case
8567         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
8568         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
8569
8570         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
8571         Unoffset clip region.
8572
8573 1999-11-23  Tor Lillqvist  <tml@iki.fi>
8574
8575         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
8576         event->any.window before calling filter functions.
8577
8578 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
8579
8580         * gtk/gtkgamma.h: Adapt cast macros to standard.
8581
8582 [ Merges from 1.2 ]
8583
8584 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
8585
8586         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
8587         If translation does not include a '/', use entire
8588         translation instead of crashing.
8589
8590 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
8591
8592         * docs/gtk_tut.sgml:
8593         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
8594
8595 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
8596
8597         * gtk/gtkselection.c (gtk_target_list_remove): Use
8598         g_list_remove_link, not g_list_remove.
8599
8600         [ From Geert Bevin <gbevin@thunderstorms.org> ]
8601         
8602 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
8603
8604         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
8605         statement upon unselection (how the heck did that slip in?).
8606
8607 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
8608
8609         * gtk/gtktext.c (gtk_text_freeze): 
8610         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
8611         in frozen state (and aparently crashes). patch provided by Anders
8612         Melchiorsen <and@kampsax.dtu.dk>.
8613
8614 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
8615
8616         * fix insensitive default/focus widget activation,
8617         reported by Matt Goodall <mgg@isotek.co.uk>.
8618
8619         * gtk/gtkwindow.c (gtk_window_key_press_event): 
8620         (gtk_window_activate_default):
8621         (gtk_window_activate_focus):
8622         return handled=FALSE for actiavtion of insensitive default
8623         widgets. return handled=TRUE for activation of insensitive
8624         focus widgets. don't activate in either case.
8625
8626 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
8627
8628         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
8629         and $glib_cflags to match library order and in the
8630         theory that an old version of GLib is more likely to
8631         be in the include directory for X then vice-versa.
8632         (Bug #2776)
8633
8634 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
8635
8636         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
8637         to determine the locale for fontsets, not LC_MESSAGES;
8638         the user may want English messages with a handling
8639         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
8640         will still be broken) (Bug #2891)
8641
8642 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
8643
8644         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
8645
8646 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
8647
8648         * gtk/gtkrc.ko: Changed the Korean default fontset.
8649
8650 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
8651
8652         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
8653         where when scrolling to the left or top double exposes
8654         were done, causing major slowdowns.
8655
8656 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
8657
8658         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
8659         names to lowercase and alphanumeric, before looking
8660         them up.
8661
8662         * gtk/Makefile.am: Install codeset variant gtkrc files
8663         with normalized names.
8664
8665 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
8666
8667         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
8668         popup menus when the menu is already visible, but its parent
8669         is still hidden, (happens after tornoff window got hidden).
8670
8671 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
8672
8673         * gtk/Makefile.am (install-data-local): Fix
8674         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
8675         deleted, causing error messages on install.
8676
8677 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
8678
8679         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
8680         the handle as well, since we now sometimes ignore
8681         exposes on the handle while resizing.
8682
8683 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
8684
8685         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
8686         extra g_free introduced in one of the last one or two 
8687         commits.
8688
8689 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
8690
8691         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
8692         consistent, put each style that a gtkrc.* file creates
8693         in a unique namespace, remove old files before installing.
8694
8695 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
8696
8697         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
8698         gtk_rc_init is called multiple times. (Yes, people who
8699         do that have bugs in their code.)
8700
8701 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
8702
8703         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
8704         Remove it since it's generated by the Makefile anyway
8705
8706 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
8707
8708         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
8709         device->info.axes for core pointer.
8710
8711 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
8712
8713         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
8714         idle_id, to deal with obsolete, broken C libraries.
8715
8716 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
8717
8718         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
8719         allocation->x/y twice!
8720
8721         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
8722         consistent with gtk_vscale_pos_trough().
8723
8724 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
8725
8726         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
8727         be queueing a resize on a toplevel container between
8728         the time we show it and when we map it. So, we need
8729         to test GTK_WIDGET_VISIBLE() for toplevels, and only
8730         use GTK_WIDGET_DRAWABLE() for child windows.
8731
8732 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
8733
8734         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
8735         (fixes bug #2144)
8736
8737 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
8738
8739         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
8740         container DRAWABLE (instead of VISIBLE), so we don't queue
8741         resizes on non-toplevel containers.
8742
8743 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
8744
8745         * gtk/gtkselection.[ch]: Make the data argument
8746         const guchar *.
8747
8748 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
8749
8750         * gtk/gtkwindow.c: Try to behave sensibly if 
8751         the focus widget is the window itself. (Should
8752         we allow this at all?)
8753
8754 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
8755
8756         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
8757         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
8758         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
8759         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
8760         in prototypes and implementations consistent (Tomas Ogren).
8761
8762         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
8763         before the widget is unparented (reported by damon).
8764
8765         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
8766         since we provide unsigned data anyways.
8767
8768 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
8769
8770         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
8771         the call to gtk_tooltips_layout_text() until later.
8772
8773         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
8774         Call gtk_widget_ensure_style() before using the style.
8775
8776 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
8777
8778         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
8779         for old widgets that don't propagate draws to all
8780         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
8781
8782 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
8783
8784         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
8785         for a redraw but just the widget that requested the resize.
8786
8787 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
8788
8789         * gtk/gtkcontainer.c: added new widget level method
8790         gtk_container_set_reallocate_redraws() and a GtkContainer flag
8791         reallocate_redraws : 1 to reflect the setting, exported this through
8792         the argument system as a boolean ::reallocate_redraws.
8793
8794         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
8795         on the widget because the allocation changes, do so as well for
8796         widget->parent if the parent has reallocate_redraws set to TRUE.
8797         with that containers requesting reallocation redraws get automatically
8798         redrawn if their children changed allocation (this unfortunately
8799         affects also other children that didn't change allocation, but we
8800         cannot work around that before 1.3).
8801
8802 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
8803
8804         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
8805         _and_ height are >0 (not _or_).
8806
8807         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
8808         instead of gtk_container_queue_resize(), which is a core gtk internal
8809         function (must have been on crack when i queued that).
8810
8811         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
8812         we can check more reliably if we want to discard expose events.
8813         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
8814         flag.
8815         
8816         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
8817         we simply trust these events. for deciding whether to discard exposes,
8818         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
8819         
8820 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
8821
8822         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
8823         queues of areas that are completely off screen.
8824
8825         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
8826         logic for handleboxes.
8827
8828         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
8829         check on width/height.
8830
8831 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
8832
8833         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
8834         we are fine with using $@ the way we do (if we actually encounter
8835         brokeness with $@ in VPATH builds because of additional path prefixes,
8836         we need to use $(@F) actually).
8837
8838 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
8839
8840         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
8841         short lived bugs, that would allow language bindings to do surgeries
8842         to our guts.
8843
8844 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
8845
8846         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
8847         where comparison was being done against an uninitialized
8848         value causing intermittant results depending on
8849         compiler flags. Also make it clearer that we aren't
8850         ever initializing the child as 0x0 (though this will
8851         be caught in gtk_widget_size_allocate())
8852
8853 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
8854
8855         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
8856         gtk_window_unset_transient_for() call after we do checks
8857         involving the old transient parent.
8858         [ From Lance Capser <lmc@cyberhighway.net> ]
8859
8860 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
8861
8862         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
8863         an empty file.
8864
8865 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
8866
8867         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
8868         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
8869
8870 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
8871
8872         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
8873         `$@' is valid only in the build dir, not after we've done 
8874         `cd $srcdir'.  Also use `test -f' instead of less portable
8875         `test -e'.
8876
8877 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
8878
8879         * gtk/gtktext.c (correct_cache_insert): Rewrite
8880          for simplicity, and hopefully correctness.
8881          (Fixes bug #1322, which was a segfault when
8882           on some insertions with the properties around
8883           the insertion set up just wrong.)
8884
8885         * gtk/gtktext.c (gtk_text_adjustment): When we receive
8886          a "changed" signal, clamp the new value to the adjustment
8887          bounds to avoid segfaulting if someone tries to change
8888          the adjustment to a bogus value. (Bug #1795)
8889
8890 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
8891
8892         * gtk/gtkmain.c: Ignore unexpected destroy notifies
8893         for children, for toplevel windows handle them
8894         like delete_event.
8895
8896         * gtk/gtkplug.c: Add an unrealize handler so that
8897         we unref plug->socket_window when we are done
8898         with it.
8899
8900 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
8901
8902         * gtk/gtktext.c (clear_area): Fix stupid signedness
8903          problem that was causing background to sometimes
8904          be misaligned.
8905
8906 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
8907
8908         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
8909         
8910         * gtk/gtkmenu.c (gtk_menu_position): Make
8911          sure we never position menus with negative x, y,
8912          since gtk_widget_set_uposition() can't handle that.
8913
8914         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
8915          Modify the positioning code a bit so that we always
8916          put the top-left corner onscreen. (This is for
8917          UI reasons, gtk_menu_position() now takes care of
8918          gtk_widet_set_uposition() brokeness.)
8919
8920 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
8921
8922         * gtk/Makefile.am: fixed up things for -jx, x > 1.
8923
8924 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
8925
8926         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
8927           RC style that is passed in. The lack of the ref
8928           before was a bug. If people worked around this
8929           bug, this will introduce a slight memory leak
8930           in their code. The code should typically look like:
8931
8932             rc_style = gtk_rc_style_new ();
8933             [...]
8934             gtk_widget_modify_style (widget, rc_style);
8935             gtk_rc_style_unref (rc_style);
8936
8937         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
8938           the style if it was already set.
8939
8940         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
8941           style if it was set before.
8942
8943 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
8944
8945         * gtk/testgtk.c (main): Add a check to see if we
8946           are being run from the correct directory and
8947           to quit nicely if we are not.
8948
8949         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
8950           static.
8951
8952 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
8953
8954         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
8955
8956         * gtk/gtkwindow.c:
8957         queue resizes unconditionally (gtk_widget_queue_resize will figure
8958         what to do if the window is not realized).
8959         (gtk_window_move_resize): only recenter the window
8960         for GTK_WIN_POS_CENTER_ALWAYS.
8961         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
8962         the same way as GTK_WIN_POS_CENTER.
8963
8964 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
8965
8966         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
8967         with (!(info->last_flags & GDK_HINT_POS)) instead of
8968         (!info->last_flags & GDK_HINT_POS).
8969
8970         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
8971         new_height unconditionally, because we use these values even if
8972         !default_size_changed && !hints_changed.
8973         comented the (default_size_changed || hints_changed) case with
8974         respect to resize rejects from the window manager.
8975
8976         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
8977         in the zvt condition hack, since this includes the window hints, set
8978         the hints after the handling_resize case.
8979
8980         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
8981         window is initially shown with to the geometry.
8982
8983 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
8984
8985         * gtk/gtkwindow.c (gtk_window_move_resize):
8986         s/size_changed/default_size_changed/g so i know what's
8987         really going on (frying brain on smaller flame now).
8988
8989 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
8990
8991         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
8992         we have size_changed upon handling_resize. this is a gross
8993         workaround for the broken zvt widget and should be removed in
8994         1.3 again (search for FIXME).
8995         Owen provided an accurate comment for this:
8996
8997         /* We could be here for two reasons
8998          *  1) We coincidentally got a resize while handling
8999          *     another resize.
9000          *  2) Our computation of size_changed was completely
9001          *     screwed up, probably because one of our children
9002          *     is broken. It's probably a zvt widget.
9003          *
9004          * For 1), we could just go ahead and ask for the
9005          * new size right now, but doing that for 2)
9006          * might well be fighting the user (and can even
9007          * trigger a loop). Since we really don't want to
9008          * do that, we requeue a resize in hopes that
9009          * by the time it gets handled, the child has seen
9010          * the light and is willing to go along with the
9011          * new size. (this happens for the zvt widget, since
9012          * the size_allocate() above will have stored the
9013          * requisition corresponding to the new size in the
9014          * zvt widget)
9015          *
9016          * This doesn't buy us anything for 1), but it shouldn't
9017          * hurt us too badly, since it is what would have
9018          * happened if we had gotten the configure event before
9019          * the new size had been set.
9020          */
9021
9022 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
9023
9024         * gtk/gtkrc.c: deal properly with the fact that RC
9025           style lists may include rc styles more than once.
9026
9027         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
9028           unused static function.
9029
9030         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
9031           stack of directories of RC files currently being
9032           parsed and implicitely add them to pixmap path.
9033           
9034           This fixes a bug where the directory would get
9035           appended then overwritten by pixmap_path declarations.
9036
9037           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
9038
9039         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
9040           theme's exit function. (Patch from Peter Wainwright,
9041           bug #1454)
9042
9043         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
9044           Add a destroy() handler to take care of removing
9045           group for menu item. (Fixes bug #1197)
9046
9047         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
9048           in warning message.
9049
9050 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
9051
9052         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
9053         roundtrip to figure window's width and height, since we know that
9054         anyways from widget->allocation.
9055
9056 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
9057
9058         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
9059           the hints after we request the new size.
9060
9061 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
9062
9063         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
9064           GTK_WIDGET_REALIZED() assertion - we can compute the
9065           hints before we are realized.
9066
9067         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
9068           hint changing so that we have a value of hints_changed
9069           when we decide whether to constrain the window size.
9070
9071         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
9072
9073         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
9074         change back to G_MAXINT.
9075
9076 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
9077
9078         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
9079         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
9080         contain uncluttered values.
9081         (gtk_window_compute_hints): simply assert that window is realized
9082         and that geometry_info is valid, since we rely on this anyways.
9083         (gtk_window_constrain_size): major cleanups to the code.
9084         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
9085         for the base size, instead of the minimums. use 32767 as max width
9086         and height (like in gtkwindow.c) instead of G_MAXINT.
9087
9088 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
9089
9090         * cleaned up the GtkContainer.need_resize flag handling mess, we
9091         only need to force resize requests when we were prematurely
9092         realized, or our widget tree was modified when we were temporarily
9093         hidden. handling these cases directly upon showing the window (i.e.
9094         while the GdkWindow is still unmapped) avoids the need to wait for
9095         a configure event response and therefore makes the GUI more snappier
9096         and avoids blank windows during the roundtrip.
9097
9098         * gtk/gtkwidget.c:
9099         (gtk_widget_hide): 
9100         (gtk_widget_show): don't queue resizes on toplevels, they know how
9101         to deal with matters.
9102
9103         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
9104         flag directly for not visible resize containers and spare us unecessary
9105         signal emissions.
9106
9107         * gtk/gtkwindow.c:
9108         (gtk_window_realize): if we need to enforce premature size allocation,
9109         queue a container resize so we are correctly resized later on.
9110         (gtk_window_init):
9111         (gtk_window_size_request):
9112         don't freak around with the ->need_resize flag,
9113         gtk_container_queue_resize() will care about that.
9114         (gtk_window_show):
9115         handle initial resizing issues here, we can handle matters better in
9116         this place, especially since we know that our GdkWindow is still
9117         unmapped.
9118         (gtk_window_move_resize):
9119         don't care about ->need_resize at all.
9120         handle size changes properly that occoured while we waited for a
9121         configure event.
9122
9123 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
9124
9125         * gtk/gtkwidget.c (gtk_widget_set_uposition):
9126         * gtk/gtkwindow.[hc] (gtk_window_reposition):
9127         Move the hint setting code from gtk_widget_set_uposition
9128         to here; set the hints so that we respect any previously
9129         set geometry hints.
9130
9131         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
9132         change the window hints here or move the window here,
9133         let that happen in gtk_window_move_resize().
9134
9135 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
9136
9137         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
9138         to already queued resizes (and therefore redraws) on a widget, check
9139         its anchestry as well.
9140
9141         * gtk/gtkcontainer.c:
9142         (gtk_container_queue_resize): clear resize widgets for resize
9143         containers before aborting prematurely. this is especially important
9144         for toplevels which may need imemdiate processing or their resize
9145         handler to be queued.
9146         (gtk_container_dequeue_resize_handler): added new internal function for
9147         gtkwindow.c.
9148
9149         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
9150         configure event, take possible changes in window position into account
9151         as well.
9152         if we request a new window size, queue up a resize handler that will
9153         last until the configure event response arrives.
9154         combined the ->need_resize case (initial show) with the general size
9155         (hints) changed case and added even more comments.
9156         if !auto_shrink, only revert to the old allocation if the new size
9157         is smaller than the current allocation.
9158
9159 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
9162                            gtk_window_set_geometry_hints
9163                            gtk_window_set_default_size):
9164         When hints are set, queue a resize so that the hints will
9165         be eventually reset on the toplevel.
9166
9167         * gtk/gtkwindow.c (gtk_window_show): Use
9168         gtk_window_compute_default_size(). Clear the need_resize flag
9169         on the initail map so that we don't unnecessarily trigger the
9170         resize code.
9171
9172         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
9173         into separate functions. Compare the hints we are setting
9174         with what we set last time so that we can accurately
9175         tell when we need to reset the hints.
9176
9177         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
9178         function to figure out the size from requisition
9179         and default_size.
9180
9181         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
9182         from fvwm to constrain a size to the geometry hints.
9183
9184         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
9185         to compare two sets of geometry hints.
9186
9187         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
9188         from gtk_window_set_hints(), just compute the hints,
9189         don't set them.
9190
9191         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
9192         code from gtk_window_move_resize() to separate function,
9193         rationalize a bit.
9194
9195 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
9196
9197         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
9198         structure into a new private structure.
9199
9200         * gtkrc.c: Split GtkRcStyle into public/private.
9201         In the private part, add a list of pointers to the
9202         RcStyle lists this RcStyle participates in.
9203
9204         * gtkrc.c: When a RcStyle is free, remove all
9205         lists referencing it from the 
9206         realized_style_ht hash, and free those lists.
9207         
9208         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
9209         gtk_rc_init(), since that adds the default styles
9210         to the list of parsed RC files again.
9211
9212         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
9213         
9214 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
9215
9216         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
9217         checks that ensure that a widget's allocation is at least 1 in width
9218         and height. (GNOME note: this doesn't affect old panel code anymore,
9219         because GtkSocket will request width and height of at least 1 since
9220         Fri Jul 23).
9221
9222         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
9223         allocated yet (happens if the user realizes the window prematurely),
9224         size request and allocate it.
9225         (gtk_window_size_allocate): guard against guint underflows.
9226
9227 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
9228
9229         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
9230         in gtk_built_sources, so gtk.defs gets built prior to all other
9231         sources.
9232
9233 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9234
9235         * gtk/Makefile.am:
9236         invoke indent on gtkmarshal.*. 
9237         rewrote source generation rules, use COPYING as oldest source tag for
9238         a piggyback rule to generate all sources from (don't touch it ;).
9239         major cleanups, strip spaces on build rules for GNU Make.
9240
9241         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
9242         source and target files from commandline arguments. don't invoke indent.
9243
9244 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
9245
9246         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9247         notebook after switch to avoid drawing problems.
9248         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9249         
9250         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
9251         show them instead. 
9252         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9253
9254 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
9255
9256         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9257         notebook after switch to avoid drawing problems.
9258         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9259         
9260         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
9261         show them instead. 
9262         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9263
9264 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
9265
9266         * gtk/gtkwindow.c:
9267         we use window->need_resize from configure_event now, to indicate that
9268         the gtkwindow should keep its allocation (e.g. because the user resized
9269         the window through window manager handles). resize_count is now reliably
9270         used to figure whether we got the allocation we requested from the
9271         window manager.
9272         configure events get queued as resizes now, the real stuff (size
9273         computation and allocation) now only goes on in gtk_window_move_resize().
9274         GtkWindow's requisition now contains its *real* requisition (like all
9275         other widgets), *not* taking usize into account.
9276         geometry_info->last_{width|height} is now updated from set_hints() only
9277         so it always contains the last hints we set for the window manager.
9278         made some event handlers return TRUE instead of FALSE.
9279         the overall code should be much more straight forward now, and the
9280         significant code portions are accompanied by comments now.
9281         (gtk_window_set_hints):
9282         removed requisition argument and made it
9283         fetch the requisition through gtk_widget_get_child_requisition.
9284         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
9285         does that now.
9286         (gtk_window_show):
9287         ensure that the widget is realized before calling 
9288         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
9289         ensure that we got properly size requested and allocated before
9290         realization.
9291         (gtk_window_configure_event):
9292         ignore plain window moves, or reallocate the widget tree through the
9293         resize queue otherwise.
9294         (gtk_window_move_resize):
9295         mostly rewrote this function to figure window manager hints more
9296         reliably, coalesce window moves and resizes to reduce configure events
9297         and do actuall size allocations.
9298
9299 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
9300
9301         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
9302         that have a resize pending, because a redraw is already queued for them.
9303
9304         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
9305         hack to clear resize_widgets.
9306
9307         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
9308         for resize containers prior to size allocation. (this is also a bit
9309         ugly, but avoids side effects for stopped emissions and is thus more
9310         reliable).
9311         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
9312
9313         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
9314         function from gtk_tooltips_expose, as we connect to ::expose_event
9315         *and* ::draw now.
9316
9317 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
9318
9319         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
9320         checks.
9321         (gtk_target_list_unref): Likewise.
9322
9323         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
9324
9325 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
9326
9327         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
9328         guard against division by zero. (Fixes bug #1339)
9329
9330 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
9331
9332         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
9333         Prevent the trivial leak of information of allowing
9334         word motion when the entry is not visible.
9335
9336 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
9337
9338         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
9339         modality to error dialog as well as confirmation dialogs.
9340         (Bug #1803, reported by Rosanna Wing Sze Yuen)
9341
9342 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
9343
9344         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
9345         tree->view_lines.
9346         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
9347
9348         * gtk/Makefile.am (install-data-local): Solaris apparently
9349         has various troubles with ln -f; use rm first instead.
9350         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
9351
9352 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
9353
9354         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
9355         use `cp' followed by `rm' (the `rm' was already there).
9356
9357 July 30, 1999 Elliot Lee <sopwith@redhat.com>
9358         
9359         * configure.in: Fix autoconf warnings about cross compilation by
9360         trying to provide sane defaults for AC_TRY_RUN.
9361         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
9362         put them into $(srcdir) when generated. Also add a dependency of
9363         gtksignal.h on gtkmarshal.h for -j builds. 
9364         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
9365
9366 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
9367
9368         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
9369         GDK_THREADS_{LEAVE,ENTER} pair.
9370         (From Paul Fisher <pnfisher@redhat.com>)
9371
9372 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
9373
9374         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
9375         width and height are always >0 (owen).
9376
9377 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
9378
9379         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
9380         change that assured that a widget's allocated with and height are
9381         always >1, since this breaks *buggy* panel code. unfortunately this
9382         back-breaks the gimp's color selector.
9383
9384         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
9385         allocation is always >0 in width and height, before sending the
9386         configure event; this is a *gross* hack to get the gimp back to work.
9387         
9388         * marked both cases with TODO-1.3
9389
9390 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
9391
9392         * gtk/gtktext.c: Don't display wrap indicators when
9393         text is not editable and word wrap is on.
9394
9395 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
9396
9397         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
9398         option menus here as they are not derived from menu shell, assure that
9399         the option menu has a menu we can add items to.
9400
9401 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
9402
9403         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
9404         width/height to (gint) before calculations and check against < 0 to
9405         avoid guint wraparounds.
9406
9407 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
9408
9409         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
9410         width and height is never zero. sanity check both dimensions against
9411         32767 and issue a warning if the allocation is greater than that.
9412
9413 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
9414
9415         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
9416         to g_main_pending() as well.
9417
9418 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
9419
9420         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
9421         call to g_main_iteration() - since that will regrab
9422         GTK+ lock to process events.
9423
9424 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
9425
9426         * gtk/gtkwindow.c
9427         - Regularize with the rest of GTK+ by making widget->requisition
9428           not reflect the set_usize()
9429         - Always recompute geometry hints, then check if they
9430           changed before sending them to the X server. The
9431           previous checks for changes would fail in a number
9432           of circumstances. 
9433
9434 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
9435
9436         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
9437
9438 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
9439
9440         * gtk/gtkdnd.c:
9441         - Code cleanups
9442         - Instantaneously update on modifier key presses
9443         - Allow cancellation of the drag with Escape.
9444
9445 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
9446
9447         * gtk/testgtk.c (create_handle_box): Set the policy
9448         to auto_shrink - otherwise the appearance is rather
9449         strange when flipping between horizontal and vertical.
9450
9451 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
9452
9453         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
9454         (gtk_window_set_default_size): don't change a value if it's < 0.
9455         queue a resize.
9456
9457 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
9458
9459         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
9460
9461 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
9462
9463         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
9464         add an extra "/" when concating "/" + filename.
9465         (From Matt Grossman <mattg@oz.net>)
9466
9467 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
9468
9469         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
9470         for fg_gc if we set it for drawing pixmap.
9471
9472 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
9473
9474         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
9475         
9476         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
9477         already set, call old engine's destroy function and
9478         unref the old engine.
9479
9480 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
9481
9482         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
9483
9484 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
9485
9486         * gtk/gtkaccelgroup.h: mark certain functions as internal.
9487
9488 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
9489
9490         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
9491         expand behaviour changed.
9492
9493         * gtk/gtklabel.c (gtk_label_set_pattern):
9494         (gtk_label_set_justify):
9495         (gtk_label_set_line_wrap):
9496         don't bother invoking queue_clear, the reallocation does
9497         that for us, always free_words so the upcoming resize will
9498         relayout the label's contents.
9499
9500 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
9501
9502         * applied argument implementation patches from Elena Devdariani
9503         <elena@cogent.ca>.
9504
9505         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
9506         ::space_style, ::relief
9507         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
9508         * gtk/gtkpreview.c: ::expand
9509         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
9510         * gtk/gtknotebook.c: ::homogeneous
9511         * gtk/gtklabel.c: ::wrap
9512         * gtk/gtklist.c: ::selection_mode
9513         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
9514         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
9515         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
9516         * gtk/gtkclist.c: ::sort_type
9517         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
9518         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
9519
9520 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
9521
9522         * gtk/gtkstyle.c: Removed ill-thought-out part of last
9523         comment.
9524
9525 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
9526
9527         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
9528         counting right when we have to attach a new style
9529         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
9530
9531         * gtk/gtkstyle.c: Documented the refcounting
9532         peculularities of gtk_style_attach.
9533
9534 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
9535
9536         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
9537         window types.
9538
9539         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
9540         of GTK_TOPLEVEL for creating the window.
9541
9542 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
9543
9544         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
9545         the last argument (reported by Per Winkvist).
9546         
9547 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
9548
9549         Fixes for invisible XOR lines (Frank Loemker
9550         <floemker@TechFak.Uni-Bielefeld.DE>)
9551         
9552         * gtk/gtkclist.c (gtk_clist_realize): Always use
9553         a non-zero pixel for GDK_XOR.
9554
9555         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
9556         Use GDK_INVERT instead of GDK_XOR.
9557
9558 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
9559
9560         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
9561         signals if h/voffsets differ from adjustment values.
9562         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
9563
9564 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
9565
9566         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
9567         ::selection-done emissions up to the topmost menu shell.
9568
9569 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
9570
9571         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
9572         the user data on the window before destroying it.
9573
9574         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
9575         unrealize handler to take care of destroying 
9576         notebook->panel properly. 
9577         (Bug #1198 - Morten Welinder <terra@diku.dk>)
9578
9579         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
9580         of g_new and g_realloc to stop memory leak. (Actually,
9581         we could just use g_realloc(), but I'm not 100% sure
9582         that is portable).
9583         (Bug #1196 - Morten Welinder <terra@diku.dk>)
9584
9585 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
9586
9587         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
9588
9589         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
9590         for fontsets.
9591
9592         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
9593         with bin/button confusion.
9594
9595 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
9596
9597         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
9598         and show how preselection of radio items is done.
9599
9600 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
9601
9602         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
9603         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
9604         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
9605         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
9606         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
9607         * gtk/gtktable.c (gtk_table_attach): 
9608         * gtk/gtklist.c (gtk_list_insert_items): 
9609         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
9610         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
9611         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
9612         * gtk/gtkbin.c (gtk_bin_add): 
9613         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
9614         * gtk/gtkfixed.c (gtk_fixed_put): 
9615         * gtk/gtklayout.c (gtk_layout_put):
9616         general fixups to container_add logic. always realize child if
9617         child->parent is realized, only map the child and queue a resize
9618         if child and child->parent are both visible.
9619
9620 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
9621
9622         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
9623         instead of gtk_container_foreach to walk and unrealize children, so
9624         composite children get also unrealized.
9625         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
9626         (gtk_widget_map): assert that the widget is visible (basic constrain).
9627         (gtk_widget_real_map): assert that the widget is realized (basic
9628         constrain).
9629
9630 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
9631
9632         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
9633
9634 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
9635
9636         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
9637         file for iso-8859-2 locales.
9638
9639         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
9640
9641 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
9642
9643         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
9644          (Pointed out by andy@rz.uni-karlsruhe.de and others).
9645          Remove some suspicious and useless lines. 
9646
9647 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
9648
9649         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
9650         width,height = 0, 0 to mean - here to edge of window,
9651         instead of -1, -1, since the former is all we support.
9652
9653 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
9654
9655         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
9656         when removing from quit_functions list.
9657
9658 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
9659
9660         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
9661
9662 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
9663
9664         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
9665          When redrawing characters on non-visible entry, use appropriate
9666          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
9667
9668 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
9669
9670         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
9671         from drag coordinates.
9672         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
9673         use drag_dest_cell.
9674
9675         * gtk/gtktree (drag_dest_cell)
9676         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
9677         (Bug #1129)
9678
9679 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
9680
9681         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
9682         translate_* fields.
9683         (gtk_item_factory_finalize): invoke translate_notify independant from
9684         translate_data.
9685         (gtk_item_factory_set_translate_func): likewise.
9686         (gtk_item_factory_destroy): only remove ifactory pointer from those
9687         widgets that belong to us (stupid me).
9688
9689 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
9690
9691         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
9692         rc_style list when lookup succeeeds.
9693
9694 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
9695
9696         * gtk/gtkctree.c (resync_selection): 
9697         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
9698         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
9699         bug.
9700
9701 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
9702
9703         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
9704         Add some missing GDK_THREADS_ENTER()/LEAVE around
9705         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
9706
9707 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
9708
9709         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
9710         rather than emit_by_name.
9711
9712         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
9713         on the widget across multiple signal emissions.
9714         (gtk_editable_delete_text): same here.
9715         (gtk_editable_class_init): set widget_class->activate_signal after
9716         editable_signals[ACTIVATE] has been created.
9717
9718 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
9719
9720         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
9721         position here prematurely -- we might not have the
9722         right ->min_position and ->max_position yet.
9723
9724 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
9725
9726         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
9727         Add error traps so if the other end of the connection
9728         dies, we survive.
9729
9730         * gtk/gtkselection.c (gtk_selection_notify): Clean
9731         up properly when selection property retrieval fails.
9732         
9733         * gtk/gtkselection.c (gtk_selection_request): Correctly
9734         reject SelectionRequest notifies where the handler
9735         returns no data.
9736
9737 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
9738
9739         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
9740         when we've previously highlighted.
9741
9742         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
9743         emit two "drag_leave" signals for Motif drops.
9744
9745         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
9746         back the correct status messages when dropping from
9747         Motif onto a proxy window that is rejecting the
9748         drop.
9749
9750 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
9751
9752         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
9753         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
9754         to compare two argument values. added gtk_arg_to_valueloc() to set a
9755         variable from an arg through its location (pointer).
9756
9757         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
9758         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
9759         as gfloat*, uchars are collected as guchar*, ints are collected as
9760         gint*, etc...
9761
9762 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
9763
9764         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
9765         Include <string.h> instead of <strings.h>.
9766
9767         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
9768         (actually, a lot more duplicate includes occur if
9769          you trace through the sequence of #include's)
9770         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
9771         
9772 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
9773
9774         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
9775         gtk-a-higuti-990322-[0-3]
9776
9777         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
9778         that was causing -DX_LOCALE not to work.
9779
9780         * gtk/gtkrc.c (gtk_rc_init):
9781         X_LOCALE will never have LC_MESSAGES defined
9782
9783 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
9784
9785         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
9786         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
9787
9788         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
9789         left/right as well (gtk-michael-980726-0.patch.gz).
9790
9791         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
9792         for pointer values, use gchar instead of char. fixed uline allocation
9793         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
9794         chunks instead of G_ALLOC_ONLY.
9795         (gtk_label_size_request): always alter requisition as passed and leave
9796         widget->requisition alone.
9797         (gtk_label_set_text): allow NULL strings.
9798         (gtk_label_new): likewise.
9799
9800 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
9801
9802         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
9803
9804 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
9805
9806         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
9807         *and* mapped (i.e. drawable).
9808         (gtk_bin_expose): only send exposes to drawable children.
9809
9810         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
9811         (gtk_box_expose): only send exposes to drawable children.
9812
9813         * gtk/gtkhscale.c (gtk_hscale_draw): 
9814         * gtk/gtkvscale.c (gtk_vscale_draw):
9815         hm, this is an ugly one. we first compute the size of our trough area
9816         here (window relative) and then check intersection with the draw_area
9817         which is parent relative because we're a NO_WINDOW widget, so we need
9818         to offset the trough area by allocation.x and allocation.y before the
9819         check. (this must not be done for the background area though, since
9820         that's already computed parent relative).
9821
9822 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
9823
9824         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
9825         unrealize title buttons.
9826
9827 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
9828
9829         * gtk/gtkclist.c (gtk_clist_column_title_passive)
9830         (gtk_clist_column_title_active): 
9831         only connect/disconnect to GtkWidgetClass::event to block mouse events.
9832
9833         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
9834         zero initialize event, removed superfluous gdk_window_get_pointer call
9835
9836         * gtk/gtklist.c (gtk_list_vertical_timeout)
9837         (gtk_list_horizontal_timeout): removed superfluous
9838         gdk_window_get_pointer call
9839
9840 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
9841
9842         * plugging problems reported by "Bruce Mitchener, Jr."
9843         <bruce@puremagic.com> due to a purify session.
9844
9845         * gtk/gtkstyle.c:
9846         (gtk_style_ref): 
9847         (gtk_style_unref): assert ref_count to be > 0.
9848
9849         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
9850         the requisition.
9851         (gtk_clist_set_shift): likewise.
9852
9853         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
9854         adjustments.
9855
9856         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
9857         event before sending it and set send_event to TRUE (which needs to
9858         be done for *all* synthesized events).
9859         (gtk_list_vertical_timeout): likewise.
9860
9861         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
9862         leaks.
9863
9864         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
9865         to TRUE when synthesizing events.
9866
9867 [ *** end of merges from 1.2 *** ]      
9868         
9869 1999-11-21  Tor Lillqvist  <tml@iki.fi>
9870
9871         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
9872         (or copied from gdkconfig.h.win32 on Win32, sigh).
9873
9874         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
9875
9876         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
9877
9878         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
9879
9880         * gdk/gdkconfig.h.win32: New file.
9881
9882         * gdk/win32/makefile.cygwin: Build just a static archive here.
9883
9884         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
9885         for the DLL from the static archive built above.
9886
9887         * gdk/gdk.def: Moved here from the win32 subdirectory.
9888
9889         * gdk/win32/*: Adapt for the changed private struct organisation.
9890
9891         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
9892
9893 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
9894
9895         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
9896         for wheel mice (buttons 4 and 5).
9897
9898 1999-11-18  Tor Lillqvist  <tml@iki.fi>
9899
9900         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
9901         drawables use just the pixel field in the foreground and
9902         background GdkColor of the GdkGC.
9903
9904         gdk_gc_set_{fore,back}ground() are called in the GIMP with
9905         GdkColors containing uninitialized (red,green,blue) fields, and
9906         just the pixel field filled in, and furthermore in the
9907         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
9908         It thus turns out that we really don't need to have the full
9909         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
9910         it later to have just the pixel values.
9911
9912 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9913
9914         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
9915
9916 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
9917
9918         * docs/gtkfaq.sgml: threads example from Erik Mouw.
9919         New question on GtkLabel background colors.
9920
9921         * docs/gtk_tut.sgml:
9922           - Correct the example code callback
9923             function definitions.
9924           - Update the gtkdial example code, from Frans van Schaik.
9925           - Update setselection.c to current API.
9926
9927         * examples/Makefile examples/*/*.c: Update to code
9928         listed in tutorial.
9929
9930 1999-11-10  Tor Lillqvist  <tml@iki.fi>
9931
9932         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
9933         subrange table (from the "Developing International Software for
9934         WIndows 95 and Windows NT" book) was missing the Hangul syllable
9935         block... Get the loaded font's charset correctly.
9936
9937         (Note that this, and the other *-win32.c files, still really are
9938         the old ones, the win32 subdirectory is not ready for compilation
9939         yet after the reorg.)
9940
9941 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
9942
9943         * gtk/gtkclist.c: Fix off-by-one bug in parameter
9944         check.
9945
9946 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
9947
9948         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
9949         on results of XQueryDeviceState().
9950
9951 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
9952
9953         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
9954         we need to accesss only ->children. We need an accessor
9955         for the children.
9956
9957         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
9958         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
9959         to get rid of gdkx.h include.
9960         
9961         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
9962         and random references to 'None'.
9963
9964         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
9965         Get rid of unused #include <gdk/gdkx.h>
9966
9967         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
9968         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
9969         gdkconfig.h.
9970
9971 1999-11-08  Tor Lillqvist  <tml@iki.fi>
9972
9973         * gdk/win32/gdkdraw.c
9974         * gdk/win32/gdkfont.c
9975         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
9976         following yesterday's changes. (Unrelated to Owen's reorg.)
9977
9978 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
9979
9980         * gdk/x11/gdkinput-gxi.c: Add missing include,
9981           fix GdkWindowPrivate => GdkDrawablePrivate.
9982
9983         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
9984
9985         * gdk/x11/Makefile.am (xinput_sources): Add missing
9986         backslash to fix building with --with-xinput=none
9987
9988 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
9989
9990         Move all X specific code into the x11/ directory.
9991         Aside from shuffling things around, did the following:
9992
9993        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
9994          gdk_arg_context_* - a simple argument parsing system
9995          in the style of popt.
9996
9997        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
9998          gdk/x11/gdkprivate-x11.h:
9999          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
10000          add ->klass and ->klass_data fields. The klass_data
10001          field points to an auxilliary structure that is
10002          windowing system dependent.
10003
10004        * gdk/gdkfont.c: Make most of the measurement functions
10005          simply wrappers around gdk_text_extents().
10006
10007        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
10008          _gdk_font_strlen() function that hides the weird
10009          behavior in gtk+-1.[02] where a string is interpreted
10010          differently for 8-bit and 16-bit fonts.
10011
10012        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
10013          to store common code for synthesizing double/triple
10014          press events.
10015         
10016        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
10017          Make all the function that modify an existing GC
10018          simply wrappers around gdk_gc_set_values().
10019          
10020        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
10021          for throwing out later.
10022
10023        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
10024          GdkImagePrivate and GdkColormapPrivate to have a
10025          windowing system dependent part (GdkFontPrivateX etc.)
10026          that "derives" from the system-independent part.
10027
10028        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
10029          Got rid of the included-source-files for XInput in
10030          favor of automake conditionals. (Which didn't exist
10031          when XInput support was originally added.)
10032
10033        * gdk/gdkrgb.c: Remove the visual id from the debugging
10034          statements since that is X11 specific; print out
10035          type/depth info instead.
10036          
10037
10038 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
10039
10040         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
10041         loading duplicates of hashed fonts.
10042
10043         * gdk/gdk.c (gdk_keysym_convert_case): rename
10044         gdk_XConvertCase to gdk_keysym_convert_case, allow
10045         results to be NULL in the GTK+ style.
10046
10047         * gdk/gdkcompat.h: Started compatibility header
10048         for renames.
10049
10050 1999-11-07  Tor Lillqvist  <tml@iki.fi>
10051
10052         * gdk/win32/gdkprivate.h: New font private structures, related to
10053         fontsets.
10054
10055         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
10056         gdk_font_list_free(). On X11, will just be wrappers to
10057         XListFonts() and XFreeFontNames(). On Win32, the code previously
10058         in gtkfontsel.c is now here.
10059
10060         New function gdk_font_xlfd_create(). On X11 will get the FONT
10061         property of the font (for GDK_FONT_FONTs), or call
10062         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
10063         builds a XLFD style name from the font information in the LOGFONT
10064         struct(s).
10065
10066         New function gdk_font_xlfd_free(), which correspondingly frees the
10067         string returned by gdk_font_xlfd_create().
10068
10069         Implement fontsets on Win32. Add a function that iterates over a
10070         wide char string and calls a callback function for each substring
10071         of wide chars from the same Unicode subrange (and thus probably
10072         available in the same real font).
10073
10074         Improve the XLFD emulation a bit.
10075
10076         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
10077
10078         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
10079         Beta3, WM_IME_CHAR messages don't seem to contain the composed
10080         multi-byte char as with the Active IMM on Win9x. Oh well, handle
10081         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
10082         ImmGetCompositionStringW() to get the composed Unicode chars.
10083
10084         * gdk/win32/gdkgc.c
10085         * gdk/win32/gdkdraw.c: Changes needed because of the font private
10086         struct changes.
10087
10088         * gdk/win32/gdk.def: Add the new functions.
10089
10090 1999-11-04  Tor Lillqvist  <tml@iki.fi>
10091
10092         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
10093         get the Platform SDK to get <dimm.h>.
10094
10095         * gdk/win32/gdkevents.c: More event handling fixes and
10096         simplification. Never generate motion events with is_hint true. We
10097         used to do that on bogus grounds earlier. Windows sends
10098         WM_MOUSEMOVE messages on button events even if the mouse hasn't
10099         moved, ignore these.
10100
10101         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
10102
10103         * gdk/win32/gdkglobals.c
10104         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
10105         the TrackMouseEvent function, and use it.
10106
10107         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
10108         char before calling WideCharToMultiByte in order to get a string
10109         for the window title.
10110
10111         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
10112
10113         * gdk/win32/gdk.def: Remove obsolete functions.
10114
10115         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
10116         /nodefaultlib and /defaultlib switches.
10117
10118         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
10119
10120 1999-10-31  Tor Lillqvist  <tml@iki.fi>
10121
10122         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
10123         EuroSign).
10124
10125         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
10126         same type as GdkWChar, especially on Win32.
10127
10128         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
10129
10130         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
10131         before passing to Windows GDI for drawing etc. Convert to the
10132         system default codepage before passing to Windows as window
10133         titles.
10134
10135         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
10136         support changing input locale on the fly.
10137
10138         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
10139         on-the-fly changes. Convert incoming characters from the current
10140         codepage to Unicode (and then to a UTF-8 multi-byte string) based
10141         on the current input language. Use keysym<->Unicode mapping tables
10142         and functions borrowed from xterm sources.
10143
10144         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
10145         editions of Win9x, use the ActiveX-based Active IMM (Input Method
10146         Manager) if available. IMEs and the Active IMM are available under
10147         the disguise of Chinese, Korean and Japanese support for IE and
10148         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
10149         support is present in all editions (as long as you install it).
10150
10151         Call DispatchMessage from gdk_events_queue() (and thus
10152         gdk_WindowProc()), instead of duplicating the code in
10153         gdk_WindowProc().
10154
10155         Reworked the grab handling and propagation code, factored out
10156         duplicated code snippets into separate functions. Other cleanups,
10157         too.
10158
10159         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
10160         the <dimm.h> header describing the Active IMM.
10161
10162         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
10163         just do the same as for "single" fonts.
10164
10165         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
10166         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
10167         the new keysyms from gdkkeysyms.h.
10168
10169         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
10170         fontset, so that gtkentry uses wide characters.
10171
10172         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
10173         GTk+'s system directory "gtk+", not "gtk".
10174
10175 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
10176
10177         * docs/gtkfaq.sgml: FAQ update
10178
10179 1999-10-21  Tor Lillqvist  <tml@iki.fi>
10180
10181         * gdk/win32/gdkprivate.h: Add more font private data.
10182
10183         * gdk/win32/gdkfont.c
10184         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
10185         fonts and strings. Now works much better. You still have to
10186         have a correct font selected, though. No fontset emulation yet.
10187
10188 1999-10-19  Tor Lillqvist  <tml@iki.fi>
10189
10190         * gtk/maketypes.awk: Use G_OS_WIN32.
10191
10192         * gtk/gtk.def: Add some missing entry points. Also some non-public
10193         ones, but PyGTK porter claims to need them.
10194
10195         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
10196         built-in type generation.
10197
10198 1999-10-14  Tor Lillqvist  <tml@iki.fi>
10199
10200         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
10201         GDK_FONT_FONT fonts (which is all we have for now, we don't
10202         emulate fontsets). The X11 version uses plain XDrawString in that
10203         case, too. The string passed to gdk_draw_text_wc seems to be in
10204         fact (at least, when used by gtkentry and gtktext) either in a
10205         single-byte charset, or a DBCS. Not Unicode.
10206
10207         This fixes the problem in gtkfontsel, where even if you had
10208         selected a font with a non-Latin1 charset (windows-greek, for
10209         instance), the preview still used Latin-1 glyphs.
10210
10211         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
10212         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
10213         (gdk_font_load): Recognize the demibold etc weights, even if we
10214         don't have the corresponding constants in the headers.
10215         (gdk_font_hash_insert): Use same hash mechanism as in the X11
10216         version. Should save font resources a bit, when we don't have
10217         multiple HFONTs for the same font.
10218
10219         * gdk/win32/gdkprivate.h: Add the names field as in the X11
10220         version.
10221
10222 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
10223
10224         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
10225         X values
10226
10227 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
10228
10229         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
10230         layout support (as mentioned on
10231         http://www.jcinteractive.com/gnome-ui/software/widgets/)
10232
10233 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
10234
10235         * gtk/fnmatch.c
10236         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
10237
10238 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
10239
10240         * configure.in (ALL_LINGUAS): Added Galician (gl)
10241
10242 1999-10-05  Tor Lillqvist  <tml@iki.fi>
10243
10244         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
10245
10246         * gdk/win32/gdkcompat.c: New file, actually provide an
10247         implementation for the deprecated functions. (Just temporarily.)
10248
10249         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
10250
10251         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
10252
10253         * gdk/win32/gdk.def gtk/gtk.def: Updates.
10254
10255 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
10256
10257         * configure.in: Added "uk" to ALL_LINGUAS.
10258         
10259 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
10260
10261         * configure.in: correct checking for BeOS check
10262
10263         * gdk/gdktypes.h
10264         * gtk/fnmatch.c
10265         * gtk/gtkfilesel.c
10266         * gtk/gtkitemfactory.c
10267         * gtk/gtkmain.[ch]
10268         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
10269
10270 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
10271
10272         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
10273         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
10274         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
10275         by Bulgarian). 
10276
10277 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
10278
10279         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
10280         Fix a reference to window_private->destroyed.   
10281
10282         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
10283         (ugly) setting of an internal GdkWindow member to use
10284         a _slightly_ cleaner macro.
10285
10286         * gdk/gdkprivate.h: Split GdkWindowPrivate into
10287         GdkDrawablePrivate and GdkWindowPrivate.
10288         Add extra macros for accessing GDK_DRAWABLE_ components.
10289
10290         * *.[ch]: Massive adjustments for the above, use the
10291         new macros in a lot of places.
10292
10293 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
10294
10295         * gdk/gdktypes.h: Make GdkDrawable the base type,
10296         not GdkWindow.
10297
10298 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
10299
10300         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
10301
10302 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
10303
10304         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
10305
10306 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
10307
10308         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
10309         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
10310
10311         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
10312
10313         * docs/gtk-config.1: Now autogenerated.
10314         * docs/Changes-1.4.txt: started
10315         
10316 1999-10-03  Tor Lillqvist  <tml@iki.fi>
10317
10318         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
10319         to #ifdef also here.
10320
10321         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
10322         Owen did to the X11 backend.
10323
10324         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
10325         ScrollWindowEx when blitting inside a window, it can't be correct
10326         in the general case.
10327
10328         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
10329         WM_GETMINMAXINFO is easier.
10330
10331         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
10332         depth equal to the bitspixel value, not the visual's depth.
10333
10334         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
10335         to 24 even if the bitspixel value is 32.
10336
10337         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
10338         need to check for depth==32 when bpp==32, depth will always be 24.
10339
10340 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
10341
10342         * docs/Changes-1.4.txt: Started
10343         
10344         * gtk/Makefile.am (gdk_headers): Include all the new headers.
10345
10346         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
10347         
10348         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
10349         into C file.
10350         
10351         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
10352         header to gdkinputprivate.h.
10353
10354         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
10355         unused since before 1.2.
10356
10357 1999-09-30  Tor Lillqvist  <tml@iki.fi>
10358
10359         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
10360         expand possible hex escapes in the font family (put there by
10361         logfont_to_xlfd if the font name isn't a legal XLFD font family,
10362         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
10363         On Win32, add hex escapes here, too.
10364
10365 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
10366
10367         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
10368         to #ifdef GDK_WINDOWING_X11.
10369
10370 [ Merges from gtk-1-2 ]
10371
10372 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
10373
10374         * configure.in: fixed "GNU Make" check to pass with new make version
10375         3.77.95.
10376
10377 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
10378
10379         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
10380         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
10381         AM_PATH_GTK() macros don't get confused by the -pre1.
10382
10383 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10384
10385         * configure.in (REBUILD): Change check for perl5
10386           to check explicitely for v >= 5.002. (5.001
10387           does not work with our scripts.)
10388
10389 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
10390
10391         * configure.in: evaluate $PERL for the perl version check. added
10392         --disable-rebuilds to give the user an option to completely disable
10393         any source autogeneration rules.
10394
10395 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
10396
10397         * configure.in: evaluate $ac_make when checking for GNU Make.
10398
10399 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10400
10401         * docs/Makefile.am: added generation.txt.
10402
10403         * Makefile.am: require automake 1.4, build README from README.in and
10404         INSTALL from INSTALL.in in dist-hook.
10405         
10406         * README.in:
10407         * INSTALL.in: new files to autogenerate README and INSTALL from.
10408
10409         * configure.in: figure whether we have GNU Make
10410
10411         * docs/generation.txt: minor additions/corrections.
10412
10413 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
10414
10415         * docs/gtkfaq.sgml: FAQ Update
10416
10417 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10418         
10419         * configure.in: Fix autoconf warnings about cross compilation by
10420         trying to provide sane defaults for AC_TRY_RUN.
10421
10422 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
10423
10424         * ltconfig
10425         * ltmain.sh: upgrade to libtool 1.3.3
10426
10427 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
10428
10429         * INSTALL: Indicate that the --with-glib= configure
10430         time flag is unsupported.
10431
10432 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
10433
10434         * docs/generation.txt: Added a file that gives
10435         documenation about the autogeneration process for
10436         various autogenerated files.
10437         
10438 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
10439
10440         * configure.in (LIBS): Look for libgmodule in the
10441         right location.
10442
10443 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
10444
10445         * docs/gtk_tut.sgml: Removed references to
10446         code examples in my directory on gtk.org as
10447         they should all be in the tutorial now.
10448
10449         * docs/gtk_tut.sgml: Added sources for dial-test
10450         and scribble-xinput programs that were previously
10451         missing.
10452
10453 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
10454
10455         * TODO: Added entry about menu keyboard navigation, removed
10456         some finished items.
10457
10458 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
10459
10460         * acinclude.m4: Standardize on func_dgettext
10461         not func_gettext, so that the checks for dgettext
10462         actually are paid attention to.
10463
10464 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
10465
10466         * configure.in (LIBS): Add $INTLLIBS into $LIBS
10467         directly, rather than repeating the checks for
10468         gettext.
10469
10470         * INSTALL: Added information about gettext and
10471         NLS support.
10472
10473         * acinclude.m4 (LIBM): Check for dgettext, not
10474         just gettext. This should hopefully fix things wrt
10475         systems with old versions of GNU gettext installed.
10476
10477 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
10478
10479         * configure.in (LIBS): Look for libgmodule in the
10480         right location.
10481
10482 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
10483
10484         * autogen.sh: add --enable-maintainer-mode
10485
10486         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
10487
10488 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
10489
10490         * docs/gtk-config.1.in:
10491           docs/Makefile.am:
10492           configure.in: gtk-config is now generated.
10493
10494         * docs/gtk-config.1: Removed, now generated.
10495
10496 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
10497
10498         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
10499         handle CreateNotify itself, still put out a debuging message for
10500         --gdk-debug=events. made the ReparentNotify debugging message more
10501         verbose.
10502         wrap xcoords translation for ConfigureEvents into an error trap,
10503         a destroy event may already be pending, and in that case, the
10504         actuall coordinate values are not at all critical.
10505
10506 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
10507
10508         * gdk/gdkcc.c: Stop leaking the color_hash all over
10509         the place. Simplify and improve the logic.
10510
10511 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
10512
10513         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
10514         for prototypes and function implementations consistent (reported
10515         by Tomas Ogren).
10516
10517 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
10518
10519         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
10520         send_event set in debugging output.
10521         (gdk_compress_exposures): default initialize the event so we don't
10522         operate on bogus values (namely send_event).
10523
10524 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
10525
10526         * gdk/gdkwindow.c: When we receive an unexpected
10527         destroy notify on one of our windows, don't just
10528         warn about it, also mark our windows as destroyed.
10529
10530 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
10531
10532         * gdk/gdkfont.c (gdk_font_hash_insert): Add
10533           name => font and name => fontset hashes. The 
10534           name => fontset hash is a _big_ win since we
10535           weren't previously caching fontsets at all and loading
10536           fontsets is expensive. The name => font hash
10537           is less of a win, but it does save us from doing
10538           repeated XQueryFont calls on the same font.
10539
10540         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
10541           list so we can remove font/fontset from hash.
10542
10543 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10544
10545         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
10546           and slightly confusing test. [ XInternAtom (,,TRUE)
10547           will never return None ].
10548
10549 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
10550
10551         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
10552           gdk/gdkwindow.c (gdk_window_set_hints):
10553
10554         Don't omit setting the properties if flags == 0 -
10555         there may be an existing set of properties there
10556         already. (Very old bug. Would it be better to
10557         delete the property instead?)
10558
10559         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
10560           spelling error in comment.
10561
10562 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
10563
10564         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
10565           to avoid stomping over gdk_error_warnings.
10566
10567         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
10568           as (bits_per_pixel + 7) / 8. This gives the same
10569           result as before for multiples of 8, but actually
10570           a "reasonable" value for 1bit or 4bit displays.
10571
10572 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10573
10574         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
10575         GNU Make.
10576
10577 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
10578
10579         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
10580         discarding configure events.
10581
10582 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
10583
10584         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
10585         refcount is greater than zero.
10586
10587         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
10588
10589         * gdk/gdkfont.c (gdk_font_unref): Likewise.
10590
10591         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
10592
10593         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
10594
10595 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
10596
10597         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
10598         that format 32 => sizeof(item) == 4. It really is
10599         sizeof(long).
10600
10601 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
10602
10603         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
10604         core dump at all on X IO errors, only core dump
10605         if --enable-debug for X errors.
10606
10607 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
10608
10609         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
10610         unknown window:" message. disabled ConfigureNotify discarding code,
10611         because it led to events being processed out of order.
10612
10613 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
10614
10615         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
10616
10617         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
10618         we export this function, supress error warnings and don't reset the
10619         error code in the first half of this function.
10620
10621         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
10622         code (instead of just -1) so gdk_error_trap_pop() reveals something
10623         actually informative about the error that happened.
10624
10625         * gdk/*.c:
10626         don't rely on gdk_error_code being -1 if an error occoured, but just
10627         gdk_error_code != 0.
10628
10629 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
10630
10631         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
10632         pointer *before* invoking the filter function, so we at least don't
10633         crash if a filter is removed that is currently executed. window filters
10634         *really* need to be made truely reentrant at some point.
10635
10636 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
10637
10638         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
10639         PropertyNotify debug messages.
10640
10641 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
10642         
10643         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
10644         
10645         * gdk/gdkim.c: Fix cut-and-paste errors for 
10646         x/y and PreeditAttributes/StatusAttributes.
10647
10648 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
10649
10650         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
10651         G_MAXINT to 2^16 to alleviate overflow problems in
10652         various window managers.
10653
10654 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
10655
10656         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
10657         for fontsets.
10658
10659 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
10660
10661         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
10662         Initialize size_hints.x and size_hints.y because kwm
10663         brokenly pays attention to them.
10664         (Bug #1181 -  Lars Heete <hel@admin.de>)
10665
10666 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
10667
10668         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
10669         return value of gdk_list_visuals(). 
10670         (Bug #1193 - Morten Welinder <terra@diku.dk>)
10671
10672 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
10673
10674         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
10675         XSetIMValues to (void *) when comparing to NULL, to workaround
10676         the problem of some compilers barfing since older X headers don't
10677         have the prototype for it.
10678
10679 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
10680
10681         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
10682         for pseudocolor where colormap->colors was double
10683         allocated.
10684
10685         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
10686         color value in the hash table with the pixel filled
10687         in so when we do later hash table lookups, the color
10688         value is correct.
10689         
10690 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
10691
10692         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
10693         making the call
10694
10695 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
10696
10697         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
10698         pointed out by Morten Welinder <terra@diku.dk>.
10699
10700 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
10701
10702         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
10703           default filter from the list
10704
10705 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
10706
10707         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
10708           default filter from the list
10709
10710 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
10711
10712         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
10713
10714         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
10715         g_strdup_printf instead of calcing the length separately
10716
10717 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
10720         that we don't do in many other places. (Fixing duplicate 
10721         #include of config.h)
10722
10723         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
10724         Otherwise, #ifndef XINPUT_NONE check in the latter
10725         doesn't work. (Bug #546)
10726
10727 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
10728
10729         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
10730         "None" case insensitive.
10731
10732 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
10733
10734         * gdk/gdkselection.c: 
10735         Add error traps so if the other end of the connection
10736         dies, we survive.
10737
10738 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
10739
10740         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
10741         dest_xid field into two fields - one for the window
10742         to send in messages, one to indicate the last looked
10743         up window for caching purposes. This is needed, so
10744         that Leave messages get the correct window.
10745
10746 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
10747
10748         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
10749         Fix warning created by people mucking around
10750         with the gsource API.
10751
10752         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
10753         Change mapping between GIOCondition and GdkInputCondition
10754         to match the way the Linux kernel does it. This should
10755         fix problems where closed pipes were no longer signalling
10756         GDK_INPUT_READ on systems with a native poll().
10757
10758 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
10759
10760         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
10761         explicitly for the string "None" - it is in the XPM
10762         spec and some servers treat unknown colors in odd ways
10763         (like asking the user!)
10764
10765 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
10766
10767         * gdk/gdkevents.c: made "->" into a "." of previous change so
10768         it compiles
10769
10770 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
10771
10772         * gdk/gdkevents.c (gdk_compress_exposures): Set the
10773         window field of the event structure before calling
10774         user filters.
10775
10776 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
10777
10778         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
10779         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
10780
10781 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
10782
10783         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
10784         intermediate text property - prevents major memory
10785         leak when gdk_use_mb.
10786         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
10787
10788 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
10789
10790         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10791         gtk-a-higuti-990322-[0-3]
10792
10793         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
10794         sizeof(wchar_t) != sizeof (GdkWChar)
10795
10796         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10797         that was causing -DX_LOCALE not to work.
10798
10799         * gtk/gtkrc.c (gtk_rc_init):
10800         X_LOCALE will never have LC_MESSAGES defined
10801
10802         * gdk/gdk.c (gdk_init_check):
10803         Remove --xim-preedit and --xim-status from argv properly.
10804
10805         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
10806         that the client window is present on the X server
10807         before we pass it to the input method.
10808
10809 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10810
10811         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
10812         if --display is specified on the command line, than
10813         the drag window will not be created on that display.
10814         
10815 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
10816
10817         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
10818         lookups with only_if_exists == TRUE were inserting
10819         bogus values into the atom cache.
10820
10821 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
10822
10823         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
10824         then reset it to NULL.
10825
10826         * gdk/gdkcolor.c:
10827         (gdk_colors_free): 
10828         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
10829         key for g_hash_table_remove() in both functions, this prevents us
10830         from accessing possibly uninitialized portions of a GdkColor structure
10831         where we are only interested in its pixel value.
10832
10833 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10834
10835         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10836         font hash table, if we have a GdkFontPrivate entry for this font
10837         already, simply increment its reference count, provided by Olaf Dietsche
10838         <olaf.dietsche+list.gtk@netcologne.de>.
10839
10840 1999-09-21  Tor Lillqvist  <tml@iki.fi>
10841
10842         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
10843         just to be sure.
10844
10845         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
10846         unused variables, leftovers from the X11 version.
10847
10848         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
10849
10850         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
10851         downcase fields on X11.
10852
10853 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
10854         
10855         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
10856         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
10857
10858 1999-09-17  Tor Lillqvist  <tml@iki.fi>
10859
10860         * gdk/win32/gdk.def: Add gdk_threads_mutex.
10861
10862         * gtk/makefile.msc: Correct path to libintl.
10863
10864         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
10865         use of gint vs. int, and gint vs. gboolean in headers and
10866         definitions. Use GtkType for the *_get_type functions. Note that
10867         these changes preserve binary compatibility.
10868
10869         * gdk/gdk.c
10870         * gdk/win32/gdk.c
10871         * gdk/gdk.h: Fix inconsistencies: gint vs int.
10872
10873         * gtk/gtkmain.c
10874         * gtk/gtkclist.c
10875         * gtk/gtkmenufactory.c
10876         * gtk/gtknotebook.c
10877         * gtk/gtkwidget.c: Fix inconsistencies, also gint
10878         vs. gboolean.
10879
10880         * gtk/gtkcolorsel.[ch]
10881         * gtk/gtkcombo.[ch]
10882         * gtk/gtkdrawingarea.[ch]
10883         * gtk/gtkgamma.[ch]
10884         * gtk/gtkhandlebox.[ch]
10885         * gtk/gtkhpaned.[ch]
10886         * gtk/gtkhruler.[ch]
10887         * gtk/gtkplug.[ch]
10888         * gtk/gtkpreview.[ch]
10889         * gtk/gtkruler.[ch]
10890         * gtk/gtksocket.[ch]
10891         * gtk/gtkstatusbar.[ch]
10892         * gtk/gtktoolbar.[ch]
10893         * gtk/gtkvbbox.[ch]
10894         * gtk/gtkvpaned.[ch]
10895         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
10896         functions.
10897
10898         * gtk/gtkgamma.h: Fix bug, missing () in call of
10899         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
10900
10901 1999-09-14  Tor Lillqvist  <tml@iki.fi>
10902
10903         * gdk/gdkcolor.c (gdk_colormap_new)
10904         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
10905         colormap->colors was allocated twice.
10906
10907         * gdk/win32/gdk.c: Remove some unused stuff.
10908
10909         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
10910         colormap.
10911
10912         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
10913         * gtk/gtklabel.h (gtk_label_get_type)
10914         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
10915         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
10916         in a couple of places, not guint.
10917
10918 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
10919
10920         * configure.in,po/et.po: added Estonian language file
10921
10922 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
10923
10924         * configure.in,po/da.po: added Danish file
10925
10926 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
10927
10928         * docs/gtkfaq.sgml: Minor FAQ Update
10929
10930 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
10931
10932         * docs/gtkfaq.sgml: FAQ update
10933
10934 1999-08-27  Tor Lillqvist  <tml@iki.fi>
10935
10936         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
10937         way to get window contents continually refreshed while resizing. I
10938         didn't like the effects myself, so it's not on by default.
10939
10940         * gdk/win32/gdkprivate.h: New flag variable
10941         gdk_event_func_from_window_proc, FALSE by default.
10942
10943         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
10944         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
10945         are passed --gdk-event-func-from-window-proc.
10946
10947         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
10948         and we have am event_func, call it instead of enqueing the event.
10949
10950 1999-08-23  Tor Lillqvist  <tml@iki.fi>
10951
10952         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
10953         Kelley: Set expose_count in GdkEventExposes correctly.
10954
10955         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
10956         MULTIPLE_WINDOW_CLASSES).
10957
10958         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
10959         for bug in NT, apparently NT *does* draw the end pixel, too, in
10960         LineTo with a one-pixel pen, so we don't have to do it ourselves.
10961
10962 1999-08-21  Tor Lillqvist  <tml@iki.fi>
10963
10964         Improvements by Hans Breuer: 
10965
10966         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
10967
10968         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
10969         CS_?REDRAW flags as they cause lots of (late) redraws when "show
10970         window contents while dragging" is turned on. Allocate at least
10971         one unique class for every GdkWindowType. If support for single
10972         window-specific icons is ever needed (eg. Dialog specific), every
10973         such window should get its own class.
10974
10975 1999-08-19  Tor Lillqvist  <tml@iki.fi>
10976
10977         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
10978         error that caused crashes.
10979
10980 1999-08-17  Tor Lillqvist  <tml@iki.fi>
10981
10982         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
10983         window, use ScrollWindowEx, and call UpdateWindow. This prevents
10984         bugs when for instance part of the window was outside the
10985         display. Thanks to Philippe Colantoni for finding and fixing this.
10986
10987 1999-08-16  Tor Lillqvist  <tml@iki.fi>
10988
10989         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
10990         endpoint calculations which were totally wrong. (A little RTFMing
10991         helps a lot ;-)
10992
10993         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
10994         from a separate directory, not from gettext, because of licensing
10995         issues (we want to use the LGPL version).
10996
10997         * README.win32: Mention the intl from glibc vs from gettext issue.
10998
10999 1999-08-13  Tor Lillqvist  <tml@iki.fi>
11000
11001         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
11002         in the key event handling: Now AltGr chars work again. Also,
11003         now Alt-digits are passed up as well as Control-digits.
11004         Pass keypad plus and minus as normal plus and minus.
11005
11006 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11007
11008         * docs/gtkfaq.sgml: FAQ Update
11009
11010 1999-07-25  Tor Lillqvist  <tml@iki.fi>
11011
11012         * README.win32
11013         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
11014         the Wintab SDK.
11015
11016         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
11017         OK, but getting closer. Guard against bogus tilt data from Wacom
11018         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
11019         enable easier building without Wintab.
11020
11021         * gdk/win32/gdkinput.h
11022         * gdk/win32/gdkevents.c 
11023         * gdk/win32/gdkwindow.c: Minor changes related related to above.
11024         
11025         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
11026         code. As we have just one visual on Win32, no sense to have it in a
11027         table, and no need for the hash table.
11028
11029         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
11030         better on white background.
11031
11032 1999-07-21  Tor Lillqvist  <tml@iki.fi>
11033
11034         * README.win32: Update gcc build instructions. Mention gettext is
11035         GPL.
11036
11037         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
11038         supported cursor size with GetSystemMetrics.
11039
11040         * gdk/win32/gdkfont.c
11041         * gtk/gtkfontsel.c: Guard against some font weight and charset
11042         symbols being undefined (in mingw32 headers).
11043
11044         * gdk/win32/makefile.cygwin
11045         * gtk/makefile.cygwin
11046         * gtk/gtkthemes.c: No longer need to have differently named
11047         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
11048
11049 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
11050
11051         * docs/gtkfaq.sgml: Long awaited FAQ update.
11052
11053 1999-07-15  Tor Lillqvist  <tml@iki.fi>
11054
11055         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
11056         it. Obscure bit manipulation needed.
11057
11058         * gdk/win32/gdkevents.c: Logging.
11059         
11060         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
11061         style (file name include compiler name) for theme engines.
11062
11063 1999-07-13  Tor Lillqvist  <tml@iki.fi>
11064
11065         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
11066
11067         * gdk/win32/gdkevents.c: Fix long-standing bug in key
11068         events. The key.string wasn't zero-terminated, still we strdup'ed
11069         it in gdk_event_copy(). Synthesize crossing events for button
11070         events before possible propagation.
11071
11072         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
11073
11074         * gdk/win32/makefile.cygwin
11075         * gtk/makefile.cygwin: Use new DLL naming style for the
11076         GCC-compiled ones.
11077
11078         * gdk/win32/makefile.msc
11079         * gtk/makefile.msc: Cosmetics mostly.
11080
11081         * gtk/gtk.def: Add missing entry points.
11082
11083         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
11084
11085 1999-07-09  Tor Lillqvist  <tml@iki.fi>
11086
11087         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
11088         or height is zero. Don't print a warning if Pie or Arc fails, they
11089         always fail (?) for very narrow ellipses.
11090
11091         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
11092         the part or the destination window corresponding to source area
11093         outside of the source drawable's boundary.
11094
11095         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
11096         anything if less than two points.
11097
11098         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
11099         return NULL. Gtk cut-and-paste inside a single program works
11100         better this way. (It always gets the clipboard contents from
11101         Windows, not from its own copy, which is cleared anyway. I can't
11102         say I fully understand what happens... Emulating the X selection
11103         and property stuff is a bit of a mess.)
11104
11105         * gdk/win32/gdkevents.c
11106         * gdk/win32/gdkproperty.c: A bit more verbose logging.
11107
11108         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
11109         that never got deleted). Revamp gdk_region_shrink.
11110
11111         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
11112         after use.
11113
11114         * gtk/gtk.def: Add some missing entry points.
11115
11116         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
11117         component.
11118
11119 1999-07-04  Tor Lillqvist  <tml@iki.fi>
11120
11121         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
11122         Control-digits specially.
11123
11124 1999-07-03  Tor Lillqvist  <tml@iki.fi>
11125
11126         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
11127
11128 1999-06-28  Tor Lillqvist  <tml@iki.fi>
11129
11130         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
11131         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
11132         finding this.)
11133
11134 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
11135
11136         * gtk+.spec.in: Corrected some typos in files section.
11137         
11138 1999-06-15  Tor Lillqvist  <tml@iki.fi>
11139
11140         * README.win32: Mention using GNU gettext.
11141         * config.h.win32: Enable NLS stuff.
11142         * gtk/makefile.msc: Use GNU gettext.
11143         * gdk/win32/gdkdnd.c: Minor header reorg.
11144         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
11145         cosmetics.
11146         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
11147         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
11148
11149 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
11150
11151         * acinclude.m4
11152         * config.guess
11153         * config.status
11154         * ltconfig
11155         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
11156
11157 1999-05-30  Tor Lillqvist  <tml@iki.fi>
11158
11159         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
11160         SafeAdjustWindowRectEx. Don't override all calls to
11161         AdjustWindowRectEx by it, but use it only in two places: When
11162         creating a new top-level window and when moving a top-level
11163         window.
11164
11165         Use screen coordinate rectangle, not client rectangle, in
11166         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
11167         when we try to place a window so that the decoration (mainly,
11168         title bar) isn't visible.
11169
11170         These changes fix the bug that showed up for instance as the
11171         GIMP's saved top-level windows moving right and down (by an amount
11172         equal to the window decoration) for each session. This bug showed
11173         up also in testgtk's "Saved Position".
11174
11175         gdk_window_resize also redone a bit.
11176
11177 1999-05-25  Tor Lillqvist  <tml@iki.fi>
11178
11179         * gtk/testgtkrc: Add (commented out) Windows-style theme
11180         include line.
11181
11182         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
11183
11184 1999-05-18  Tor Lillqvist  <tml@iki.fi>
11185
11186         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
11187         gdkx.h to a gdk subdirectory, so that applications can include
11188         these with <gdk/*.h> without trouble.
11189
11190         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
11191         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
11192         have their bitmap destroyed.
11193
11194         * gdk/win32/gdk.def: Add gdk_root_parent.
11195
11196 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
11197
11198         * configure.in
11199           gtk-config.in
11200           ltconfig
11201           ltmain.sh     
11202           gtk/Makefile.am: changes to compile nicely (with xlib) 
11203           on BeOS
11204
11205 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
11206
11207         * acinclude.m4
11208         * config.guess
11209         * config.sub
11210         * ltconfig
11211         * ltmain.sh: upgrade to libtool 1.3
11212
11213 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
11214
11215         * gtk/gtkclist.c:
11216         * gtk/gtkctree.c: merges from gtk-1-2
11217
11218 1999-04-25  Tor Lillqvist  <tml@iki.fi>
11219
11220         Support added for building using a GNU toolchain on Win32,
11221         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
11222
11223         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
11224         * config.h.win32: Changes for gcc.
11225         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
11226         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
11227         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
11228         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
11229         Protect shl stuff unavaiilable with mingw32 headers.
11230         * gdk/win32/gdkevents.c: Fix typo.
11231         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
11232         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
11233         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
11234         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
11235         the mingw32 headers.
11236         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
11237         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
11238         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
11239         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
11240         Test for NATIVE_WIN32, not _MSC_VER.
11241         * gtk/gtkmain.c: No use warning about developer version on Win32,
11242         there aren't any non-developer versions anyhow.
11243         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
11244         * gtk/makefile.msc: Use pthread from another directory. Minor other
11245         changes. 
11246
11247 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11248
11249         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11250           default filter from the list
11251
11252 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
11253
11254         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
11255          when gtk_widget_grab_default() is called for a widget that
11256          is not within a GtkWindow.
11257
11258 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
11259
11260         * docs/gtk_tut.sgml, examples/clist.c: use a
11261           scrolled window in the clist example. Minor
11262           tutorial fixes.
11263
11264 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
11265
11266         * docs/gtk_tut.sgml: Style check from David King
11267           <dking@youvegotmail.net>
11268
11269 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
11270
11271         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
11272         compile with unknown value of GDK_WINDOWING
11273
11274 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
11275
11276         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
11277         after the rule is fired.
11278         (install-exec-local): Install gdkconfig.h only if the contents are
11279         different from the currently installed gdkconfig.h.
11280
11281 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
11282
11283         * gdk/Makefile.am (configexecincludedir): Rename from 
11284         configincludedir so that gdkconfig.h will be installed 
11285         as part of `make install-exec'. 
11286
11287 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
11288
11289         * acinclude.m4
11290         * config.guess
11291         * config.sub
11292         * ltconfig
11293         * ltmain.sh: upgrade to libtool 1.2f
11294
11295         * autogen.sh: libtool is not required to autogen gtk+
11296
11297         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
11298         needed)
11299
11300 1999-03-18  Tor Lillqvist  <tml@iki.fi>
11301
11302         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
11303         declaring gdk variables exported/imported from the DLL. New image
11304         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
11305         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
11306         GDK_DRAG_PROTO_OLE2.
11307
11308         * gdk/gdk.h: Merge in Win32 version: Two new functions,
11309         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
11310         declared only for the Win32 version, but could be in the X11
11311         version as well. (Needed for a Xlib-less gdk_imlib.)
11312         gdk_color_hash should have only one parameter. Declare
11313         gdk_threads_mutex with GDKVAR.
11314         
11315         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
11316         just one parameter.
11317
11318         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
11319         per pixel, not bits.
11320
11321         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
11322         Fetch bpp (which means bits-per-pixel here) from another place on
11323         Win32. Accept also depth==32 (which we might get on Win32) with
11324         bpp==32.
11325
11326         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
11327         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
11328         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
11329         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
11330         in the backend-dependent directory, not in the common gdk
11331         directory.
11332
11333         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
11334         headers.
11335
11336 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
11337
11338         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
11339         want to use the Gtk+ devel version (which is true, and yes - even i am
11340         currently working with the 1.2.x branch). so everyone reading this, you
11341         probably want to issue
11342         cvs checkout -r glib-1-2 glib
11343         and
11344         cvs checkout -r gtk-1-2 gtk+
11345         as your next two comands.
11346
11347 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
11348
11349         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
11350         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
11351
11352         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
11353         file. strongly deprecated the GTK_HAVE_* macros, we provide
11354         GTK_CHECK_VERSION() for people that need to check for certain
11355         Gtk+ versions.
11356
11357         * gtk/gtkcompat.h: removed this from CVS.
11358         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
11359         idea right from the start, it just didn't seem like that back then.
11360
11361 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
11362
11363         * merges from gtk-1-2:
11364
11365 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
11366
11367         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
11368         item factory class has been created.
11369         (gtk_item_factory_parse_rc): likewise.
11370
11371         * gtk/gtkmenu.c:
11372         keep proper references for old_active_menu_item.
11373         (gtk_menu_reparent): unset the usize of the new parent,
11374         so the menu can sanely be size requested and we don't get nasty screen
11375         artefacts upon next reparentation.
11376         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
11377         enter notify. only synthesize enter notifies if the pointer really is
11378         inside the event window.
11379         (gtk_menu_popdown): use gtk_menu_shell_deselect().
11380         (gtk_menu_popup): move the background setting stuff into
11381         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
11382
11383         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
11384         gtk_menu_shell_select_item() to select the new item.
11385         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
11386         do the right thing for deselection as well.
11387
11388 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
11389
11390         * gtk/gtkwidget.[hc]:
11391         (gtk_widget_accelerators_locked): return whether a widget's accelerators
11392         are locked.
11393
11394         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
11395         existing accelerators if the widget's accelerators are locked.
11396
11397 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
11398
11399         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
11400
11401         * gtk/gtkmenu.c: truely forward key press and key release events to
11402         the menu widget from the toplevel or tearoff window. we can't simply
11403         connect to that, we need to stop further processing of the events as
11404         well.
11405
11406 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
11407
11408         * gtk/gtkmenu.c:
11409         (gtk_menu_key_press): pass event->keyval, event->state to
11410         gtk_accelerator_valid, instead of event->keyval twice.
11411         refuse to install single letter accelerators for menus that use
11412         single letter shortcuts.
11413
11414         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
11415         gtk_menu_ensure_uline_accel_group().
11416
11417         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
11418         which will always return an uline accel group, made
11419         gtk_menu_get_uline_accel_group() return NULL if the group isn't
11420         yet created.
11421
11422 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
11423
11424         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
11425
11426         * gtk/gtkclist.c (gtk_clist_column_title_passive):
11427         Leave button sensitive, trap  button_press, button_release,
11428         motion_notify, enter_notify and leave_notify events instead.
11429         (gtk_clist_column_title_active): disconnect event handler.
11430         (gtk_clist_drag_data_get): fixed memory leak. Reported by
11431         Guillaume Laurent <glaurent@worldnet.fr>
11432
11433 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
11434
11435         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
11436         width/height mixups.
11437
11438         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
11439         if needed.
11440
11441 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
11442
11443         * gtk/testgtk.c (create_item_factory): unref the item factory after
11444         window's destruction.
11445
11446         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
11447         count on the menu shell around the menu item's activation, since the
11448         signal emission may cause menu shell destruction.
11449
11450         * gtk/gtkitemfactory.c:
11451         the previous code leaked one accel group per menu. we use
11452         gtk_menu_get_uline_accel_group() now to fix that, and with that
11453         also create the underline accelerator group of the menus only if
11454         required (i.e. an underline accelerator has been specified).
11455         (gtk_item_factory_construct):
11456         (gtk_item_factory_create_item): removed code that would create an
11457         extra accel group for the menu (and leak references).
11458         (gtk_item_factory_create_item): adapted the underline accelerator
11459         installation code to properly feature gtk_menu_get_uline_accel_group().
11460
11461         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
11462         menu->accel_group, this may return NULL if the accelerator group
11463         hasn't been set yet.
11464         added gtk_menu_get_uline_accel_group() to retrive the underline
11465         accelerator group of the menu, this will be created on demand
11466         and proper care is taken about its reference count.
11467
11468         * gtk/gtkitemfactory.h:
11469         * gtk/gtkitemfactory.c:
11470         dumped the approach of keeping a widgets by action list on the
11471         factory since the factory<->widget destroy negotiation didn't work
11472         and would be hard to get going at all. instead we keep a list of
11473         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
11474         persistant throughout a program's life time).
11475         also, i removed the static const gchar *key_* variables, and made
11476         them inline strings (they weren't actually used anyways).
11477         (gtk_item_factory_add_item): update ifactory->items.
11478         (gtk_item_factory_destroy): destroy ifactory->items (and remove
11479         the item factory pointer from the remaining ifactory widgets).
11480         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
11481         list to find the widget.
11482         (gtk_item_factory_get_item): new function that works around
11483         gtk_item_factory_get_widget() limitations, this function will only
11484         return menu items, even for <Branch> entries.
11485
11486 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
11487
11488         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11489         font hash table, if we have a GdkFontPrivate entry for this font
11490         already, simply increment its reference count, provided by Olaf Dietsche
11491         <olaf.dietsche+list.gtk@netcologne.de>.
11492
11493         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
11494         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
11495
11496 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
11497
11498         * gtk/gtkcontainer.c:
11499         (gtk_container_add_with_args):
11500         (gtk_container_addv):
11501         (gtk_container_add): before adding a child to a conatiner, make sure
11502         it is (default) constructed, this is neccessary because under certain
11503         circumstances the child will get relized and mapped immediatedly, in
11504         which case it has to be constructed already.
11505
11506 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
11507
11508         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
11509         values > 1 as TRUE also.
11510
11511 1999-03-16  Tor Lillqvist  <tml@iki.fi>
11512
11513         * README.win32: New file.
11514                 
11515         * configure.in: Check for lstat.
11516
11517         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
11518         completeness.
11519
11520         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
11521
11522         * gtk/gtk.def: Removed CRs.
11523
11524         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
11525         ..\gdk\win32).
11526
11527         * gdk/win32/makefile.msc: Correct upwards relative paths.
11528         
11529 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
11530
11531         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
11532           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
11533           it was connecting a void function to expose_event and the int
11534           returning function to the draw signal
11535
11536 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
11537
11538         * configure.in:
11539         Use correct path to libgmodule.la when ref'ing uninstalled copy
11540         of glib.  (Already in stable branch, Bug #417)
11541
11542 1999-03-15  Tor Lillqvist  <tml@iki.fi>
11543
11544         Win32 merge and general portability stuff:
11545                 
11546         * acconfig.h,configure.in: Check for <sys/time.h>.
11547
11548         * gdk/win32: New directory (actually, been there for a while).
11549         
11550         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
11551         NATIVE_WIN32, and use these. Always case fold on Win32. No
11552         backslashed escapes on native Win32.
11553
11554         * gtk/{gtk.def,makefile.msc}: New files.
11555
11556         * gtk/Makefile.am: Add above new files.
11557         
11558         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
11559         instead of <strings.h>.
11560
11561         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
11562         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
11563         <unistd.h> appropriately.
11564
11565         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
11566         Use ABS() (from <glib.h>) instead of abs().
11567         
11568         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
11569         of gtk (and thus glib) headers, so that WIN32 will be
11570         defined. With MS C, include <direct.h> for mkdir prototype.
11571
11572         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
11573         some casts, needed by MS C.
11574
11575         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
11576         implemented).
11577
11578         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
11579         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
11580         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
11581
11582         * gtk/gtkmain.h: Mark variables for export/import on Win32.
11583                 
11584         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
11585         the event is not a hint, or its window is not the slider. Needed
11586         on Win32, at least.
11587
11588         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
11589         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
11590         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
11591         a subdirectory of the Windows directory as gtk system
11592         configuration directory.
11593
11594         * gtk/gtkselection.c: No chunks on Win32.
11595
11596         * gtk/gtksocket.c: Not implemented on Win32.
11597
11598         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
11599
11600         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
11601
11602         * gtk/maketypes.awk: Declare variables with a macro that expands to
11603         necessary export/import magic in the case of Win32.
11604                 
11605         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
11606
11607 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
11608
11609         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
11610         since those were meant only for gdki18n.h.  
11611         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
11612         for widechar tests.
11613         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
11614
11615 1999-03-13  Tor Lillqvist  <tml@iki.fi>
11616
11617         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
11618         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
11619
11620         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
11621         installed) to CFLAGS.
11622
11623         * gdk/Makefile.am: Add rules for gdkconfig.h.
11624
11625         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
11626         APIs.
11627
11628         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
11629         gdkx.h anyway when compiling for X11.
11630         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
11631         general): Merge in Win32 version.
11632         
11633         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
11634         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
11635         expansion (if we don't have HAVE_PWD_H), allow for drive
11636         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
11637         included code from Craig Setera's port to Win32 (the one that uses
11638         X11, and the cygwin dll), even if it probably will be abandoned.
11639
11640         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
11641         the user entered one herself.  This way one can complete *.h and
11642         don't get matches on any .help files, for instance.
11643         
11644 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
11645
11646         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11647         font hash table, if we have a GdkFontPrivate entry for this font
11648         already, simply increment its reference count, provided by Olaf Dietsche
11649         <olaf.dietsche+list.gtk@netcologne.de>.
11650
11651         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
11652         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
11653
11654 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
11655
11656         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
11657         the number of calls to gdk_draw_point() (and thus to X) by
11658         clipping the points by hand.
11659
11660         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
11661         the clip parameter.
11662         (gtk_handle_box_paint): Only paint the handle if the expose area
11663         intersects it.
11664
11665 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
11666
11667         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
11668
11669 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
11670
11671         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
11672         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
11673
11674 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
11675
11676         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
11677          textmode (O_TEXT) for OS/2 version.
11678
11679 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
11680
11681         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
11682         GtkSpinButton, "input" and "output", to make the output more flexible.
11683         The user has to provide a mapping between adjustment->value and the
11684         output string (and vice versa, if the spin button is editable). 
11685         See testgtk for examples.
11686
11687 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
11688
11689         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
11690         new one.
11691         
11692         * configure.in: set gtk+ version to 1.3.0.