]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
A bunch of whitespace cleanup.
[~andy/gtk] / ChangeLog.pre-2-10
1 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
2
3         * gdk/linux-fb/gdkselection-fb.c: 
4         * gdk/linux-fb/gdkcolor-fb.c: 
5         * gdk/linux-fb/gdkdrawable-fb2.c: 
6         * gdk/linux-fb/gdkfont-fb.c: 
7         * gdk/linux-fb/gdkim-fb.c: 
8         * gdk/linux-fb/gdkinput.c: 
9         * gdk/linux-fb/gdkkeyboard-fb.c: 
10         * gdk/linux-fb/gdkmain-fb.c: 
11         * gdk/linux-fb/gdkrender-fb.c: 
12         A bunch of whitespace cleanup.
13         
14 2001-01-30  Havoc Pennington  <hp@pobox.com>
15
16         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
17         #ifdef GTK_ENABLE_BROKEN.
18
19         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
20         GTK_ENABLE_BROKEN just before including the broken headers.
21         
22         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
23         deprecated types registered.
24
25         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
26         we have to test the broken stuff.
27
28         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
29         
30 2001-01-30  Havoc Pennington  <hp@redhat.com>
31
32         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
33         here where prev pointer was set to the wrong thing
34
35         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
36         (gtk_tree_path_is_descendant): new function
37
38         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
39         cached length
40         (gtk_list_store_get_iter): don't modify iter if we can't get the
41         path.
42
43         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
44         
45         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
46         GtkTreeDragDest
47
48         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
49         was causing segfault
50
51         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
52         pointer to NULL
53
54         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
55
56         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
57         on returning FALSE
58         (gtk_list_store_iter_children): ditto
59         (gtk_list_store_iter_nth_child): ditto
60         (gtk_list_store_iter_nth_child): ditto
61         (gtk_list_store_iter_parent): ditto
62
63         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
64         on iter->user_data != NULL instead of silently accepting it.
65         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
66         we are returning TRUE.
67         (gtk_tree_store_iter_children): ditto
68         (gtk_tree_store_iter_nth_child): ditto
69         (gtk_tree_store_iter_parent): ditto
70         (gtk_tree_store_insert): remove handling of parent->user_data ==
71         NULL, replace with parent == NULL       
72
73         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
74         and a comment explaining things
75
76         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
77         interface support to GtkTreeStore.
78
79         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
80         FALSE if no prev, fix
81
82         * gtk/gtktreeview.c (set_source_row): use a row reference
83         (set_dest_row): use a row reference
84
85 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
86
87         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
88         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
89         (gtk_tree_selection_select_iter): The same as above.
90
91 2001-01-26  Havoc Pennington  <hp@redhat.com>
92
93         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
94         which holds a handle to a specific row (particular set of values
95         in the model, i.e. pointer-identity row).
96
97         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
98         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
99         Still need to use it for the src/dest row saved on the drag context.
100
101 2001-01-26  Havoc Pennington  <hp@redhat.com>
102
103         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
104
105         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
106         not offset by TREE_VIEW_HEADER_HEIGHT
107         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
108         TREE_VIEW_HEADER_HEIGHT
109
110         * configure.in (included_loaders): for me, --with-included-loaders
111         generates the error "the specified loader yes does not exist",
112         i.e. the arg defaults to "yes", so change test for value ""
113         to test for value "yes", and include all loaders in that case.
114
115         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
116
117         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
118         handle TREE_VIEW_VERTICAL_SEPARATOR
119         (gtk_tree_view_bin_expose): fix to consider the row offset as
120         pointing halfway into vertical separator.       
121         (gtk_tree_view_draw_node_focus_rect): ditto
122
123         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
124         --gtk-debug=updates, which causes gdk_window_set_debug_updates
125         (TRUE) to be called.
126
127         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
128         debug mode where the invalid region is colored in on invalidate,
129         so you can see the flicker and know whether your redraw code is 
130         doing a good job.
131
132         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
133         tree window coordinates (clip rect is in tree window coords)
134
135         * gtk/Makefile.am: add gtktreednd.[hc]
136
137         * gtk/gtkliststore.c: implement gtktreednd interfaces.
138
139         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
140         drag-and-drop data operations on a model (so we can set up tree
141         drag-and-drop automatically)
142
143         * gtk/testgtk.c: Add a window to change sensitivity in the
144         GtkLabel test; add a way to change the entry frame in GtkEntry
145         test
146
147         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
148         (gtk_entry_get_has_frame): new functions to remove the frame
149         around an entry
150         (gtk_entry_size_request): shrink requisition if no frame
151         (gtk_entry_draw_focus): don't draw frame if no frame
152
153         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
154         checks inside a cell renderer
155         (gtk_default_draw_option): ditto for options
156
157         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
158         children from the alignment, not the button
159         (gtk_tree_view_column_init): ref/sink the column, to emulate
160         GObject refcounting.
161
162         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
163         
164         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
165         Use theme functions to draw the toggles 
166
167         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
168
169         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
170         GdkPangoAttrEmbossed to use in rendering insensitive text
171
172         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
173
174         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
175         using new GDK features
176         
177 2001-01-24  Alexander Larsson  <alexl@redhat.com>
178
179         * gtk/gtkimage.c:
180         Splitted gtk_image_clear into gtk_image_clear() and
181         gtk_image_reset(). Call gtk_image_clear() in ::destroy
182         to avoid leaks.
183
184         * gtk/gtklabel.c (set_markup):
185         Don't leak text.
186
187         * gtk/gtktextlayout.c:
188         Always free display->shaped_objects.
189
190         * gtk/testgtk.c (create_clist):
191         Don't leak custom style.
192
193 2001-01-23  Alexander Larsson  <alexl@redhat.com>
194
195         * gtk/gtkcolorsel.c (grab_color_at_mouse):
196         Don't leak image. Simplify using gdk_colormap_query_color().
197         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
198
199         * linux-fb/gdkcolor-fb.c:
200         Implemented gdk_colormap_query_color.
201
202 2001-01-23  Alexander Larsson  <alexl@redhat.com>
203
204         * linux-fb/gdkcursor-fb.c:
205         Don't leak built-in cursors.
206
207         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
208         Don't leak tmp_points.
209
210         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
211         Don't modify desc. Don't leak font if the PangoFont
212         isn't found.
213         
214         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
215         Free dash_list.
216
217         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
218         Don't leak string.
219         
220 2001-01-20  Havoc Pennington  <hp@pobox.com>
221
222         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
223         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
224         me, matches Pango
225
226 2001-01-22  Havoc Pennington  <hp@redhat.com>
227
228         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
229
230         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
231
232         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
233         Remove, move back to gdk-pixbuf
234
235         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
236         to all the word functions
237
238         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
239         before doing anything on NULL layout or if we don't have the focus
240
241         * gtk/testtext.c (fill_example_buffer): "justification"
242
243         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
244         to be called "justification" not "justify"
245
246         * demos/gtk-demo/textview.c (create_tags): "justification"
247         
248         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
249
250 2001-01-22  Alexander Larsson  <alexl@redhat.com>
251
252         * gdk/gdkwindow.c (gdk_window_invalidate_region):
253         Don't leak visible_region. Use visible_region instead of region.
254         
255         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
256         Don't do extra gdk_drawable_ref(). This is not X.
257         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
258         gdk_fb_focused_window is ref:ed.
259         (gdk_fb_window_send_crossing_events): Watch out for destroyed
260         windows.
261
262 2001-01-22  Alexander Larsson  <alexl@redhat.com>
263
264         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
265         Don't leak the PangoFontDescriptor.
266
267 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
268
269         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
270         when not realized.
271         (gtk_tree_view_scroll_to_cell): Make work when not realized.
272         (gtk_tree_view_realize): add scroll_to support
273         (gtk_tree_view_finalize): add a finalize method.  Populate.
274         (gtk_tree_view_insert_column): ref and sink the column.
275         (gtk_tree_view_append_column): ref and sink the column.
276         (gtk_tree_view_queue_draw_node): New function to handle redrawing
277         individual nodes.  Should make the code much more efficient, if
278         actually used.
279
280 2001-01-19  Havoc Pennington  <hp@redhat.com>
281
282         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
283         byte_offset variable was being used to mean both "offset into
284         layout" and "offset into buffer line" which was no longer true
285         with addition of preedit string; fix
286
287 2001-01-19  Havoc Pennington  <hp@redhat.com>
288
289         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
290
291         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
292         function
293
294         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
295         implement
296
297         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
298         scroll_to_cell, matches TextView scroll functions better
299         (gtk_tree_view_tree_to_widget_coords): new function
300         (gtk_tree_view_widget_to_tree_coords): new function
301         (gtk_tree_view_get_visible_rect): new function
302         (gtk_tree_view_get_path_at_pos): accept negative coordinates
303         (gtk_tree_view_draw_node_focus_rect): new function moved from
304         draw_focus, also, use width of bin_window as width of the focus
305         rect
306         (gtk_tree_view_expand_row): fix bug where it didn't recognize
307         already-expanded rows
308         (gtk_tree_view_get_cell_rect): new function
309         (gtk_tree_view_get_path_at_pos): return the click position
310         relative to the passed-in cell
311         (gtk_tree_view_set_expander_column): new function
312
313         * configure.in: remove gtk-config-2.0 chmod
314
315         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
316         and properly handle drags with targets we don't understand
317         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
318         scrolling anyway
319         (gtk_text_view_drag_drop): stop scrolling here though, and set the
320         mark invisible
321
322         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
323         function
324         (gtk_drag_dest_get_target_list): new function
325         (gtk_drag_dest_set_target_list): new function
326         
327         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
328
329         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
330         related to drag-and-drop
331
332 2001-01-19  Alexander Larsson  <alexl@redhat.com>
333
334         * gdk/linux-fb/gdkprivate-fb.h:
335         Define EMULATE_GDKFONT.
336         Add extra pango_font stuff to GfkFontPrivate.
337         
338         * gdk/linux-fb/gdkdrawable-fb2.c:
339         * gdk/linux-fb/gdkfont-fb.c:
340         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
341         emulation using PangoFont.
342
343 2001-01-17  Havoc Pennington  <hp@pobox.com>
344
345         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
346         all the non-deprecated set_foo functions. Added missing object
347         properties, and added g_object_notify() to setters. 
348         Wrote docs.
349         
350 2001-01-18  Tor Lillqvist  <tml@iki.fi>
351
352         * gtk/gtkmain.c
353         * gtk/gtkrc.c: (Win32) Use the new
354         g_win32_get_package_installation_(sub)directory() functions.
355
356         * config.h.win32.in: New file.
357         
358         * config.h.win32: Removed.
359
360         * configure.in: Output config.h.win32.
361
362         * Makefile.am: Add it to EXTRA_DIST.
363
364         * gtk/gtk.def: Update.
365
366 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
367
368         * gtk/gtklabel.c (gtk_label_size_request): Set the
369         attributes onto the PangoLayout even if they are newly
370         created from label->pattern.
371
372 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
373
374         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
375
376         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
377         structures in functions. Fixes bug where gtk_dataset_*
378         was accidentally still being used in one place, causing
379         every dest side event to be treated independently.
380
381         * gtk/gtkdnd.c: Remove last vestages of handling
382         ::draw (fixes warning)
383         
384         * gtk/gtkentry.[ch]: Add drag and drop support.
385
386         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
387         new function gtk_check_drag_threshhold() for checking
388         to check if (dx,dy) has exceeded the threshhold for starting
389         a drag and use it everywhere.
390
391 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
392
393         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
394         add -I{includedir}/gtk-2.0.
395
396         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
397         gdk/gdk-pixbuf.h: Doc fixups.
398         
399         * gtk/gtkobject.h: Remove trailing , from enum
400
401 2001-01-17 Alexander Larsson <alexl@redhat.com> 
402
403         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
404         Doh! Mixed up x and y.
405
406         * gdk/linux-fb/gdkglobals-fb.c:
407         Removed gdk_fb_pointer_grab_window_events,
408         added _gdk_fb_pointer_grab_owner_events and
409         _gdk_fb_keyboard_grab_owner_events.
410
411         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
412         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
413         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
414         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
415         Send crossing events after ungrab finished.
416         (gdk_keyboard_grab): Set ..._owner_events
417         (type_masks): Move out of function.
418         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
419         gdk_fb_keyboard_event_window): New functions, return the
420         window an event should be targeted at. Handles grabs and
421         event propagation. Can return NULL.
422         (gdk_event_make): Remove event_mask checking. Now always
423         returns an event.
424                 
425         * gdk/linux-fb/gdkkeyboard-fb.c:
426         * gdk/linux-fb/gdkproperty-fb.c:
427         * gdk/linux-fb/gdkselection-fb.c:
428         Use new event_window/gdk_event_make() behaviour.
429         
430         * gdk/linux-fb/gdkmouse-fb.c:
431         Use new event_window/gdk_event_make() behaviour.
432         Only send motion events if in the same window.
433         If grabbed, use cursor from window if sibling of grabbed
434         window, and cursor from grabbed window otherwise.
435
436         * gdk/linux-fb/gdkprivate-fb.h:
437         Update gdk_fb_window_send_crossing_events, gdk_event_make
438         and grab varaible declarations. Add gdk_fb_*_event_window().
439
440         * gdk/linux-fb/gdkwindow-fb.c:
441         Use new event_window/gdk_event_make() behaviour.
442         Keep correct track of focus window.
443         (gdk_window_set_events): Set all specific button motion masks
444         if GDK_BUTTON_MOTION_MASK set.
445
446         * gtk/gtkdnd.c (gtk_drag_update):
447         Free info->last_event if gdk_drag_motion returned FALSE.
448
449 2001-01-16  Tor Lillqvist  <tml@iki.fi>
450
451         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
452         Eliminate redraws when input-only windows are shown or
453         hidden. Thanks to jpe@archaeopteryx.com.
454
455 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
456
457         * docs/faq/gtk-faq.sgml: FAQ update:
458           - Update to bugzilla
459           - Add GTK+ and security/SUID/SGID
460           - Add DnD question
461
462 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
463
464         * gdk/linux-fb/gdkdnd-fb.c:
465         Some cleanups.
466         
467 2001-01-15  Havoc Pennington  <hp@pobox.com>
468
469         * tests/testtreeview.c: add test stuff for CellRendererToggle
470
471         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
472         accessor
473
474         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
475         only toggle on button press (would do release like GtkButton, but
476         we'd need implicit grab code for treeview cells)
477
478 2001-01-16  Tor Lillqvist  <tml@iki.fi>
479
480         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
481
482         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
483         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
484
485         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
486         to g_{locale,filename}_{to,from}_utf8 to match current API.
487
488         * gtk/makefile.msc.in (gtk_OBJECTS)
489         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
490
491         * gtk/gtk.def: Update.
492
493 2001-01-15  Tor Lillqvist  <tml@iki.fi>
494
495         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
496         implementaion that more closely mimics the events that an X server
497         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
498         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
499         with nested preview widgets, for instance, more responsive when
500         you move the mouse quickly into them.
501         (find_window_for_pointer_event): Make it actually compile.
502         (gdk_event_translate): Set send_event to the value of
503         InSendMessage (). This doesn't really mean the same as X11's
504         send_event flag, but is close enough, says jpe@archaeopteryx.com
505
506 2001-01-15  Alexander Larsson  <alexl@redhat.com>
507
508         * gdk/linux-fb/gdkdnd-fb.c:
509         Implemented drag and drop.
510         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
511         when it tries to free and then copy the same event (info->last_event).
512         I am not sure about why this happens, but will continue looking.
513
514 2001-01-15  Alexander Larsson  <alexl@redhat.com>
515
516         * gdk/linux-fb/gdkwindow-fb.c:
517         Use gdk_window_invalidate_rect instead of
518         gdk_window_invalidate_rect_clear to minimise flashing.
519         When hiding windows you need to clear the root window though.
520
521 2001-01-15  Alexander Larsson  <alexl@redhat.com>
522
523         * gdk/linux-fb/gdkdrawable-fb2.c:
524         For optization, add an full_shapes argument to gdk_fb_clip_region.
525         If this is false, only the cliprects of the shapes are used.
526
527         * gdk/linux-fb/gdkprivate-fb.h:
528         Export gdk_fb_window_peek_shape.
529         Add full_shapes to gdk_fb_clip_region.
530
531         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
532         When moving a window, don't clear everything under the it, just the
533         root window. Makes stuff faster and flash less.
534         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
535         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
536         offset of the shape.
537         
538
539 2001-01-12  Havoc Pennington  <hp@redhat.com>
540
541         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
542         current invalid region, fixes redraw bug while scrolling the 
543         text widget
544
545         * gtk/gtktextview.c, gtk/gtktextview.h:
546         Rearrange the scrolling/validation/etc. code in a major way, 
547         so it seems to make sense to me. Probably isn't genuinely that
548         much better, but...
549
550         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
551         notifies
552
553         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
554
555 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
556
557         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
558         Hide mouse pointer while rotation. Show it afterwards.
559
560 2001-01-12  Alexander Larsson  <alexl@redhat.com>
561
562         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
563         windows in consideration when generating clip region.
564
565         * gdk/linux-fb/gdkfb.h:
566         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
567
568         * gdk/linux-fb/gdkprivate-fb.h:
569         Add shape to GdkWindowFBDatat.
570         exported gdk_fb_window_get_abs_shape().
571         removed gdk_fb_draw_lines declaration.
572
573         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
574         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
575         send focus changes when there is a grabbed window.
576         (gdk_window_get_pointer): Handle shaped windows.
577         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
578         (gdk_fb_window_peek_shape): Returns the shape for a window,
579         handles GDK_FB_USE_CHILD_SHAPE.
580         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
581         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
582         (gdk_window_shape_combine_mask): Implement.
583
584         * gtk/gtkwindow-decorate.c:
585         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
586         setting the shape of a window makes the window transparent.
587
588 2001-01-11  Havoc Pennington  <hp@redhat.com>
589
590         * gtk/gtktreemodelsimple.h: Oops, broke some macros
591
592 2001-01-10  Havoc Pennington  <hp@redhat.com>
593
594         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
595         add this function, bug 40251
596
597         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
598         of type macro   
599
600 2001-01-11  Alexander Larsson  <alexl@redhat.com>
601
602         * acconfig.h:
603         Added ENABLE_SHADOW_FB
604
605         * configure.in:
606         Added --disable-shadowfb
607
608         * gdk/linux-fb/gdkcursor-fb.c:
609         Update shadowfb when updating cursor
610
611         * gdk/linux-fb/gdkdrawable-fb2.c:
612         Added wrappers for shadowfb that calls  the normal drawable
613         methods, but calls gdk_shadow_fb_update(bounding box) when
614         GdkWindows are drawed to.
615         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
616         which also returns the bounding box.
617
618         * gdk/linux-fb/gdkfb.h:
619         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
620
621         * gdk/linux-fb/gdkgeometry-fb.c:
622         Update shadowfb when scrolling window.
623
624         * gdk/linux-fb/gdkglobals-fb.c:
625         Add _gdk_fb_screen_angle.
626         
627         * gdk/linux-fb/gdkkeyboard-fb.c:
628         Test code for screen rotation. Shift-F2 in the xlate driver
629         rotates the screen.
630
631         * gdk/linux-fb/gdkmain-fb.c:
632         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
633
634         * gdk/linux-fb/gdkmouse-fb.c:
635         Use fb_width/height instead of modeinfo.xres/yres.
636
637         * gdk/linux-fb/gdkprivate-fb.h:
638         Added fb_men, fb_width, fb_height & fb_stride. When using
639         shadow fb these can differ from the framebuffer stuff.
640         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
641         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
642         _gdk_fb_screen_angle. Removed CM, RP.
643
644         * gdk/linux-fb/gdkrender-fb.c:
645         Added code for shadowfb handling and screen rotation using
646         shadowfb.
647
648         * gdk/linux-fb/gdkwindow-fb.c:
649         Use fb_mem, fb_stride, fb_width, fb_height.
650         Added recompute_rowstride to reset the rowstride of all windows.
651         Added gdk_fb_recompute_all() which recomputes rootwindow size,
652         window abs positions and window rowstrides. Usefull when the
653         rotation has changed.
654
655 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
656
657         * docs/faq/gtk-faq.sgml: update to make web site updating easier
658
659 2001-01-10  Havoc Pennington  <hp@redhat.com>
660
661         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
662         where sibling == iter
663         (gtk_tree_store_insert_after): handle sibling == iter
664         (gtk_tree_store_prepend): remove stamp checks
665         (gtk_tree_store_insert_before): ditto
666         (gtk_tree_store_append): ditto
667         (gtk_tree_store_get_path): ditto
668         (gtk_tree_store_get_value): ditto
669         (gtk_tree_store_iter_has_child): ditto
670         (gtk_tree_store_iter_n_children): ditto
671         (gtk_tree_store_iter_nth_child): ditto
672         (gtk_tree_store_insert_after): ditto
673         (gtk_tree_store_is_ancestor): ditto
674         (gtk_tree_store_iter_depth): ditto
675         (gtk_tree_store_insert_before): assert that sibling's parent is
676         the same as the passed-in parent
677         (gtk_tree_store_insert_after): assert that sibling's parent is
678         the same as the passed-in parent
679
680         
681         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
682         function to get the first iterator in a model
683         
684         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
685         conventionally the "root" in this sense is just NULL afaict.
686
687         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
688         where sibling == iter
689         (gtk_list_store_insert_after): handle case where sibling == iter
690
691         * tests/testtreeview.c (run_automated_tests): fairly lame basic
692         automated tests for ListStore, TreeStore
693
694         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
695         (gtk_list_store_insert): update tail pointer, and fix it to work
696         (gtk_list_store_insert_before): update tail pointer, and fix it to work
697         (gtk_list_store_append): use tail to be faster
698         (gtk_list_store_prepend): fix it, update tail pointer
699         (gtk_list_store_insert_after): fix it, update tail pointer
700
701         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
702         the list
703
704 2001-01-09  Havoc Pennington  <hp@redhat.com>
705
706         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
707         is NULL due to a pending resize
708
709         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
710         column width to values less than 1
711
712         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
713         width to be between min/max width, and still set the width 
714         even if autosize is turned on, so the tree view can use this 
715         function in order to autosize.
716         (gtk_tree_view_column_init): set initial width to 1 not 0
717
718         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
719         setter function to modify column width, so we get notification
720         (gtk_tree_view_insert_iter_height): ditto
721         (gtk_tree_view_calc_size): ditto
722         (gtk_tree_view_check_dirty): ditto
723
724         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
725         properties to change all the interesting attributes of the tree
726         view column.
727         (gtk_tree_view_column_set_header_clickable): rename set_clickable
728         (gtk_tree_view_column_get_clickable): add
729         (gtk_tree_view_column_set_cell_renderer): don't unset the current
730         attributes; assume a cell renderer with equivalent object
731         properties has been swapped in. Do g_object_notify().
732         (gtk_tree_view_column_set_visible): g_object_notify
733         (gtk_tree_view_column_get_sizing): rename from get_col_type
734         (gtk_tree_view_column_set_sizing): g_object_notify
735         (gtk_tree_view_column_set_width): add g_object_notify
736         (gtk_tree_view_column_set_min_width): ditto
737         (gtk_tree_view_column_set_max_width): ditto
738         (gtk_tree_view_column_set_title): ditto
739         (gtk_tree_view_column_set_clickable): ditto
740         (gtk_tree_view_column_set_widget): ditto
741         (gtk_tree_view_column_set_justification): ditto
742
743 2001-01-09  Havoc Pennington  <hp@redhat.com>
744
745         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
746         there are no rows in the model
747
748         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
749         NULL, then return the start of the list
750
751         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
752         if we can't get any rows from an empty model 
753
754         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
755         extraneous * after function pointer typedef usage
756
757         * Makefile.am: don't specify full path to cp and rm
758
759         * gtk/gtkcellrenderertextpixbuf.c
760         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
761         NULL before dereferencing, fixes a segfault that happened from
762         time to time
763
764         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
765         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
766         and reindent the function
767         (gtk_cell_renderer_pixbuf_get_size): indentation
768
769         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
770         we quit it
771         (gtk_dialog_add_buttons_valist): add g_return_if_fail
772         (gtk_dialog_set_default_response): New function, to set default
773         button
774         (gtk_dialog_set_response_sensitive): New function, to set 
775         sensitivity of buttons
776
777         * gtk/gtkcellrendererpixbuf.c
778         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
779         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
780
781         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
782         handle any G_TYPE_OBJECT subclass, not just the base class, and 
783         also boxed types.
784         (_gtk_tree_data_list_value_to_node): ditto
785
786         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
787         --gtk-debug=tree
788
789         * gtk/gtkmain.c: add GTK_DEBUG_TREE
790
791         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
792
793 2001-01-09  Tor Lillqvist  <tml@iki.fi>
794
795         * gdk/win32/gdkevents-win32.c: Implement better mouse
796         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
797         (find_window_for_pointer_event): New function.
798         (gdk_event_translate): Use it when handling mouse events.
799
800 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
801
802         * configure.in:
803         Added --with-included-loaders option
804
805         * gdk-pixbuf/Makefile.am:
806         * gdk-pixbuf/gdk-pixbuf-io.c:
807         Add support for including selected gdk-pixbuf loaders only.
808
809         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
810         gtk_window_set_has_frame):
811         Added inline documentation.
812
813         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
814         * docs/reference/gdk/tmpl/windows.sgml:
815         Added inline documentation.
816
817 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
818
819         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
820         realizing buttons that have already been realized.
821
822 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
823
824         * tests/testtreeview.c (main): Show menu items before adding to
825         option menu.
826
827         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
828         around if we kill them.
829
830         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
831         Return if we pass in a NULL model.
832
833 2001-01-08  Havoc Pennington  <hp@redhat.com>
834
835         * tests/testtreeview.c: hack on this some
836
837         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
838         gtk_tree_store_set_valist, v is for arrays, valist for varargs
839         list
840         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
841
842         * gtk/gtkliststore.h: Add varargs set() and get() convenience
843         functions
844
845 2001-01-08  Alexander Larsson  <alexl@redhat.com>
846
847         * gtk/gtkwindow-decorate.[hc]:
848         * gtk/Makefile.am:
849         New files. Contains an implementation of a minimal WM for
850         linux-fb.
851
852         * gtk/gtkwindow.h:
853         Add the possibility for GtkWindows to specify a frame. This
854         is used for the window decoration code, but could concievably
855         be used for X programs too (xmms style windows).
856         GtkWindow->frame is the toplevel window if the window is framed.
857         The signal frame_event gets all events that are targeted to
858         GtkWindow->frame.
859         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
860         
861         * gtk/gtkwindow.c:
862         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
863         Call out to gtkwindow-decorate.c for WM support in linx-fb.
864
865 2001-01-08  Alexander Larsson  <alexl@redhat.com>
866
867         * docs/README.linux-fb:
868         Correct filename ~/.pangoft2_aliases
869
870         * gdk/gdkwindow.h:
871         Added new function gdk_window_get_decorations.
872
873         * gdk/linux-fb/gdkfb.h:
874         Removed _gdk_window_get_decorations declaration.
875         Renamed _gdk_window_set_child_handler to
876         gdk_fb_window_set_child_handler.
877
878         * gdk/linux-fb/gdkwindow-fb.c:
879         Renamed _gdk_window_set_child_handler to
880         gdk_fb_window_set_child_handler.
881
882         * gdk/x11/gdkwindow-x11.c:
883         New function gdk_window_get_mwm_hints().
884         Implemented gdk_window_get_decorations.
885
886         * docs/reference/gdk/tmpl/windows.sgml:
887         * docs/reference/gdk/gdk-sections.txt:
888         Added gdk_window_get_decorations docs.
889         
890 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
891
892         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
893         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
894         gdk_fb_window_send_crossing_events):
895         Possibly send focus events when the mouse moves from one
896         window to another.
897
898 2001-01-07  Tor Lillqvist  <tml@iki.fi>
899
900         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
901         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
902         to match current API.
903
904         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
905         environment variable is set, don't call g_error when on a
906         palettized (PseudoColor) display. Some people want to use GTK+ 
907         in 256-colour mode even though works only partially.
908
909         * gdk/gdk.def
910         * gtk/gtk.def
911         * gtk/makefile.mingw.in: Update.
912
913 2001-01-05  Havoc Pennington  <hp@redhat.com>
914
915         * tests/testtreeview.c: hack on this a bit
916
917         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
918         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
919
920         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
921         was spelled incorrectly
922         (GTK_IS_TREE_MODEL_SIMPLE): ditto
923
924         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
925         from gtk_tree_view_set_headers_active   
926
927         * gtk/gtktexttag.c:
928         (gtk_text_tag_get_property): handle PROP_DIRECTION
929         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
930         properties, bug 40235
931
932         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
933         forward_to_line_end
934
935 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
936
937         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
938         modules/input/gtkimcontextxim.c: Adapt to new prototypes
939         for unicode,locale,filename conversion functions.
940
941 2001-01-05  Havoc Pennington  <hp@redhat.com>
942
943         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
944         broken if called on the first position in the buffer.
945
946         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
947         forward_to_delimiters to be called only if we aren't already at
948         the delimiters.
949
950 2001-01-05  Havoc Pennington  <hp@redhat.com>
951
952         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
953
954 2001-01-05  Alexander Larsson  <alexl@redhat.com>
955
956         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
957         colormap in here. Sync from X port.
958         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
959         Sync from X port.
960         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
961         This happens now and then, and i don't think it is a bug.
962         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
963         != endpoint.
964         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
965         GDK_LINE_SOLID.
966
967         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
968         some of the fields filled in at least.
969
970         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
971         miLineArcD is no more, remove it from the function definition.
972
973 2001-01-04  Havoc Pennington  <hp@redhat.com>
974
975         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
976         this
977
978         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
979         user_data instead of tree_node
980
981         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
982         TREE_VIEW_COLUMN_SIZE
983
984         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
985         "size" field to "width" finishes bug 40061
986
987         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
988         for bitfields, bug 40268
989
990 2001-01-04  Havoc Pennington  <hp@redhat.com>
991
992         Rename some stuff:
993         
994         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
995
996         s/GtkModelSimple/GtkTreeModelSimple/g;
997         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
998         s/gtk_model_simple/gtk_tree_model_simple/g;
999         s/gtkmodelsimple/gtktreemodelsimple/g;
1000
1001         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
1002
1003         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
1004         s/column_set_col_type/column_set_sizing/g;
1005
1006         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
1007         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
1008
1009         s/GtkCellRendererType/GtkCellRendererState/g;
1010         
1011         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
1012         (gtk_cell_renderer_toggle_class_init): change "state" property to
1013         "active", to match GtkToggleButton
1014         (gtk_cell_renderer_toggle_get_active): new function, bug
1015         40269
1016         (gtk_cell_renderer_toggle_set_active): new function
1017         (gtk_cell_renderer_toggle_set_property): route changes to toggle
1018         state through gtk_cell_renderer_set_active
1019
1020 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
1021
1022         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
1023         temporarily until they work again.  Brought up to date with
1024         changes in the model.
1025         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
1026         model.
1027
1028 2001-01-04  Havoc Pennington  <hp@redhat.com>
1029
1030         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
1031         equal to the line length, then position iterator before paragraph 
1032         separators. Fixes crash reported by Mikael Hermansson when
1033         pressing left arrow from the start of a line.   
1034
1035         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
1036         about byte indexes off the end
1037         (iter_set_from_char_offset): add g_error about char offsets
1038         off the end
1039
1040 2001-01-03  Havoc Pennington  <hp@redhat.com>
1041
1042         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
1043
1044         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
1045         of private functions; remove inclusion of private headers.
1046
1047         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
1048         function, so we don't need private functions in gtktextdisplay.c
1049
1050         * gtk/gtktextiterprivate.h: underscore-ification
1051
1052         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
1053         to instead say "only useful to implement widgets"
1054
1055         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
1056         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
1057         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
1058
1059         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
1060         This function was completely broken
1061
1062         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
1063
1064         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
1065
1066         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
1067
1068         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
1069
1070         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
1071
1072         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
1073
1074         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
1075         gtk_paint_layout
1076
1077         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
1078         gtk_paint_layout
1079
1080         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
1081         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
1082         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
1083         which were not implemented.     
1084
1085         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
1086         insert_pixbuf signal. Rename delete_text to delete_range since it
1087         also deletes pixbufs and child anchors. This almost closes bug
1088         40245 (still need to deal with child anchors)
1089
1090         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
1091         insert_pixbuf, change signal names as appropriate, change types of
1092         signals taking marks/tags to have the specific type, not just
1093         G_TYPE_OBJECT
1094         
1095         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
1096         closes bug 40051
1097
1098         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
1099         unnecessary remove_contents() call
1100         (gtk_option_menu_class_init): add a "changed" signal, closes
1101         bug 40039
1102         (gtk_option_menu_update_contents): emit "changed" if the 
1103         active menu item changes
1104
1105         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
1106         cast to GtkObject, reported by Jonas Borgstrom
1107         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
1108         we can't do stuff with side effects in finalize. Instead, spew a
1109         warning if the loader isn't closed.
1110
1111         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
1112         colormap in here, non-X ports probably need to sync to this change
1113
1114         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
1115         assertion that colormap != NULL, you can set the colormap to NULL
1116         if you like.
1117         
1118         * Makefile.am: remove gtk-config-2.0
1119
1120         * configure.in: Use pkg-config to locate GLib. Remove
1121         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
1122         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
1123         Use pkg-config to locate Pango. Output correct Pango libs to
1124         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
1125
1126         * Makefile.am (pkgconfig_DATA): install only target-specific pc
1127         files
1128         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
1129         X11 pc files
1130
1131         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
1132         unref from here
1133
1134 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
1135
1136         * configure.in:
1137         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
1138
1139 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1140
1141         * gtk/gtktextlayout.c
1142         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
1143         variable when moving back onto a single line.
1144
1145 2001-01-01  Havoc Pennington  <hp@redhat.com>
1146
1147         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1148
1149         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1150
1151         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
1152         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
1153
1154 2001-01-01  Havoc Pennington  <hp@redhat.com>
1155
1156         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
1157
1158         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
1159         GtkTextAttributes
1160
1161         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
1162         #40246
1163         (gtk_text_attributes_copy_values): rename from 
1164         gtk_text_attributes_copy
1165         (gtk_text_attributes_copy): a more standard GTK copy function, 
1166         which returns a new object
1167
1168 2001-01-01  Havoc Pennington  <hp@redhat.com>
1169
1170         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
1171         
1172         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
1173         don't fill in tree_view->priv->selection, kind of an unexpected
1174         side effect
1175
1176         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
1177         gtkintl.h
1178         
1179         * gtk/gtkcellrenderer.c: Remove definition of _ and include
1180         gtkintl.h
1181         (gtk_cell_renderer_get_property): remove calls to g_value_init
1182
1183         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
1184         gtkintl.h
1185
1186         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
1187         and include gtkintl.h
1188         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
1189         property names
1190
1191         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
1192         GtkTreeSelection
1193         (_gtk_tree_selection_new_from_with_view): rename, return
1194         GtkTreeSelection
1195         (_gtk_tree_selection_set_tree_view): rename with uscore
1196         (gtk_tree_selection_get_selected): fill in the "model" out param
1197         first, so it gets filled in even if we return at the top of the 
1198         function
1199         (gtk_tree_selection_real_select_all): add a comment and an else{}
1200         to clarify this a bit
1201         (gtk_tree_selection_real_unselect_all): add the same else{}
1202
1203         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
1204         set_tree_view to have underscore prefixes, move them to the
1205         private header, fix return type of new_with_tree_view
1206         (struct _GtkTreeSelection): mark struct
1207         fields private  
1208
1209         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
1210         GtkTreeModelFlags, not a guint
1211         (gtk_tree_path_prev): return gboolean not gint
1212         (gtk_tree_path_up): return gboolean not gint
1213
1214         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
1215         return GtkTreeModelFlags, not a guint
1216
1217         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
1218         that child model is non-null before unrefing it
1219         (g_value_int_compare_func): make this a qsort compare func, not 
1220         a boolean predicate
1221
1222         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
1223         (add -umn to the end), and mark it unimplemented
1224         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
1225         I don't see what it's for - doesn't the model always sort itself?
1226         (gtk_tree_model_sort_set_compare): this had the wrong signature
1227
1228         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
1229         Fix the docs to say that it destructively replaces existing
1230         attributes (previously said that it added attributes).
1231         (gtk_tree_view_column_set_visible): canonicalize bool before
1232         equality testing. Also, check for realization before
1233         hiding/showing the tree_column->window; if this window could exist
1234         before realization, then it's busted and needs fixing, we can't 
1235         create GDK resources pre-realization. Also, remove
1236         superfluous queue_resize(), since set_size() does that for us.
1237         (gtk_tree_view_column_set_col_type): check realization before 
1238         using tree_column->window
1239
1240         * gtk/gtktreedatalist.c: fix filename in copyright notice
1241
1242 2000-12-31  Havoc Pennington  <hp@pobox.com>
1243
1244         * gtk/gtktextview.c: Rearrange all the
1245         scroll-while-dragging-or-selecting code to be different, not
1246         necessarily better. ;-)
1247         (gtk_text_view_scroll_to_mark): Change this
1248         function to take within_margin as a fraction instead of a pixel
1249         value, and to take alignment arguments (indicating where to align 
1250         the mark inside the visible area)
1251         
1252         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
1253         to GtkObject
1254
1255         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
1256         behavior so that offsets past the end of the line are not 
1257         allowed, and an offset equal to the line length moves the iterator
1258         to the next line
1259         (gtk_text_iter_set_line_index): make parallel change
1260         (gtk_text_iter_get_bytes_in_line): add this function
1261         
1262         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
1263         of byte indexes off the end of the line; byte index at the end of
1264         the line now returns FALSE and doesn't fill in the requested
1265         values, byte index past the end of the line is an error.  Also,
1266         don't allow -1 offset anymore, since its meaning is unclear.
1267
1268         This change exposes some bug in visual cursor motion, where we
1269         end up with a huge invalid byte index; needs fixing. Symptom of 
1270         bug is a crash when you hit up arrow.
1271         
1272         (_gtk_text_line_char_locate): match the change to byte_locate
1273
1274         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
1275         from start of line properly. fixes bug reported by Mikael
1276         Hermansson where backspace would delete all text before the
1277         cursor.
1278
1279 2000-12-30  Tor Lillqvist  <tml@iki.fi>
1280
1281         * gdk/win32/gdkwindow-win32.c
1282         (gdk_window_impl_win32_get_visible_region): New function, as in
1283         the X11 backend.
1284         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
1285         instead of duplicating the same code here.
1286
1287         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
1288         GDK_COLORMAP macro.
1289
1290         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
1291         destroy function.
1292         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
1293         access that.
1294
1295         * gtk/gtk.def: Update.
1296
1297         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
1298
1299 2000-12-30  Havoc Pennington  <hp@pobox.com>
1300
1301         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
1302         colormap on input only windows, to avoid special cases all over
1303         the code for these windows.
1304
1305 2000-12-26  Tor Lillqvist  <tml@iki.fi>
1306
1307         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
1308         we are on a palettized display ("PseudoColor" in X11), as the code
1309         for that doesn't work anyway, and never has.
1310
1311 2000-12-22  Alexander Larsson  <alexl@redhat.com>
1312
1313         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
1314         Don't use isprint() for chars > 255.
1315
1316 2000-12-21  Havoc Pennington  <hp@redhat.com>
1317
1318         * tests/testtreeview.c: more work
1319
1320 2000-12-21  Alexander Larsson  <alexl@redhat.com>
1321
1322         * docs/README.linux-fb:
1323         Update the docs to the new pangoft2 way.
1324
1325 2000-12-21  Alexander Larsson  <alexl@redhat.com>
1326
1327         * configure.in:
1328         For linux-fb get the pangoft2 cflags and libs. This needs a recent
1329         pango version.
1330         Remove modules/linux-fb/Makefile.
1331
1332         * gdk/linux-fb/gdkdrawable-fb2.c:
1333         Render glyphs using freetype.
1334
1335         * gdk/linux-fb/gdkfb.h:
1336         Add new fb-specific functions needed for managing windows.
1337
1338         * gdk/linux-fb/gdkmain-fb.c:
1339         Remove gdk_font_init/fini() calls.
1340
1341         * gdk/linux-fb/gdkpango-fb.c:
1342         Remove old implementation. Use pangoft2 instead.
1343
1344         * gdk/linux-fb/gdkprivate-fb.h:
1345         Remove PangoFBFont and related stuff.
1346
1347         * gdk/linux-fb/gdkwindow-fb.c:
1348         Implement drawable->get_visible_region.
1349         Implement support for _gdk_window_set_child_handler () and
1350         _gdk_window_get_decorations().
1351
1352         * modules/Makefile.am:
1353         Remove linux-fb subdir.
1354
1355         * modules/linux-fb/*:
1356         Removed all.
1357         
1358 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
1359
1360         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
1361         calls, as they are no longer needed.
1362
1363         * gtk/gtktreemodelsort.c: Fix up the comparison code.
1364         
1365         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
1366         figure out how to emit a signal on an interface.
1367
1368 2000-12-20  Havoc Pennington  <hp@redhat.com>
1369
1370         * tests: new directory to contain tests, gtk/test* should move
1371         here sometime (with appropriate on-cvs-server hackery)
1372
1373         * tests/testtreeview.c, tests/Makefile.am: a test
1374         
1375         * configure.in (AC_OUTPUT): add tests/Makefile
1376
1377         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
1378         and "invisible_set" which were missing
1379
1380         * gtk/gtkrbtree.h: some cheesy indentation fix
1381         
1382 2000-12-20  Alexander Larsson  <alexl@redhat.com>
1383
1384         * gtk/gtkinvisible.c (gtk_invisible_realize):
1385         Attach the style to the window so that the style it is not
1386         leaked when unrealizing the window.
1387
1388 2000-12-18  Havoc Pennington  <hp@redhat.com>
1389
1390         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
1391         begin/end user action where appropriate
1392         (gtk_text_view_commit_handler): add begin/end user action
1393
1394         * gtk/gtktextbuffer.c: add begin/end user action signals, and
1395         bracket interactive operations with begin/end user action pair.
1396         
1397         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
1398         "interactive" arg from insert_text and delete_text signals.
1399         Add begin_user_action, end_user_action signals
1400         (gtk_text_buffer_begin_user_action): 
1401         (gtk_text_buffer_end_user_action): New functions to delimit 
1402         a user-visible action
1403
1404         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
1405         signals.
1406         
1407 2000-12-18  Havoc Pennington  <hp@redhat.com>
1408
1409         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
1410         was pretty non-working.
1411
1412         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
1413         by passing the length to g_utf8_validate().
1414
1415 2000-12-16  Havoc Pennington  <hp@pobox.com>
1416
1417         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
1418         Port to GObject, can go back in gdk-pixbuf after setting up 
1419         a gdk-pixbuf-marshal.h header over there.
1420
1421         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
1422         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
1423         args
1424         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
1425         set
1426         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
1427         here, do it when we create the buttons later
1428         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
1429         (gtk_tree_view_map): paranoia checks that column->button is shown 
1430         and unmapped
1431         (gtk_tree_view_size_request): only request visible children.
1432         Move header size calculation in here, for cleanliness, and 
1433         to maintain invariants for child widgets if we eventually 
1434         let users set different children inside the buttons
1435         (gtk_tree_view_map_buttons): factor out code to map buttons,
1436         since it was being called several times
1437         (gtk_tree_view_size_allocate_buttons): move_resize the drag
1438         windows instead of just moving them; their height may change 
1439         if we allow random widgets in there, or the theme changes.
1440         (gtk_tree_view_size_allocate): move button size allocation 
1441         above emitting the scroll signals, to ensure a sane state when we
1442         hit user code
1443         (gtk_tree_view_button_release): remove queue_resize after
1444         tree_view_set_size(), set_size() will handle any resize queuing
1445         that's needed
1446         (gtk_tree_view_focus_in): just queue a draw, don't fool with
1447         draw_focus goo
1448         (gtk_tree_view_focus): use gtk_get_current_event() and
1449         gdk_event_get_state()
1450         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
1451         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
1452         semicolon
1453         (gtk_tree_view_create_button): show the button here
1454         (gtk_tree_view_button_clicked): actually emit the clicked signal
1455         on the column
1456         (_gtk_tree_view_set_size): return right away if the size is
1457         unchanged, as a cheesy optimization
1458         (gtk_tree_view_setup_model): rename set_model_realized to 
1459         setup_model to match the flag that indicates whether we've 
1460         called it
1461         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
1462         exist, because set_scroll_adjustment does that and it shouldn't
1463         matter what order you call these in
1464         (gtk_tree_view_get_vadjustment): ditto
1465         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
1466         for paranoia
1467         (gtk_tree_view_set_headers_visible): call
1468         gtk_tree_view_map_buttons() instead of using cut-and-paste code
1469         (gtk_tree_view_append_column): clarify whether the return value
1470         is the count of columns before or after, and do the increment 
1471         separately from the return statement so you can tell from the code.
1472         (gtk_tree_view_remove_column): ditto
1473         (gtk_tree_view_insert_column): ditto
1474         (gtk_tree_view_get_column): remove g_return_if_fail for columns
1475         outside the existing range, the docs say that outside-range
1476         columns are allowed, so we handle them as documented. (Presumably
1477         this allows a nice loop with column != NULL as test.)
1478         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
1479         mean (left/right/center etc.).
1480         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
1481         (gtk_tree_view_expand_row): add docs
1482         (gtk_tree_view_collapse_row): add docs
1483
1484         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
1485         function to emit the clicked signal on a column
1486         
1487         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
1488         state of an event
1489         (gdk_event_get_time): don't treat GDK_SCROLL 
1490         as a button event, remove default case from switch so gcc 
1491         will whine if we don't explicitly handle all event types
1492
1493         * gtk/gtktreeselection.h: added some FIXME 
1494         
1495         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
1496         "columns" to "n_columns" and "column" to "columns" for clarity
1497
1498 2000-12-16  Havoc Pennington  <hp@pobox.com>
1499         
1500         * gtk/gtktextiter.c: General cleanup of the log attr iteration
1501         stuff. This should make e.g. the delete key work again in the
1502         text widget...
1503         (gtk_text_iter_forward_cursor_positions): handle negative count
1504         (gtk_text_iter_backward_cursor_positions): handle negative count
1505         (gtk_text_iter_forward_word_ends): handle negative count
1506         (gtk_text_iter_backward_word_starts): handle negative count
1507
1508         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
1509         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
1510         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
1511         GObject. No doubt will cause breakage.
1512
1513         * demos/gtk-demo/textview.c: remove hacks around
1514         non-GObject-ification of the text objects
1515
1516         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
1517         the text tag
1518         
1519 2000-12-14  Havoc Pennington  <hp@pobox.com>
1520
1521         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
1522         that we have Xrender
1523
1524 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
1525
1526         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
1527         Add two virtualized functions gdk_drawable_get_clip_region - to
1528         get the clip region when drawing.
1529         
1530         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
1531         use invalidate_region.
1532
1533         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
1534         region.
1535
1536         * acconfig.h configure.in: Check for Xft. For now, assume
1537         that if Xft is found, Pango was compiled with Xft support
1538         as well.
1539
1540         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
1541         gdk_colormap_query_color().
1542         
1543         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
1544         with Xft if appropriate.
1545
1546         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
1547         a pangoxft context if we have XFT and the environment
1548         variable GD_USE_XFT is set.
1549         
1550         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
1551         and also possibly an XftDraw structure.
1552
1553         * gtk/gtkfontsel.c: Handle the case where the font from the
1554         style doesn't match any of the fonts a bit better.
1555         
1556         * gtk/testgtk.c: Add tabs between directional segments for
1557         hebrew/arabic test. (Not really necessary, just a little
1558         prettier.)
1559
1560 2000-12-14  Havoc Pennington  <hp@redhat.com>
1561
1562         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
1563         reading a file
1564
1565 2000-12-14  Havoc Pennington  <hp@redhat.com>
1566
1567         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
1568         unused call to get_last_line()
1569
1570         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
1571         here until boxed is working (and maybe after that - we should
1572         really not gratuitously break old code)
1573
1574         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
1575         specific types for font_desc and tabs args, move them to
1576         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
1577         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
1578
1579         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
1580         use GTK_TYPE_POINTER for signal signatures as a hack-around
1581
1582         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
1583         PangoTabArray
1584
1585         * gtk/gtktextlayout.c (line_display_iter_to_index): 
1586         make static
1587         (line_display_index_to_iter): make static
1588
1589         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
1590         to marshal a string not a boxed
1591
1592         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
1593
1594         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
1595         since the UTF-8 isn't validated yet
1596
1597         * gtk/gtktextsegment.c (char_segment_check_func): don't require
1598         lines to end in '\n'
1599         
1600         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
1601         forward_to_delimiters, and grapheme boundaries
1602         (gtk_text_view_delete_from_cursor): properly handle non-newline
1603         delimiters, and grapheme boundaries
1604
1605         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
1606         to gtk_text_iter_forward_to_delimiters, and make it work properly
1607         if empty lines end with a character other than '\n'
1608
1609         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
1610         position
1611
1612 2000-12-15  Tor Lillqvist  <tml@iki.fi>
1613
1614         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
1615
1616         * gtk/gtk.def
1617         * gdk/gdk.def: Update.
1618
1619         * gdk/win32/gdkmain-win32.c
1620         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
1621         gdkmain-win32.c here.
1622
1623         * gdk/win32/makefile.mingw.in (all): No need to make
1624         gdk-win32res.o here, the makefile one step up will call us to make
1625         it.
1626
1627         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
1628         gdkkeys-win32.
1629
1630         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
1631
1632         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
1633         call to g_source_add().
1634
1635         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
1636         leak. Thanks to Andreas Kemnade.
1637
1638 2000-12-13  Havoc Pennington  <hp@pobox.com>
1639
1640         * gtk/gtktextbtree.h: Remove double _ in front of some functions
1641
1642         * gtk/gtktext*.[hc]: update accordingly
1643         
1644 2000-12-13  Havoc Pennington  <hp@pobox.com>
1645
1646         * gtk/gtktextbtree.h: Put _ in front of every function in this 
1647         header file
1648
1649         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
1650
1651 2000-12-13  Alex Larsson  <alexl@redhat.com>
1652
1653         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
1654         Add support for ps2 intellimouse.
1655
1656         * gdkkeyboard-fb.c:
1657         Move shift-F1 repaint handling to xlate handler only.
1658         
1659         * docs/README.linux-fb:
1660         Add imps2 to docs.
1661         Document the new refresh keys.
1662         
1663 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
1664
1665         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
1666
1667         * gtk/gtkbox.c: change property types from (u)long to (u)int for
1668         ::position and ::padding.
1669
1670         * gtk/gtkcontainer.c: make ::border_width an INT property.
1671
1672         * gtk/gtkpacker.c: make ::position an INT property.
1673
1674         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1675         guard against NULL h/v scrollbars, since this is used at construction
1676         time.
1677
1678         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
1679         internal gtk_clist_constructor().
1680
1681         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
1682         gtk_ctree_constructor().
1683
1684         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
1685         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
1686
1687         * docs/reference/Makefile.am: fun stuff, disabled docs generation
1688         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
1689
1690         * gtk/gtkwidget.[hc]:
1691         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
1692         and gtk_widget_get().
1693         (gtk_widget_new): use g_object_new_valist().
1694         (gtk_widget_set): use g_object_set_valist().
1695
1696         * gtk/gtkobject.[hc]:
1697         removed gtk_object_arg_get_info(), gtk_object_getv(),
1698         gtk_object_query_args(), gtk_object_newv(),
1699         gtk_object_class_add_signals(),
1700         gtk_object_class_user_signal_new(),
1701         gtk_object_class_user_signal_newv(),
1702         gtk_object_arg_set(), gtk_object_arg_get(),
1703         gtk_object_args_collect(),
1704         gtk_object_default_construct(),
1705         gtk_object_constructed(),
1706         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
1707         removed nsignals, signals and n_args members from GtkObjectClass.
1708         (gtk_object_new): use g_object_new_valist().
1709         (gtk_object_set): use g_object_set_valist().
1710         (gtk_object_get): use g_object_get_valist().
1711         
1712         * gtk/gtkcompat.h: define gtk_object_default_construct().
1713         
1714         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
1715         g_object_new().
1716
1717         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
1718         fucntions, cleaned up method assignments (make sure your structures
1719         are setup properly before calling out). removed all GTK_CONSTRUCTED
1720         hacks ;)
1721
1722 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
1723
1724         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
1725         off-by-one error in checks. (Dave Lambert)
1726
1727 2000-12-12  Alexander Larsson  <alexl@redhat.com>
1728
1729         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
1730         Don't free gdk_fb_keyboard twice.
1731
1732 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
1733
1734         * gtk/testgtk.c:
1735         (create_tooltips): 
1736         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
1737         use GObject swapped_signal:: properties instead.
1738
1739         * gtk/gtkcellrenderertoggle.c: 
1740         * gtk/gtkcellrenderertextpixbuf.c: 
1741         * gtk/gtkcellrenderertext.c: 
1742         * gtk/gtkcellrendererpixbuf.c: 
1743         * gtk/gtkcellrenderer.c:
1744         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
1745         missing warnings for invalid property ids, install properties
1746         with g_object_class_install_property() now.
1747         
1748         * gtk/gtksignal.c:
1749         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
1750         
1751 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
1752         
1753         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
1754         to determine if a window is the focus widget within
1755         its toplevel.
1756
1757         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
1758         to be boolean.
1759
1760         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
1761         of the case where the container CAN_FOCUS to here instead
1762         of having it in each individual move-the-focus place.
1763
1764         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
1765         focusing to be geometric in a much more obvious sense. Arrowing
1766         around is still non-intuitive because it isn't perfect and
1767         because entries, etc, grab the arrow keys, but it at least
1768         usually will do what you expect now.
1769         
1770         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
1771         file.
1772
1773         * gtk/gtknotebook.c: Change tabs to be a single item in
1774         the focus chain. Make movement of focus on tabs with arrow
1775         keys wrap around.
1776         
1777         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
1778         CHECK_FIND_CHILD macro to give informative error messages
1779         instead of silent returns.
1780
1781         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
1782         flag since we handle GdkReturn on the tabs.
1783
1784         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
1785         windows rather than sending expose events directly.
1786
1787         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
1788         definition for GtkNotebookPage into .c file, since it is private.
1789
1790         * gtk/testgtk.c (create_notebook): Add option for 
1791         testing borderless notebook.
1792
1793         * gtk/testgtk.c (page_switch): Removed egregious poking
1794         around in GTK+ internals.
1795
1796         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
1797
1798         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
1799         properly through gtk_clist_focus. Make the title headers a
1800         single item in the tab-focus chain, and make left-right wrap
1801         around.
1802
1803         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
1804         focus method so that wrapping around works properly.
1805
1806         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
1807         that is handled for the widget now. 
1808
1809 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
1810
1811         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
1812         widgets as TOPLEVEL.
1813
1814         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
1815         TOPLEVEL widgets are containers.
1816
1817         * gtk/gtkinvisible.h: Remove useless include.
1818
1819 2000-12-11  Havoc Pennington  <hp@redhat.com>
1820
1821         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
1822         Handle chopping off \r\n and 0x2029 in addition to \n before
1823         passing to PangoLayout
1824
1825         * gtk/gtkimcontextsimple.c
1826         (gtk_im_context_simple_get_preedit_string): 
1827         return an empty string if no match is pending
1828
1829         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
1830         assertion that the returned preedit string was sane
1831
1832         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
1833         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
1834         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
1835
1836 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
1837
1838         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
1839         Fix up finalizer to chain to its parent.
1840
1841 2000-12-11  Alexander Larsson  <alexl@redhat.com>
1842
1843         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
1844         Clearified the difference between the keyboard types. Wrote a note
1845         about the magic sysrq key to get out of raw mode.
1846
1847 2000-12-09  James Henstridge  <james@daa.com.au>
1848
1849         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
1850         member to hold masks for detecting the start of a protocol packet.
1851         (mouse_devs): add packet start masks for ps2 and ms device types.
1852         Left the mask for fidmour blank, as I have no idea what it should
1853         be.
1854         (handle_mouse_io): skip bytes until we get to the start of a
1855         packet.  My Logitech mouse seems to be passing an extra NULL pad
1856         byte, and GPM does a similar thing here.
1857         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
1858         this is the ms mouse driver.
1859         (gdk_fb_mouse_ms_packet): fix up button handling, which was
1860         completely broken except for button1.  It was checking the wrong
1861         bit in the packet for the status of the right mouse button, and
1862         wrongly assuming right == button2 rather than 3.  I fixed that and
1863         also added support for middle button (button2).
1864
1865 2000-12-08  Havoc Pennington  <hp@redhat.com>
1866
1867         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
1868         that cause a segfault on text insertion
1869
1870         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
1871         warning
1872
1873         * gtk/gtktextiter.c (test_log_attrs): use
1874         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
1875
1876         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
1877         Get log attrs for a line, using a cache stored on the buffer
1878         
1879         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
1880         reported by Jeff Franks
1881
1882 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1883
1884         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
1885         /dev/ttyS0 -> /dev/mouse
1886
1887 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1888
1889         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
1890         Added dummy gdk_fontset_load.
1891
1892 2000-12-08  Alexander Larsson  <alexl@redhat.com>
1893
1894         * docs/README.linux-fb:
1895         * docs/Makefile.am:
1896         Initial GtkFB docs.
1897         
1898         * gdk/linux-fb/Makefile.am:
1899         Define GDK_DATA_PREFIX.
1900
1901         * gdk/linux-fb/gdkmain-fb.c:
1902         Fix typo.
1903         Change default display to /dev/fb0.
1904
1905         * gdk/linux-fb/gdkpango-fb.c:
1906         Add $(prefix)/share/fonts/ to font path.
1907         
1908 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
1909
1910         * gdk/linux-fb/gdkkeyboard-fb.c:
1911         New file containing the abstracted keyboard driver. Most code
1912         taken from gdkinput-ps2.c
1913
1914         * gdk/linux-fb/gdkinput-ps2.c:
1915         Removed file.
1916         
1917         * gdk/linux-fb/Makefile.am:
1918         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
1919
1920         * gdk/linux-fb/gdkcolor-fb.c:
1921         display->fb was renamed to display->fb_fd.
1922
1923         * gdk/linux-fb/gdkcursor-fb.c:
1924         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1925
1926         * gdk/linux-fb/gdkinput.c:
1927         Moved gdk_input_init here from gdkinput-ps2.c
1928
1929         * gdk/linux-fb/gdkmain-fb.c:
1930         display->fb was renamed to display->fb_fd.
1931         Now the tty and the console is opened here instead
1932         of in the keyboard driver. Also check GDK_VT to see what
1933         tty to open.
1934         Move gdk_beep () here from gdkinput-ps2.c
1935         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1936
1937         * gdk/linux-fb/gdkmouse-fb.c:
1938         Add header.
1939         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1940         Return correct keyboard modifiers.
1941         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
1942
1943         * gdk/linux-fb/gdkprivate-fb.h:
1944         Add tty and vt info to display.
1945         Add orignal modeinfo storage to display
1946         Update global functions
1947
1948         * gdk/linux-fb/gdkwindow-fb.c:
1949         Added gdk_fb_window_find_focus().
1950         gdk_mouse_get_info -> gdk_fb_mouse_get_info
1951
1952 2000-12-07  Havoc Pennington  <hp@pobox.com>
1953
1954         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
1955         function, noticed by Alex
1956
1957 2000-12-06  Elliot Lee  <sopwith@redhat.com>
1958
1959         * configure.in: Detect freetype properly
1960
1961         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
1962         above.
1963
1964 2000-12-06  Alexander Larsson  <alexl@redhat.com>
1965
1966         * gdk/linux-fb/Makefile.am:
1967         Add gdkmouse-fb.c
1968         
1969         * gdk/linux-fb/gdkmouse-fb.c:
1970         New file. Abstracted the mouse drivers a bit.
1971
1972         * gdk/linux-fb/gdkcursor-fb.c:
1973         The cursor hide/show functions was moved here from gdkinput-ps2.c.
1974
1975         * gdk/linux-fb/gdkinput-ps2.c:
1976         Removed old mouse handling code. Moved cursor handling code
1977         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
1978         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
1979         gdk_mouse_get_info.
1980
1981         * gdk/linux-fb/gdkmain-fb.c:
1982         Pass NULL pointers for x,y in gdk_mouse_get_info call.
1983
1984         * gdk/linux-fb/gdkprivate-fb.h:
1985         Removed public gdk_fb_find_common_ancestor, added and renamed
1986         functions for the new mouse handling code.
1987
1988         * gdk/linux-fb/gdkwindow-fb.c:
1989         Moved gdk_fb_window_send_crossing_events here. added global
1990         variable gdk_fb_window_containing_pointer. made
1991         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
1992         renamed to gdk_mouse_get_info.
1993
1994 2000-12-06  Alexander Larsson  <alexl@redhat.com>
1995
1996         * gdk/linux-fb/gdkevents-fb.c:
1997         Update to match latest gmain/gsource changes.
1998
1999         * gdk/linux-fb/gdkinput-ps2.c:
2000         Bogus gdk_keymap_get_entries_for_keycode implementation so that
2001         it links. Will be implemented later.
2002
2003 2000-12-03  Havoc Pennington  <hp@pobox.com>
2004
2005         * gdk/Makefile.am: add gdkkeys.[hc]
2006
2007         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
2008         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
2009
2010         * acconfig.h, configure.in: add checks and command line options
2011         for XKB
2012
2013         * gdk/x11/gdkkeys-x11.c: Implement the above functions
2014         
2015         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
2016         and group in the key event
2017
2018         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
2019         field with the low-level hardware key code, and a group
2020         field with the keyboard group
2021
2022         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
2023         and declare a couple globals used for keymap handling
2024         
2025         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
2026         hold down Shift-Control and type a hex number to get a Unicode 
2027         character corresponding to the hex number
2028         (gtk_im_context_simple_get_preedit_string): Fix cursor position
2029         (return bytes not chars)
2030
2031 2000-12-05  Elliot Lee  <sopwith@redhat.com>
2032
2033         * gdk/gdkcolor.h: Make GdkColor specify element sizes
2034         to avoid waste on 64-bit platforms.
2035
2036 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
2037
2038         * INSTALL: Fix link to PNG home, remove reference
2039         to fribidi.
2040
2041         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
2042         
2043         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
2044         tested.)
2045
2046         * gtk/gtkcheckmenuitem.c: Permanently turn on
2047         always_show_toggle.
2048
2049         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
2050         be NULL. (Vladimir Klebanov, #26545)
2051
2052         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
2053         some signed/unsigned comparison problems. (#6510,
2054         David Kaelbling)
2055
2056         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
2057         return type to boolean (Oskar Liljeblad, #18648)
2058
2059 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2060
2061         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
2062         Remove bogus colormap setting.
2063
2064 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2065
2066         * gdk/linux-fb/gdkcolor-fb.c:
2067         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2068
2069         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
2070         Must set colormap.
2071         
2072 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
2073
2074         * docs/tutorial/gtk-tut.sgml: DND updates
2075
2076 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
2077
2078         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2079         Remove old debug g_warning().
2080         (gdk_fb_draw_drawable): The src argument can be either a wrapper
2081         or an implementation, just pass the implementation to draw_drawable_2.
2082         
2083         * gdk/linux-fb/gdkprivate-fb.h:
2084         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
2085
2086         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2087         clear and invalidate area when window is destroyed.
2088         (send_map_events): Remove old commented out code.
2089
2090 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2091
2092         * gdk/linux-fb/gdkpango-fb.c:
2093         Use italic instead of oblique in font aliases.
2094         
2095         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
2096         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
2097         other unsupported functions.
2098
2099 2000-12-04  Havoc Pennington  <hp@redhat.com>
2100
2101         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
2102
2103         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
2104
2105         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
2106
2107         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
2108         hack to avoid infinite loops (synthetic expose event) - 
2109         Owen has more appropriate fixes in a branch he'll check in later.
2110
2111         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
2112         separator, CR, and CRLF as line ends
2113
2114         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
2115         into lines using pango_find_paragraph_boundary(); other bits of
2116         the widget are still going to be broken if the boundary isn't '\n'
2117         though
2118
2119 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2120
2121         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
2122         multiply.
2123
2124         * gdk/linux-fb/gdkpango-fb.c:
2125         Copied some 26.6 scaling macros from pango to clean up the rounding.
2126         (pango_fb_font_get_glyph_info): Correct sign on x value.
2127
2128         * gdk/linux-fb/gdkprivate-fb.h:
2129         Removed unreferenced external functions.
2130
2131         * modules/linux-fb/Makefile.am: Use ` instead of '.
2132
2133         * modules/linux-fb/basic.c:
2134         Remove dead code. In particular the dummy lang engine which broke all
2135         pango layouts in GtkFB. Don't include tables-big.i anymore.
2136
2137         * modules/linux-fb/tables-big.i:
2138         Upgrade to latest version from pango. Left for reference, basic_ranges
2139         moved to basic.c.
2140         
2141 2000-12-04  Havoc Pennington  <hp@redhat.com>
2142
2143         Fix bugs Alex found:
2144         
2145         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
2146         to "draw"
2147
2148         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
2149
2150         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
2151
2152         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
2153         implementation in here, apparently the expose() implementation was
2154         dead code.
2155
2156 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2157
2158         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2159         Return positive descent.
2160
2161 2000-12-02  Havoc Pennington  <hp@pobox.com>
2162
2163         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
2164         method and signal
2165         
2166         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
2167         calls gdk_window_process_updates() to push the exposes through
2168         (gtk_widget_class_init): No more draw signal, no
2169         gtk_widget_real_draw()  
2170         
2171         * gtk/gtkbin.c (gtk_bin_draw): remove
2172
2173         * gtk/gtkbox.c (gtk_box_draw): remove
2174
2175         * gtk/gtkbutton.c (gtk_button_draw): remove
2176
2177         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
2178
2179         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
2180
2181         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
2182
2183         * gtk/gtkclist.c (gtk_clist_draw): remove
2184
2185         * gtk/gtkentry.c (gtk_entry_draw): remove
2186
2187         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
2188
2189         * gtk/gtkfixed.c (gtk_fixed_draw): remove
2190
2191         * gtk/gtkframe.c (gtk_frame_draw): remove
2192
2193         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
2194
2195         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
2196
2197         * gtk/gtklayout.c (gtk_layout_draw): remove
2198
2199         * gtk/gtklist.c (gtk_list_draw): remove
2200
2201         * gtk/gtklistitem.c (gtk_list_item_draw): remove
2202
2203         * gtk/gtkmenu.c (gtk_menu_draw): remove
2204
2205         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
2206
2207         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
2208
2209         * gtk/gtknotebook.c (gtk_notebook_draw): remove
2210
2211         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
2212
2213         * gtk/gtkpacker.c (gtk_packer_draw): remove
2214
2215         * gtk/gtkrange.c (gtk_range_draw): remove
2216
2217         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
2218
2219         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
2220
2221         * gtk/gtktable.c (gtk_table_draw): remove
2222
2223         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
2224
2225         * gtk/gtktext.c (gtk_text_draw): remove
2226
2227         * gtk/gtktextview.c (gtk_text_view_draw): remove
2228
2229         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
2230
2231         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
2232
2233         * gtk/gtktree.c (gtk_tree_draw): remove
2234
2235         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
2236
2237         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
2238
2239         * gtk/gtkviewport.c (gtk_viewport_draw): remove
2240
2241         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
2242
2243         * gtk/gtkvscale.c (gtk_vscale_draw): remove
2244
2245         * gtk/gtkwindow.c (gtk_window_draw): remove
2246
2247 2000-20-01  Anders Carlsson  <andersca@gnu.org>
2248
2249         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
2250         a GtkToggleButton is both insensitive and active, it was being
2251         drawn by the GtkButton draw handler which doesn't check the
2252         state. Now it's calling gtk_toggle_button_paint instead.
2253         
2254 2000-12-01  Havoc Pennington  <hp@redhat.com>
2255
2256         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
2257         dangling pointers to the appearance attributes from the 
2258         line display
2259
2260         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
2261         width/height to mean "full width/height of drawable"
2262
2263         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
2264         click to select word/line
2265         
2266         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
2267         when getting log attrs. Get a slice, so that pixmaps and stuff
2268         are properly handled.
2269
2270         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
2271         paste into the selection (replaces selection now, previously
2272         crashed or added to selection). Reveals longstanding btree bug -
2273         select multiple lines, middle-click on the selection, boom. This
2274         isn't related to my changes though.
2275
2276         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
2277         PangoLogAttrs changes
2278         (gtk_entry_move_backward_word): ditto
2279
2280         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
2281         functions return bool whether the iter moved onto a
2282         dereferenceable position.
2283  
2284         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
2285         functions for motion in terms of display lines.
2286
2287         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
2288         get the buffer a mark is inside
2289         
2290 2000-12-01  Alexander Larsson  <alexl@redhat.com>
2291
2292         * gdk/linux-fb/Makefile.am:
2293         * modules/linux-fb/Makefile.am:
2294         Freetype 2 final uses freetype-config
2295
2296         * gdk/linux-fb/gdkpango-fb.c:
2297         Upgrade to use Freetype 2 final.
2298         More flexible support for font aliases, this also fixes a bug with
2299         GtkFontSelector, as the aliases must be visible in the font/family list,
2300         or GtkFontSelector reads uninitialized memory.
2301
2302 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
2303
2304         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
2305         XGetIMValues to properly terminate variable argument list, and do
2306         NULL return check for ic_values and xim_styles.
2307
2308         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
2309         Restore preedit state after XmbResetIC().
2310         
2311         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
2312         XvaCreateNestedList() should take XvaNestedList, but not
2313         XvaNestedList*.
2314
2315         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
2316         preedit_draw_callback, preedit_caret_callback): Match
2317         "preedit-changed" signal name to "preedit_changed" to be
2318         consistent to the spec.
2319
2320         * gtk/gtkimcontextsimple.c (check_table):
2321         Match "preedit-changed" to "preedit_changed" to be consistent
2322         to the spec.
2323
2324 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
2325
2326         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
2327         gc->clip_region == NULL>
2328
2329 2000-11-30  Tor Lillqvist  <tml@iki.fi>
2330
2331         Changes by Hans Breuer:
2332         
2333         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2334         Dont't use negative width and height as max_hints. This fixes
2335         Owen's recent testgtk changes for win32.
2336
2337         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
2338         gdk_win32_hdc_release): These are exported and may be called with
2339         other drawable types than our GdkDrawableImplWin32 (?).
2340
2341         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
2342         so always #define USE_BACKING_STORE.
2343
2344         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
2345         of printf for debugging output.
2346
2347         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
2348         
2349         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
2350
2351         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
2352         declaration.
2353
2354         * gtk/gtktexttypes.h: Ditto.
2355
2356         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
2357         (GDK_VoidSymbol) also if in case of arg check failure.
2358
2359         * gtk/gtkimcontextsimple.c
2360         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
2361         position to the pointer, but to the variable it points to.
2362
2363         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
2364
2365         * gtk/gtk.def: Updates.
2366
2367 2000-11-29  Elliot Lee  <sopwith@redhat.com>
2368
2369         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
2370         GTK_TYPE_TREE_MODEL.
2371
2372 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2373
2374         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
2375         Set the size of the font from the description.
2376         (gdk_text_width): Gross hack that calculates the width
2377         of text by text_length * size/2. This is necessary because
2378         GtkLabel does some ugly gtk_string_width call to calculate
2379         an good size.
2380         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
2381
2382 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
2383
2384         * docs/tutorial/gtk-tut.sgml: DND updates
2385
2386 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2387
2388         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2389         If you pass width or height == 0 to gdk_window_clear_area they
2390         should be calculated from the window size.
2391
2392 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2393
2394         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
2395         a grab, but no grab-cursor, use the cursor from the grabbed
2396         window. (gdk_fb_window_send_crossing_events): Send normal
2397         enter/leave notifications if grab and owner_events == TRUE.
2398
2399 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2400
2401         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2402         Do implicit button grabs, even if the window doesn't
2403         want the event.
2404         (gdk_fb_window_send_crossing_events): If there is a
2405         grab, only the grabbed window gets normal enter/leave
2406         notifications. On ungrab go from grabbed window to current.
2407         Don't send any notification to b when propagating from c -> b.
2408         If setting a grab on window, don't set prev_window.
2409         (handle_mouse_input): Send enter/leave events to the window the
2410         mouse is over, not the grabbed one.
2411         
2412 2000-11-28  Elliot Lee  <sopwith@redhat.com>
2413
2414         * gdk/gdkregion-generic.c: Zap warning.
2415         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
2416         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
2417
2418 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
2419
2420         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2421         The cursor should be hidden if it is part of either the
2422         source or destination region. Not only if it is in both.
2423         (gdk_window_set_transient_for): Silence warnings.
2424
2425 2000-11-28  Alexander Larsson  <alexl@redhat.com>
2426
2427         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
2428         The default mode in X is Pie Arcs, therefore that is
2429         what Gtk+ uses.
2430
2431 2000-11-28  Alexander Larsson  <alexl@redhat.com>
2432
2433         * gdk/linux-fb/gdkinput-ps2.c:
2434         Implement correct EnterNotify/LeaveNotify:
2435         (gdk_fb_window_send_crossing_events): New function that sends
2436         all GdkCrossingEvents from the last mouse-window to the specified
2437         destination.
2438         (gdk_fb_window_visibility_crossing): Removed function.
2439         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
2440         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
2441         instead of gdk_window_get_pointer() for better readability.
2442
2443         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
2444         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
2445
2446         * gdk/linux-fb/gdkprivate-fb.h:
2447         removed gdk_fb_window_visibility_crossing, added
2448         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
2449
2450         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
2451         New function that finds the least common ancestor of two windows.
2452         (gdk_window_show, gdk_window_hide):
2453         Use gdk_fb_window_send_crossing_events.
2454         (gdk_fb_window_move_resize): Send configure events to toplevel
2455         windows. Use gdk_fb_window_send_crossing_events.
2456
2457 2000-11-27  Havoc Pennington  <hp@redhat.com>
2458
2459         * gtk/gtkprivate.h (enum): Remove a trailing comma
2460
2461 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
2462
2463         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
2464         the "changed" callback of the adjustment.  We need to redraw the
2465         spin button's arrows when the adjustment's range changes.
2466         (adjustment_changed_cb): Draw the arrows.
2467         (gtk_spin_button_value_changed): Draw the arrows.
2468
2469 2000-11-23  Alexander Larsson  <alexl@redhat.com>
2470
2471         * gdk/linux-fb/gdkselection-fb.c:
2472         Initial selection implementation.
2473
2474         * gtk/gtkselection.c:
2475         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
2476         requestor in gtk_selection_request.
2477         
2478         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
2479         Added gdk_selection_property atom.
2480
2481         * gdk/linux-fb/gdkprivate-fb.h:
2482         Export _gdk_selection_window_destroyed.
2483         Removed mask_off_x/y from GdkCursorPrivateFB.
2484         Removed hbearing, added top, left to PangoFBGlyphInfo.
2485
2486         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2487         Call _gdk_selection_window_destroyed
2488         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
2489         the root window has been created.
2490         (static_dx_hack, static_dy_hack, compare_draw_rects,
2491         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
2492         in region. They are already sorted. Instead just traverse them in
2493         reverse if draw_direction < 0.
2494         
2495         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2496         Double-clicks must be sent after the normal button_press.
2497         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
2498         
2499         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
2500         Pass _gdk_fb_screen_gc instead of NULL.
2501
2502         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2503         Initialize gdk_selection_property.
2504         (gdk_event_make): Remove unused code.
2505
2506         * gdk/linux-fb/gdkcursor-fb.c:
2507         Make the pixmap for the cursor the same size as the mask. Also remove
2508         the mask_off_x/y fields in GdkCursorPrivateFB and combine
2509         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
2510         Now the whole cursor is visible.
2511
2512         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2513         Fix bug where xdest+height instead of ydest+height was used
2514         to calculate if the source and dest overlapped. This fixes the
2515         redraw bug when the main window in testgtk was scrolled when
2516         partially covered by a tall window.
2517         Copy rectangles in region in order depending on draw_direction.
2518         Also moved the draw_direction flipping of start_y and end_y into
2519         the gc functions, as this might not be what all of them want.
2520         (gdk_fb_draw_lines): Support dashed lines.
2521         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
2522         so that the text is positioned correctly (was 1 pixel high).
2523
2524         gdk/linux-fb/gdkgc-fb.c:
2525         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
2526         all lines were drawn a pixel to short. Also checked the default of
2527         the rest of the values, and they're the same as X now.
2528
2529         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
2530         Clean up pixel positioning of the glyphs. Just use bgy->top and
2531         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
2532         to all divisions to get correct rounding behaviour.
2533
2534         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
2535         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
2536         Moved start_y/end_y flip into draw_drawable implementations.
2537         Flip also x rendering when draw_direction < 0.
2538         Remove unneccesary multiply with draw_direction.
2539
2540 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
2541
2542         * docs/tutorial/gtk-tut.sgml:
2543           - get rid of gtk_toggle_button_toggled FUD
2544           - start DND section - needs work - based on:
2545                 http://wolfpack.twu.net/docs/gtkdnd/
2546
2547 2000-11-22  Alexander Larsson  <alexl@redhat.com>
2548
2549         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2550         Correct calculation of font metrics. Now GtkEntrys have sane
2551         size.
2552
2553 2000-11-22  Alexander Larsson  <alexl@redhat.com>
2554
2555         * gdk/gdktypes.h:
2556         Add new type GdkSpan
2557         
2558         * docs/reference/gdk/gdk-sections.txt,
2559         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
2560         gdk/gdkregion.h:
2561         Implement and document gdk_region_spans_intersect_foreach.
2562
2563         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
2564         Add new file gdkrender-fb.c which contains all core
2565         rendering code.
2566         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
2567         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
2568         (optimized rectangle fillers).
2569
2570         * gdk/linux-fb/gdkdrawable-fb2.c:
2571         Move all rendering code to gdkrender-fb.c.
2572         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
2573         Use the new span intersection functions in gdk_fb_fill_spans.
2574         gdk_fb_draw_rectangle() clips filled rectangles and calls
2575         gc->fill_rectangle with the result.
2576         gdk_fb_fill_spans() gets extra argument "sorted".
2577
2578         * gdk/linux-fb/gdkevents-fb.c:
2579         Remove unused includes and defines.
2580         New function gdk_fb_get_time() to get correct time for events.
2581
2582         * gdk/linux-fb/gdkinput-ps2.c:
2583         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
2584         Make sure to set the time of all events.
2585
2586         * gdk/linux-fb/gdkmain-fb.c:
2587         Use gdk_fb_get_time ().
2588
2589         * gdk/linux-fb/gdkprivate-fb.h:
2590         New virtual GC calls: fill_span & fill_rectangle.
2591         Export gdk_fb_get_time().
2592         gdk_fb_fill_spans() gets extra argument "sorted".
2593
2594         * gdk/linux-fb/mi*.c:
2595         Use GdkSpan instead of GdkRectangle.
2596         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
2597         from XFree 4 source)
2598         
2599 2000-11-22    <jrb@redhat.com>
2600
2601         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
2602         reversing the order in an if statement will do.  Doing so managed
2603         to make the treemodelsort half work.  Other half will follow after
2604         I get the insert function fully fixed.
2605
2606 2000-11-21  Elliot Lee  <sopwith@redhat.com>
2607         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
2608         more than 2 bits. Besides, I need to implement an evil hack. :)
2609
2610 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
2611
2612         * docs/tutorial/gtk-tut.sgml: minor corrections
2613
2614 2000-11-20  Jonathan Blandford <jrb@redhat.com>
2615         * gtk/gtktreemodelsort.h: Add convertion functions to let you
2616           convert to and from relative path's and iters.
2617
2618         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
2619           testing sorting functions a bit better.  Currently broken -- will
2620           fix in morning.
2621
2622 2000-11-20  Havoc Pennington  <hp@redhat.com>
2623
2624         * gtk/gtkwidget.c: Documented a bunch of functions in here
2625         (gtk_widget_realize): Warn if you try to realize
2626         a widget with no parent that isn't a toplevel
2627         (gtk_widget_intersect): return a gboolean
2628
2629 2000-11-20  Havoc Pennington  <hp@redhat.com>
2630
2631         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
2632         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
2633         scrolling to be implemented in GDK to finish. Also, right now
2634         we just size_allocate all children on every layout change,
2635         which is pretty lame. Test commented out of testtext.c, 
2636         until it works better.
2637
2638 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
2639
2640         * gdk/linux-fb/gdkdrawable-fb2.c:
2641         Removed unused arguments from gdk_fb_drawable_get_pixel().
2642
2643         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
2644         Renamed fidur specific mouse packet data in MouseDevice to
2645         generic. Used it in ps2 mouse handling code to avoid blocking
2646         reads.
2647
2648 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
2649
2650         * demos/gtk-demo/main.c: Changed to have the list become
2651         non-italic when the demo window is destroyed through an external
2652         event (like a close button).  Doing so found three bugs in the
2653         widget.
2654
2655         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
2656
2657         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
2658         we actually set the cell.
2659
2660         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
2661
2662         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
2663         free a leaked path.  Thanks memprof.
2664
2665 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
2666
2667         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
2668         off-by-one error when destroying allocated segments
2669         on failure. (Elliot)
2670
2671 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
2672
2673         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
2674         memleaks found by Evan Martin.
2675
2676 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
2677
2678         * Released 1.3.2
2679         
2680         * NEWS: Updates for 1.3.2
2681
2682 2000-11-17  Tor Lillqvist  <tml@iki.fi>
2683
2684         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
2685         but in general for window system specific events.
2686
2687         * gtk/gtk.def
2688         * gtk/makefile.mingw.in
2689         * gtk/makefile.msc.in: Update.
2690         
2691         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
2692
2693 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
2694
2695         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
2696         distribute gtk.immodules.
2697
2698         * gtk/Makefile.am (install-data-local): Don't install the
2699         gtk.immodules file created for the uninstalled modules;
2700         instead run gtk-query-immodules after install
2701
2702 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
2703
2704         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
2705         -rpath to the right install location.
2706
2707         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
2708         -export-dynamic.
2709
2710         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
2711         properly.
2712
2713 2000-11-15  Havoc Pennington  <hp@pobox.com>
2714
2715         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
2716         patch from Mikael Hermansson to temporarily stop blinking while
2717         the user is using the keyboard to type or navigate. 
2718
2719         Also, when blinking, stay on for longer than we stay off. Also,
2720         return from start_cursor_blink if !cursor_visible, to save
2721         checking that flag all over the place before we call
2722         start_cursor_blink.
2723
2724 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
2725
2726         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
2727         only contain a "fontset" line, which is now ignored.
2728
2729         * gtk/gtkentry.c (gtk_entry_button_release): Make 
2730         double-click-to-select-word work.
2731         
2732 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
2733
2734         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
2735         Don't move back one char when we are actually at the end of the 
2736         paragraph.
2737
2738 2000-11-15  Robert Brady  <robert@suse.co.uk>
2739
2740         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
2741         'o' < 'p'.
2742         
2743         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
2744         bind_textdomain_codeset.
2745
2746         (gtk_init_check): Make the warning about translating default:LTR
2747         sterner.
2748         
2749 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
2750
2751         * **/Makefile.am : remove unecessary rules for win32-specific
2752         config-substituted targets. If you want these rules, use
2753         --enable-maintainer-mode (called automatically by autogen.sh).
2754         Stops a lot of unneccessary make-time warnings.
2755
2756         * gtk/gtktext{layout,display}.c: Factor in total width as
2757         well as screen when figuring alignment for word-wrap as well as
2758         no wrap; this is necessary to handle lines that cannot be wrapped
2759         at all.
2760
2761 2000-11-15  Havoc Pennington  <hp@redhat.com>
2762
2763         * gtk/testtext.c: Implement essential color cycling feature
2764
2765 2000-11-15  Havoc Pennington  <hp@redhat.com>
2766
2767         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
2768         when we invalidate the main window.
2769
2770         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
2771         GtkTextView will now invalidate the side windows for us when text
2772         changes.
2773
2774 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
2775
2776         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
2777         unconditionally, since we may need to update the horizontal
2778         scrollbars even if the height didn't change.
2779
2780         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
2781         the extra attrs, since some of them affect size.
2782
2783         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
2784         x_offset correctly.
2785
2786 2000-11-15  Havoc Pennington  <hp@redhat.com>
2787
2788         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
2789         don't move the first line out into the margin, instead move the
2790         whole paragraph in order to make space for the first line within 
2791         the margin
2792
2793 2000-11-15  Havoc Pennington  <hp@redhat.com>
2794
2795         * gtk/gtktextview.c (changed_handler): offset redraw rect by
2796         xoffset in addition to yoffset, so horizontal scrolling doesn't
2797         break redraws
2798
2799 2000-11-15  Havoc Pennington  <hp@redhat.com>
2800
2801         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
2802         from the cursor
2803         (render_layout_line): fix reversed test that caused weird
2804         underlines to get drawn
2805
2806 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
2807
2808         * gdk/linux-fb/gdkprivate-fb.h:
2809         Fix debug macros.
2810         
2811 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
2812
2813         * gdk/linux-fb/gdkprivate-fb.h:
2814         Added virtual functions set_pixel, get_color,
2815         fill_span and draw_drawable to the GC.
2816         Added global _gdk_fb_screen_gc to use instead of
2817         NULL when drawing to the screen.
2818         Added _gdk_fb_gc_calc_state() prototype.
2819
2820         * gdk/linux-fb/gdkgc-fb.c:
2821         Call _gdk_fb_gc_calc_state() on any gc state change.
2822
2823         * gdk/linux-fb/gdkglobals-fb.c:
2824         Add _gdk_fb_screen_gc
2825                 
2826         * gdk/linux-fb/gdkdrawable-fb2.c:
2827         _gdk_fb_gc_calc_state() calculates best functions
2828         for the GC state and depth.
2829         Moved bpp specialized code to separate functions.
2830         Added optimized 24 bpp AA draw_drawable.
2831
2832         * gdk/linux-fb/gdkevents-fb.c:
2833         Silence gcc warning.
2834
2835         * gdk/linux-fb/gdkimage-fb.c:
2836         Use _gdk_fb_screen_gc
2837
2838         * gdk/linux-fb/gdkwindow-fb.c:
2839         Init and use _gdk_fb_screen_gc
2840
2841         * gdk/linux-fb/mitypes.h:
2842         Remove unused types.
2843
2844 2000-11-14  Havoc Pennington  <hp@pobox.com>
2845
2846         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
2847         to pixels
2848
2849 2000-11-14  Havoc Pennington  <hp@pobox.com>
2850
2851         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
2852
2853         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
2854         unknown char, no real reason we were using a variable. 
2855         Remove gtk_text_unknown_char variable. Fix all the text widget
2856         files accordingly.
2857
2858         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
2859         since the Unicode spec seems to prefer that character for our
2860         purposes.
2861
2862 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
2863
2864         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
2865         value of g_getenv() isn't freeable, so g_strdup it.
2866
2867         * modules/input/inuktitut.c: Inuktitut input method.
2868
2869         * modules/input/Makefile.am: Build this.
2870         
2871 2000-11-14  Elliot Lee  <sopwith@redhat.com>
2872
2873         * gtk/Makefile.am: Install gtk.immodules, needed for operation
2874         of gtk programs.
2875
2876 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
2877
2878         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
2879         reversed > that was causing Home to go to end of previous line.
2880
2881         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
2882         modified-keypresses (leave for bindings.)
2883
2884         * modules/input/Makefile.am: Remove useless -export-dynamic
2885         from module LDFLAGS.
2886
2887 2000-11-14  Havoc Pennington  <hp@redhat.com>
2888
2889         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
2890         higher.
2891
2892         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
2893         account. Also, render rise, underline, background, etc. for
2894         pixbufs as well as text. Also, draw underlines one pixel higher.
2895
2896         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
2897         PangoAttribute for the rise, so it gets drawn properly. Also,
2898         add the GtkTextAppearance attribute for pixbuf/widget segments
2899         as well; we should go ahead and have rise, underline, background,
2900         stipple work for those
2901
2902         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
2903         Pango
2904
2905 2000-11-15  Tor Lillqvist  <tml@iki.fi>
2906
2907         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
2908
2909         * gtk/gtk.def: Update.
2910
2911         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
2912         included.
2913         (gtk_rc_get_im_module_file): Use run-time installation directory
2914         on Win32.
2915
2916         * gdk/win32/rc/gdk.rc: Remove.
2917         * gdk/win32/rc/gdk.rc.in: New file.
2918         * gdk/win32/rc/Makefile.am: New file
2919         * gdk/win32/Makefile.am: Corresponding changes.
2920
2921         * gtk/gtk.rc: Remove.
2922         * gtk/gtk-win32.rc.in: New file.
2923         * gtk/Makefile.am: Corresponding changes.
2924
2925         * configure.in: Corresponding changes.
2926
2927         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
2928         has a built gtkcompat.h. Developers using CVS code on Win32 can
2929         hand-edit it from gtkcompat.h.in.
2930
2931         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
2932         gtkcompat.h from gtkcompat.h.win32.
2933
2934 2000-11-14  Havoc Pennington  <hp@redhat.com>
2935
2936         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
2937         to default to GDK_ACTION_MOVE if the drag is within a single
2938         widget. Defaults to GDK_ACTION_COPY between widgets.
2939
2940 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
2941
2942         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
2943
2944         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
2945
2946         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
2947         srcdir != builddir
2948
2949         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
2950
2951         * configure.in (GTK_VERSION): Up to 1.3.2
2952
2953         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
2954         gtkimcontextxim.h
2955
2956         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
2957         missing doc comment.
2958
2959 2000-11-14  Alexander Larsson  <alexl@redhat.com>
2960
2961         * modules/linux-fb/basic.c:
2962         Use the glib iconv wrappers.
2963
2964 2000-11-13  Havoc Pennington  <hp@pobox.com>
2965
2966         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
2967         still more bugs.
2968
2969         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
2970         scroll the GdkWindows before realization.
2971
2972 2000-11-13  Havoc Pennington  <hp@redhat.com>
2973
2974         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
2975         where GC didn't always get updated properly
2976
2977         * demos/gtk-demo/textview.c (create_tags): Use subattributes
2978         of fonts instead of setting the entire font
2979
2980         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
2981         setting entire font
2982
2983         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
2984
2985         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
2986         a bunch of individually-settable font attributes. You can still 
2987         use the "font" and "font_desc" args, they just set all the font
2988         attributes at once.
2989
2990 2000-11-13 Elliot Lee <sopwith@redhat.com>
2991
2992         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
2993
2994 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
2995
2996         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
2997         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
2998
2999         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
3000         work better.
3001
3002 2000-11-13  Havoc Pennington  <hp@redhat.com>
3003
3004         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
3005         the module file.
3006
3007         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
3008         dest->language
3009
3010         * gtk/testtext.c: Test pixels above/below/inside paragraphs
3011         settings
3012
3013         * gtk/gtktextview.c: Implement object args and setters/getters for
3014         all the aspects of the GtkTextAttributes that are not set from
3015         GtkWidget attributes. This is spacing, justification, margins,
3016         etc.
3017
3018         (gtk_text_view_set_arg)
3019         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
3020         args
3021         (gtk_text_view_class_init): Add args for justify, left_margin,
3022         right_margin, indent, and tabs
3023         
3024
3025         * gtk/gtktextlayout.c (set_para_values): fix to display indent
3026         attribute properly
3027
3028         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
3029         replace with indent attribute
3030
3031         * gtk/gtktextlayout.c (set_para_values): multiply indent by
3032         PANGO_SCALE
3033
3034         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
3035         rearranging code to do that
3036         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
3037         i.e. don't subtract the top_margin first, just to keep
3038         all margin-futzing in one place.
3039
3040         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
3041
3042         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
3043         special case of last line, Pango now handles this itself.
3044         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
3045         Y coordinate
3046         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
3047         (find_display_line_above): wasn't moving the byte index as it
3048         iterated over lines, so always returned byte 0. Also, port to use
3049         PangoLayoutIter.
3050         (find_display_line_below): same problem as
3051         find_display_line_above. Also, port to use PangoLayoutIter.
3052
3053 2000-11-13  Alexander Larsson  <alexl@redhat.com>
3054
3055         * gdk/linux-fb/*.[ch]:
3056         Massive reindent to gtk+ standard. My hands hurt.
3057
3058         * gdk/linux-fb/gdkcolor-fb.c:
3059         Move GdkColorPrivateFB from inherited to windowing_data
3060
3061         * gdk/linux-fb/gdkcursor-fb.c:
3062         _gdk_cursor_new_from_pixmap made static
3063
3064         * gdk/linux-fb/gdkdnd-fb.c:
3065         GdkDragContextPrivate moved to windowing_data
3066
3067         * gdk/linux-fb/gdkdrawable-fb2.c:
3068         Removed endian.h, use glib endianness macros instead
3069         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
3070         and GDK_DRAWABLE_IMPL_FBDATA
3071
3072         * gdk/linux-fb/gdkfont-fb.c:
3073         Add empty gdk_font_load(). Needed for linking of Gtk+.
3074
3075         * gdk/linux-fb/gdkimage-fb.c:
3076         Removed endian.h, use glib endianness macros instead
3077         Moved GdkImagePrivateFB to windowing_data
3078         gdk_image_new_bitmap didn't always allocate enough
3079         memory.
3080
3081         * gdk/linux-fb/gdkinput-ps2.c:
3082         Added semi-working support for MS serial mice.
3083
3084         * gdk/linux-fb/gdkprivate-fb.h:
3085         s/GdkWindowPrivate/GdkWindowObject/
3086         Removed GdkWindowPrivate typedef
3087         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
3088         Removed GDK_DRAWABLE_P
3089         Move GdkColorPrivateFB from inherited to windowing_data
3090         Moved GdkImagePrivateFB to windowing_data
3091
3092         * gdk/linux-fb/gdkvisual-fb.c:
3093         Removed some unused debug code.
3094
3095         * gdk/linux-fb/gdkwindow-fb.c:
3096         Use stock cursors instead of including X headers.
3097         s/GdkWindowPrivate/GdkWindowObject/
3098
3099         * gdk/linux-fb/mitypes.h:
3100         Removed unused types.
3101
3102         * modules/linux-fb/basic.c:
3103         Use the pango fribidi wrappers.
3104
3105 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3106
3107         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
3108         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
3109         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
3110         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
3111         GEqualFunc where applicable.
3112         
3113         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
3114         pango_font_description_equal as changed in pango.
3115         
3116         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
3117
3118         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
3119
3120         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
3121
3122         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
3123
3124         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
3125
3126         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
3127
3128         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
3129         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
3130
3131         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
3132         gtk_rc_styles_compare -> gtk_rc_styles_equal.
3133
3134 2000-11-12  Havoc Pennington  <hp@pobox.com>
3135
3136         * demos/gtk-demo/Makefile.am (democodedir): change demo install
3137         dir to datadir/gtk+-2.0/demo
3138
3139         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
3140         sorts of text widget and Pango font bugs. Urgh.
3141
3142         * demos/gtk-demo/Makefile.am (demos): Add textview.c
3143
3144         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
3145         tree that you should double click to see the demo. Fix 
3146         types of variables to reflect changed return values from 
3147         GtkTreeStore and GtkTreeViewColumn constructors.
3148
3149         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
3150         newly-created buffer to prepare for GObject semantics
3151
3152         * gtk/testtext.c: don't leak the buffer with GObject semantics
3153
3154         * gtk/testtextbuffer.c: ditto
3155         
3156 2000-11-12  Havoc Pennington  <hp@pobox.com>
3157
3158         Rename this testgtk to gtk-demo to avoid confusion, and 
3159         install it so people can use it as a supplement to 
3160         the documentation.
3161         
3162         * demos/gtk-demo: Moved from demos/testgtk
3163
3164         * demos/testgtk: Removed
3165
3166         * configure.in: make Makefile in gtk-demo
3167         
3168         * demos/gtk-demo/Makefile.am: Install sample source to 
3169         datadir/gtk-demo (maybe there's a better place?), and 
3170         rename the binary to gtk-demo
3171         
3172         * demos/gtk-demo/main.c (load_file): Load installed sample
3173         source if source isn't found in pwd.
3174
3175 2000-11-09  Havoc Pennington  <hp@pobox.com>
3176
3177         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
3178         argument to set the char displayed when visibility == FALSE
3179         (gtk_entry_create_layout): If !entry->visible, replace 
3180         all chars with the "invisible char"
3181
3182         * gtk/testgtk.c: Test the invisible_char deal
3183         
3184 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
3185
3186         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
3187         can't get a native font in the right encoding.
3188
3189 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
3190
3191         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
3192         respectively.
3193
3194 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
3195
3196         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3197         Fix warning when moving between paragraphs.
3198
3199         * gtk/gtkentry.[ch]: Change move => move_cursor, 
3200         delete => delete_from_cursor, insert => insert_at_cursor
3201
3202 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
3203
3204         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
3205
3206         * modules/input/imthai-broken.c: A Thai input method for use if
3207         Thai keys are really generating Latin1 keysyms.
3208
3209         * modules/input/Makefile.am: Build these.
3210
3211 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
3212
3213         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
3214         g_filename_{to,from}_utf8 now takes an extra parameter.
3215
3216         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
3217         strftime into UTF-8.
3218
3219         (column_from_x, gtk_calendar_paint_day_names): Support RTL
3220         calendars.
3221
3222         (gtk_calendar_paint_day_names): Draw day names in the right 
3223         place.
3224         
3225 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
3226
3227         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
3228         problem with using result of g_get_charset() backwards -
3229         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
3230
3231         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
3232         negative min_width/height and max_width/height to
3233         mean "requisition"; this allows setting a window
3234         to be user-resizable in only one direction easily.
3235
3236         * gtk/testgtk.c (create_main_window): Remove hard-coded
3237         usize - set a default size in the vertical direction.
3238
3239 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
3240
3241         * gtk/gtkrange.c: Add some missing casts. Support 
3242         2 and 3 button clicks on the arrows to mean 
3243         "move by pages" and "jump to end". (Like gtkspinbutton)
3244
3245 2000-11-12 Hans Breuer <Hans@Breuer.Org>
3246
3247         * gdk/win32/makefile.msc : reflect build module changes
3248
3249         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
3250         from GdkPixmap*, cast implementation member instead.
3251
3252         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
3253         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
3254         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
3255         more Gdi functions return value checking. 
3256         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
3257         GdkImagePrivateWin32 *.
3258
3259         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
3260         menus useable again. Add #pragma message to keep reminded on this issue.
3261         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
3262         windows. This allows to enable backing store on Win32!
3263
3264         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
3265         in drawable is of impl type. Correct specific type checks appropriate.
3266  
3267         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
3268         GDK_WINDOW_DESTROYED before allocating new resources.
3269
3270         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
3271
3272         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
3273         (gdk_window_foreign_new) initialize parent handle.
3274         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
3275
3276         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
3277         Let the GDI invalidate the window on MoveWindow call to fix scrolling
3278         problems (e.g. main buttons in testgtk). 
3279
3280 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
3281
3282         * gtk/gtkentry.c (gtk_entry_key_press): Call 
3283         gtk_widget_activate for GDK_Return.
3284
3285         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
3286         of preedit cursor position.
3287
3288 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
3289
3290         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
3291         static.
3292
3293 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
3294
3295         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
3296         out support for multiple locales; that simple doesn't
3297         work reliably with current Xlib
3298
3299         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
3300         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
3301         Add support for positioning the cursor within the preedit string.
3302
3303 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
3304
3305         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
3306         at XIM input method module.
3307
3308         * gtk/gtktextview.c: Check for bindings after passing
3309         events to im context filter.
3310
3311 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
3312
3313         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
3314         empty attribute lists properly.
3315
3316 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
3317
3318         * gtk/queryimmodules.c (main): Return non-zero exit
3319         status if errors were encountered querying any
3320         modules.
3321
3322         * modules/input/Makefile.am (moduledir): remove
3323         leftover bin program target.
3324
3325         * docs/make-todo: Fix typo in error message.
3326
3327 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
3328
3329         * configure.in: Add modules/input/Makefile
3330
3331 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
3332
3333         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
3334         don't include gtkthemes.h.
3335
3336         * gtk/testgtk.c gtk/testtext.c: Set environment variables
3337         to point
3338
3339         * gtk/Makefile.am: Add new .c and .h files, build 
3340         gtk-query-immodules and use it to create a gtk.immodules
3341         file for use of test programs.
3342
3343         * gtk/gtkpreview.c: remove extra blank line.
3344
3345 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
3346
3347         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
3348         Add the ability to add extra tables beyond the default
3349         one, and also the ability to have compose sequences 
3350         that are prefixes of other compose sequences. 
3351
3352         * gtk/gtkimcontextsimple.c: Export a preedit string which
3353         consists of possible candidates for keystrokes that have
3354         been entered but not yet committed.
3355
3356         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
3357         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
3358
3359         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
3360         Add a function to add input-method switching menu items
3361         to a menu.
3362
3363         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
3364         when switching input methods.
3365
3366         * gtk/gtkimcontextsimple.[ch]: Change the format of
3367         the compose table to allow compose tables of different
3368         lengths / sequence.
3369
3370 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
3371
3372         * gtk/gtkimmodule.[ch]: Support routines for loading
3373         GtkIMContext implementations dynamically at runtime.
3374
3375         * modules/input/imcyrillic-translit.c: A sample input
3376         method (based on GtkIMContextSimple with an extra table),
3377         which demonstrates preedit strings and the module
3378         system for input modules
3379
3380         * gtk/queryimmodules.c: Program to query the available
3381         input modules and write the results into a file.
3382          
3383         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
3384         extra config options "im_module_file" (cache file for
3385         input method modules), and "im_module_path" - path
3386         to look for modules when generating cache file.
3387
3388         This doesn't scale.
3389
3390 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
3391
3392         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
3393         generic code from gtkthemes into a new abstraction
3394         GtkModule which has the logic for implementing
3395         a loadable module which implements a number of 
3396         GObject types.
3397
3398 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
3399
3400         * gtk/gtkeditable.[ch]: Convert GtkEditable from
3401         a class into an interface  
3402         
3403         * gtk/gtkoldeditable.[ch]: Move the old editable
3404         implementation into here, so legacy widgets can
3405         still rely on the implemenation. GtkOldEditable
3406         exports GtkEditable. Make selection handling
3407         code use new text conversion functions (and
3408         handle UTF-8 as a side-effect). Use GtkClipboard
3409         for CLIPBOARD.
3410
3411         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
3412         Adopt to match above changes.
3413
3414         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
3415         avoid GtkOldEditable implementation. Restructure
3416         to reduce number of places that modify state directly.
3417         Move to GtkBindingSet. Display the preedit string.
3418         Queue recomputation of PangoLayout and scroll position
3419         to improve effiency of doing complex changes naively.
3420         Add a menu with cut/copy/paste and input method selection.
3421
3422 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
3423
3424         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
3425         to set preedit string and attributes; display preedit string by
3426         inserting string and attributes at cursor when creating the
3427         GtkTextLineDisplay.
3428
3429         * gtk/gtktextlayout.c: Move all conversions between byte
3430         positions in PangoLayout and GtkTextIter into new functions
3431         line_display_iter_to_index/index_to_iter that properly
3432         handle the preedit string.
3433
3434         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
3435         it to return const char * (eventually will end up
3436         as GCONST char *, most likely.)
3437
3438         * gtk/gtktextview.[ch]: Handle the preedit string, call
3439         gtk_im_context_reset() as necessary, add a menu to switch
3440         input methods.
3441         
3442         * gtk/gtktextlayout.[ch]: Remove useless
3443         gtk_text_layout_get_log_attrs() function.
3444
3445 2000-11-11  Tor Lillqvist  <tml@iki.fi>
3446
3447         * gdk/gdk.def
3448         * gtk/gtk.def: Update.
3449
3450         * gdk/win32/*.c: Add last argument to g_type_register_static()
3451         calls.
3452
3453         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
3454
3455         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
3456         generated by older wheel mouse drivers. Get the correct y
3457         coordinate from WM_MOUSEWHEEL messages.
3458
3459         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
3460         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
3461         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
3462         Debugging functions.
3463
3464         * gdk/win32/gdkprivate-win32.h: Declare them.
3465
3466         * gdk/win32/gdkinput-win32.h: Add declaration for
3467         gdk_input_window_destroy().
3468
3469         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
3470
3471 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
3472
3473         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
3474         function to help handle keeping things in sync.
3475
3476 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
3477
3478         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
3479         BOXED marshallers.
3480
3481         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
3482         (gtk_list_store_class_init): use the new BOXED marshallers.
3483
3484         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
3485         new_with_values to new_with_types.
3486         (gtk_tree_store_get_column_type): add this.
3487         (gtk_tree_store_class_init): use the new BOXED marshallers.
3488
3489         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
3490         mirror some POINTER marshallers.
3491
3492 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
3493
3494         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
3495         allow more interesting iterators.  Also, made the lifecycle of
3496         iterators more explicit.
3497
3498         * gtk/gtktreemodelsort.[ch]: New model for sorting.
3499
3500         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
3501         types.
3502
3503 2000-11-09  Alexander Larsson  <alexl@redhat.com>
3504
3505         * demos/testgtk/menus.c:
3506         Changes to make the new testgtk compile after
3507         gtk_menu_append was removed.
3508
3509         * gdk/linux-fb/gdkdrawable-fb2.c
3510         (gdk_fb_get_depth, gdk_fb_get_visual,
3511         gdk_drawable_impl_fb_class_init): Implement
3512         these drawable functions. Now GtkImages work again.
3513
3514         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
3515
3516         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
3517         
3518         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
3519         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
3520         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
3521         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
3522
3523 2000-11-08  Havoc Pennington  <hp@pobox.com>
3524
3525         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
3526         visible_set args, don't know where these had gone, I thought they
3527         used to be there
3528
3529         * gtk/testtext.c: Add a menu item to apply invisibility tag;
3530         now we can test the feature and see that it's totally broken.
3531
3532 2000-11-08  Havoc Pennington  <hp@pobox.com>
3533
3534         Make DND copy pixbufs and tags when source and target share a 
3535         tag table.
3536         
3537         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
3538         in-process GTK_TEXT_BUFFER_CONTENTS target
3539         (gtk_text_view_drag_data_received): Paste from
3540         GTK_TEXT_BUFFER_CONTENTS if we receive it.
3541
3542 2000-11-08  Alexander Larsson  <alexl@redhat.com>
3543
3544         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
3545         API changes.
3546
3547         * gtk/gtkmenu.c: Add support for scrolling menus.
3548         Remove gtk_menu_append/prepend/insert, these have been moved to
3549         gtkcompat.h as #defines.
3550
3551         * gtk/gtkcompat.h.in:
3552         Add compatibility #defines for gtk_menu_append/prepend/insert
3553
3554         * gtk/gtkmenu.h: Add data needed for scrolling menus.
3555         GtkMenuPositionFunc gets an extra argument push_in.
3556         gtk_menu_append/prepend/insert removed.
3557         
3558         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
3559         positioning behaviour to fit to scrolling menus.
3560
3561         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
3562         into menuitem->submeny. That is wrong, and broke torn
3563         off submenus of torn off menus, since they were unrealized
3564         when the first menu was unrealized.
3565
3566         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
3567         gtk_menu_shell_select_item() since these need to be overridden in
3568         GtkMenu.
3569
3570         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
3571         positioning behaviour to fit to scrolling menus.
3572         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
3573         the current item so that it is prelighted when the menu pops up.
3574         This is a workaround to the fact that the menu doesn't get the
3575         initial enter event (due to grabs).
3576
3577         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
3578         s/gtk_menu_append/gtk_menu_shell_append/
3579
3580         * gtk/gtknotebook.c:
3581         s/gtk_menu_insert/gtk_menu_shell_insert/
3582
3583         * gtk/testgtk.c (create_menu, create_menus):
3584         Create the first menu with 50 items so that menu scrolling
3585         can be tested.
3586         
3587         
3588         Patch from Jonathan Blandford  <jrb@redhat.com>
3589
3590         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
3591         system to handle size requests.  First, we ask what the size of
3592         the toggle is.  Then, when allocating the size, we allocate the
3593         toggle_size first.  This way we can have multiple menu-item
3594         classes w/o needing a seperate class for each.
3595
3596         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
3597         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
3598
3599         * gtk/gtkcheckmenuitem.c
3600         (gtk_check_menu_item_toggle_size_request): New function to handle
3601         the toggle size-request.
3602
3603 2000-11-07  Havoc Pennington  <hp@redhat.com>
3604
3605         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
3606         Half-ass somewhat fix this function, so that scrolling to the
3607         insertion point works. Pango hacking is in the future to really
3608         fix it.
3609
3610         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
3611         length of data, no longer used.
3612
3613         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
3614         method contents in here, get rid of destroy method
3615         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
3616         that were backward. Remove debug spew.
3617         (cut_or_copy): Make the clipboard work with insert_range to
3618         preserve tags and pixbufs, not just the primary selection.
3619
3620 2000-11-07  Havoc Pennington  <hp@redhat.com>
3621
3622         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
3623         to gtk_text_mark_get_visible
3624
3625         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
3626         bug that was generating an invalid iterator
3627
3628         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
3629         ensure_char_offsets() in front of code placing the iter in an
3630         invalid state.
3631
3632         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
3633         make override_location arg const
3634         (paste): Replace the selection if we paste into the 
3635         current selection
3636
3637         * gtk/gtkselection.h: Remove "GtkSelectioData"
3638         (struct _GtkSelectionData): move the definition here.
3639
3640         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
3641         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
3642
3643         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
3644
3645         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
3646         (gtk_text_buffer_insert_range_interactive): implement
3647         (gtk_text_buffer_get_tags): Remove, replaced by
3648         gtk_text_iter_get_tags()
3649
3650         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
3651         limit parameter, to avoid infinite linear scan.
3652         (gtk_text_iter_backward_search): Add search limit
3653         (gtk_text_iter_forward_find_char): Add search limit
3654         (gtk_text_iter_backward_find_char): Add search limit
3655
3656 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
3657
3658         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3659         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
3660         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
3661         gdk/linux-fb/gdkwindow-fb.c:
3662         use g_object_new() instead of g_type_create_instance() which
3663         is a private function for fundamental type implementations.
3664
3665         * gdk/linux-fb/gdkinput-ps2.c:
3666         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
3667         instead just store the current modifier state. Add a (somewhat broken)
3668         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
3669         Rename exported function gdk_input_ps2_get_mouseinfo to
3670         gdk_input_get_mouseinfo.
3671
3672         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
3673         gdk/linux-fb/gdkwindow-fb.c:
3674         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
3675         
3676
3677 2000-11-02  Havoc Pennington  <hp@redhat.com>
3678
3679         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
3680         use stock buttons. Should be 100% source compatible, appropriate
3681         filesel fields now point to dialog->vbox and dialog->action_area.
3682         On the bizarre side, dialog->action_area and filesel->action_area
3683         are not the same widget.
3684         (gtk_file_selection_init): Put some padding around the selection
3685         entry, so it isn't touching the GtkDialog separator.    
3686
3687         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
3688         use stock buttons, etc. Should also be source compatible.
3689         Set the dialog default title in _init not _new().
3690         
3691         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
3692         Use stock buttons; don't put a button box inside the existing
3693         dialog button box. Don't bother with push/pop colormap anymore.
3694
3695         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
3696         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
3697         for message dialog, and necessary for the font selection and color
3698         selection with help and apply buttons.
3699         
3700         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
3701         to the created button widget. Set GTK_CAN_DEFAULT on the button.
3702         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
3703         between buttons, put less padding around the action area.
3704         (gtk_dialog_run): Exit on unmap rather than on destroy. 
3705         This will also exit the loop if the widget is hidden.
3706         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
3707         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
3708         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
3709         special-case delete event.
3710
3711         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
3712         formatting
3713         
3714 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
3715
3716         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
3717         button to temporarily disable position recording in the
3718         "saved position" test.
3719
3720 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
3721
3722         * gtk/gtkthemes.c: added compat code that temporarily implements
3723         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
3724         going to be revamped by owen's upcoming GtkModule patches, but
3725         untill then people want gtk to build, right? ;)
3726
3727 2000-11-04  Havoc Pennington  <hp@pobox.com>
3728
3729         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
3730         list
3731
3732         * docs/Changes-2.0.txt: Add note about
3733         gtk_container_get_toplevels()
3734
3735         * gtk/gtktextview.h: formatting
3736         
3737         * gtk/gtktextview.c: don't start descriptions with "Returns",
3738         confuses gtk-doc
3739
3740 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
3741
3742         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
3743         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
3744
3745 2000-11-03  Havoc Pennington  <hp@redhat.com>
3746
3747         * gtk/gtktexttagtable.c: Docs
3748         (gtk_text_tag_table_size): return a signed int
3749
3750         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
3751         (gtk_text_tag_event): make the event_object a GObject
3752
3753         * gtk/gtktextview.c: Write API docs for all functions.
3754
3755         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
3756         for gtk_text_view_get_window_type() called on one of the private
3757         windows.
3758
3759         * gtk/gtktextview.c: Instead of accessing text_view->buffer
3760         directly, call get_buffer() which demand-creates a default
3761         buffer. So gtk_text_view_new() can be used to create a view with a
3762         default buffer in it, if you just want an empty text box users can
3763         put data in. Useful for GUI builders also.
3764
3765 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
3766
3767         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
3768         the charset encodign portion MUST be in lowercase.
3769         * gtk/gtkrc.az: added file for Azeri language
3770
3771 2000-11-03  Havoc Pennington  <hp@redhat.com>
3772
3773         Get widgets working on the btree/buffer side. Display of them 
3774         still doesn't work.
3775         
3776         * gtk/gtktextview.c: start implementing child widget stuff
3777
3778         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
3779
3780         * gtk/gtktextlayout.c: handle embedded widgets
3781
3782         * gtk/gtktextdisplay.c: handle embedded widgets
3783
3784         * gtk/gtktextchild.c: Implement all the child anchor goo
3785
3786         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
3787         function
3788
3789         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
3790         (insert_pixbuf_or_widget_segment): abstract out common portions of 
3791         creating a child anchor or a pixbuf segment.
3792         (gtk_text_btree_create_child_anchor): new function
3793         (gtk_text_btree_unregister_child_anchor): new function
3794
3795         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
3796         allocate_child signal on GtkTextLayout
3797
3798         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
3799         values
3800         (gtk_text_iter_get_child_anchor): new function
3801
3802         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
3803         default handler for the changed signal, which calls
3804         gtk_text_buffer_set_modified(), instead of just always emitting
3805         changed then calling set_modified() manually. I guess this is
3806         maybe more flexible. It seems logical.
3807
3808 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
3809
3810         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
3811         now.
3812
3813         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
3814
3815 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
3818         been marked static.
3819
3820 2000-11-02  Havoc Pennington  <hp@redhat.com>
3821
3822         * gtk/testgtk.c (create_labels): had a test backward
3823
3824         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
3825         fields, so the dest GC ends up with the correct clip origin, 
3826         etc. Fixes a bug where colored labels didn't redraw 
3827         properly.
3828
3829 2000-11-02  Alexander Larsson  <alexl@redhat.com>
3830
3831         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
3832         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
3833         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
3834         Add last argument to t_type_register_static call.
3835         
3836         * gdk/linux-fb/gdkdrawable-fb2.c:
3837         Add last argument to t_type_register_static call.
3838         export the get_image drawable virtual function.
3839
3840         * gdk/linux-fb/gdkimage-fb.c:
3841         Add last argument to t_type_register_static call.
3842         rename gtk_image_get to _gdk_fb_get_image and
3843         export it for use by gdkdrawable-fb2.
3844
3845         * gdk/linux-fb/gdkprivate-fb.h:
3846         export _gdk_fb_get_image.
3847
3848         * gdk/linux-fb/gdkselection-fb.c:
3849         Add new api call stubs.
3850
3851         * gtk/Makefile.am:
3852         Missing ( in linux-fb part.
3853
3854         * modules/linux-fb/Makefile.am:
3855         Must link with gdk_pixbuf or get unresolved symbol.
3856
3857 2000-11-01  Havoc Pennington  <hp@pobox.com>
3858
3859         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
3860         GTK_TYPE_TEXT_ITER and BOXED marshallers
3861
3862         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
3863
3864         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
3865         
3866         * gtk/gtk-boxed.defs: add GtkTextIter
3867
3868         * gtk/gtkmarshal.list: Add marshallers for text widget that 
3869         properly use OBJECT and BOXED
3870
3871 2000-11-01  Havoc Pennington  <hp@redhat.com>
3872
3873         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
3874
3875         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
3876         before returning it. 
3877         
3878 2000-11-01  Havoc Pennington  <hp@redhat.com>
3879
3880         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3881         Clip the rectangle to be rendered to the drawable, since
3882         get_from_drawable() requires a region within the drawable
3883
3884 2000-11-01  Havoc Pennington  <hp@redhat.com>
3885
3886         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
3887         from coordinates.
3888
3889 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
3890
3891         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
3892         it isn't NULL.
3893
3894 2000-11-01  Havoc Pennington  <hp@pobox.com>
3895
3896         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
3897         on a label
3898         (gtk_label_finalize): unref the attr list if any.
3899
3900         * gtk/testgtk.c (create_get_image): close test on second click
3901         (make_message_dialog): close dialog if it exists
3902
3903         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
3904
3905         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
3906         gdk-pixbuf
3907
3908         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
3909         from Pango markup format
3910         (gtk_label_set_markup_with_accel): ditto but with accelerator
3911         parsing
3912
3913         * gtk/gtkimage.c (gtk_image_expose): reformatting.
3914
3915         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
3916         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
3917         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
3918         call gdk_window_get_origin().
3919
3920         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3921         implement GDK_PIXBUF_ALPHA_FULL
3922         
3923 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
3924
3925         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
3926         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
3927         g_signal_handlers_disconnect_matched to block/unblock and disconnect
3928         multiple handlers respectively, instead of only treating the
3929         first handler found (bug reported by owen).
3930
3931 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
3932
3933         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
3934
3935         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
3936
3937         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
3938         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
3939         gtk/gtktreeviewcolumn.h: Fixed inline docs.
3940
3941         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
3942         widget.  Needs writing someday.
3943
3944         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
3945         the docs.
3946
3947 2000-10-30  Havoc Pennington  <hp@redhat.com>
3948
3949         * gtk/gtktextview.h, gtk/gtktextview.c:
3950         Rename delete_at_cursor delete_from_cursor, and 
3951         move to move_cursor.
3952
3953 2000-10-30  Havoc Pennington  <hp@redhat.com>
3954
3955         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
3956         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
3957         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
3958         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
3959         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
3960         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
3961         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
3962         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
3963         gtktexttypes.h, gtktextview.c, gtktextview.h:
3964
3965         Massive reindentation and reformatting. Arg alignment and comments
3966         still need fixing in various places.
3967
3968 2000-10-30  Havoc Pennington  <hp@redhat.com>
3969
3970         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
3971         to be named insert_at_cursor and delete_at_cursor so C++ can
3972         handle them.
3973
3974 2000-10-28  Tor Lillqvist  <tml@iki.fi>
3975
3976         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
3977         to get a double directory separator in case the home directory
3978         ends with one. This would cause trouble especially on Windows,
3979         where the path will be confused with the syntax for an an UNC
3980         (network share) path \\server\share\path.
3981         (gtk_rc_add_initial_default_files): Ditto.
3982
3983 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
3984
3985         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
3986
3987         * gtk/gtktextview.c: Use correct marshallers.
3988
3989 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
3990
3991         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
3992         use new iter stuff, and added all the appropriate signals et al.
3993
3994         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
3995         code is internal to gtk only.
3996
3997 2000-10-28  Tor Lillqvist  <tml@iki.fi>
3998
3999         * gtk/gtk.def
4000         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
4001         glib-genmarshal etc.
4002
4003 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
4004
4005         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
4006         parallel builds.
4007
4008 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
4009
4010         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
4011
4012 2000-10-27  Robert Brady  <robert@suse.co.uk>
4013
4014         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
4015         en_GB (British), ia (Interlingua).
4016
4017 2000-10-26  Havoc Pennington  <hp@redhat.com>
4018
4019         * gtk/gtktextiter.c (my_strrstr): fix constness warning
4020
4021         Fixed output of:
4022         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
4023         
4024         * gtk/gtktextsegment.c (char_segment_new): rename
4025         (_char_segment_new_from_two_strings): rename
4026         (_toggle_segment_new): rename
4027         
4028         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
4029         (make_clipboard_widget): make it static
4030         (text_get_func): static
4031         (text_clear_func): static
4032
4033         * gtk/gtkcolorsel.c (adjustment_changed): make this function
4034         static
4035         (hex_changed): make it static
4036         (hsv_changed): make it static
4037         (opacity_entry_changed): make it static
4038
4039         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
4040         (toggle_segment_check_func): rename with _gtk
4041
4042         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
4043         (_widget_segment_new): rename
4044         (_widget_segment_add): rename
4045         (_widget_segment_remove): rename
4046         (_widget_segment_ref): rename
4047         (_widget_segment_unref): rename
4048
4049         * gtk/gtktextmark.c (_mark_segment_new): Rename
4050         _gtk_mark_segment_new   
4051
4052 2000-10-26  Havoc Pennington  <hp@redhat.com>
4053
4054         * gtk/gtkmarshal.list: add new marshallers used by the text widget
4055         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4056         types
4057
4058         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
4059         marshaller types
4060
4061         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
4062         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
4063         license on these files.
4064
4065         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
4066         work.
4067
4068         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
4069         runtime random number different for each tree, instead of 
4070         a constant I made up.
4071
4072 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
4073
4074         * gtk/Makefile.am: buncha cleanups, kludged build sources
4075         dependencies with a Makefile: oldest-source-stamp dependancy
4076         for the moment. automake is really fighting us here, with
4077         intentionally not allowing user-defined rules or dependancies
4078         prior to it's -include $(DEP_FILES) statement. sucks rocks!
4079
4080         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
4081         to public headers. tehy have a comment stating that they are
4082         "semi-public" aren't included by gtk.h and if enums popup there,
4083         they can be /*< skip >*/-ed.
4084
4085         * gtk/gtktextlayout.h: 
4086         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
4087         added LGPL... <SIGH>
4088
4089 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
4090
4091         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
4092         GtkTreeIter.  Added iterators everywhere.
4093
4094         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
4095
4096         * gtk/gtktreeviewselection.c: Changed to use the iterators.
4097
4098         * gtk/gtktreestore.c: Changed to use the iterators.
4099
4100         * gtk/gtkliststore.c: Commented out the code.  Will convert to
4101         iterators tomorrow.
4102
4103         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
4104         iterators tomorrow.
4105
4106         * gtk/treestoretest.c: Changed to use iterators.
4107
4108         * demos/testgtk/main.c: Moved to use the new iterator system.
4109
4110 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
4111
4112         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
4113         localization misbehaviour.
4114
4115         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
4116         a useless type without copy/free.
4117
4118         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
4119         of GTK_TYPE_CTREE_NODE.
4120
4121 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
4122
4123         * gtk/gtksignal.c:
4124         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
4125         applicable.
4126
4127         * gtk/gtk-boxed.defs (GtkSelectionData): specify
4128         gtk_selection_data_copy and gtk_selection_data_free
4129         do GtkSelectionData work as params in signals.
4130
4131 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
4132
4133         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
4134         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
4135         couldn't they at least give it a non-standard name?
4136         
4137         * gtk/gtktextlayout.c: arg! yet another implementation of
4138         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
4139
4140         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
4141         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
4142         home. now i know this _is_ a conspiracy.
4143
4144         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
4145         ::state-changed.
4146
4147         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
4148         (gtk_accel_group_create_add): marshaller signature fixups.
4149
4150         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
4151         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
4152
4153         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
4154         anymore.
4155
4156 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
4157
4158         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
4159         due to the signal system changes, it wouldn't build currently. to
4160         be fixed soon.
4161
4162         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
4163
4164         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
4165         so it needs gtk_marshal_VOID__ENUM() instead of
4166         gtk_marshal_NONE__UINT().
4167
4168         * gdk/gdk*.c: adapted type registration functions.
4169
4170         * gtk/gtkbindings.c:
4171         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
4172         gone.
4173
4174         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
4175
4176         * gtk/gtkobject.c:
4177         (gtk_object_destroy):
4178         (gtk_object_shutdown): fixed recursion guards. basically we have to
4179         catch the case where any of GObject.shutdown() or gtk_object_destroy()
4180         is called during ::destroy, and avoid recursion there.
4181
4182         * gtk/gtktypeutils.c:
4183         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
4184         boxed_copy/boxed_free. this needs a more general solution based on a
4185         publically installed code-generator utility.
4186
4187         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
4188         glib's gobject has support for that now.
4189         define GtkSignalMarshaller in terms of GSignalCMarshaller.
4190
4191 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
4192
4193         * gtk/gtksignal.[hc]:
4194         * gtk/gtkmarshal.[hc]:
4195         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
4196         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
4197         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
4198         care of that.
4199
4200         * *.c: marshaller name fixups.
4201
4202         * gtk/gtkmarshal.list: added a comment briefing the format.
4203
4204 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
4205
4206         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
4207         compatibility macros here now. more specifically, most of
4208         the API is preserved (yes, _most_, nonwithstanding the
4209         following exceptions listed, the API is stil lHUGE ;)
4210         things that got removed completely:
4211         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
4212         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
4213         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
4214         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
4215         gtk_signal_remove_emission_hook().
4216         non-functional functions variants:
4217         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
4218         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
4219         not supported anymore.
4220         (gtk_signal_compat_matched): new internal function to aid
4221         implementation of the compatibility macros, it  provides
4222         functionality to block/unblock/disconnect handlers based
4223         on func/data.
4224
4225         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
4226
4227         * *.c: adaptions to new type registration API signatures.
4228
4229 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
4230
4231         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
4232
4233 2000-10-25  Robert Brady  <robert@suse.co.uk>
4234
4235         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
4236         gdk_property_delete): If window == NULL, assume the root window.
4237         (restoring the behaviour that was in 1.2).
4238         
4239         * gtk/testtext.c (save_buffer): Allow creation of new files when
4240         saving.
4241
4242         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
4243         calls to read().
4244
4245 2000-10-25  Tor Lillqvist  <tml@iki.fi>
4246
4247         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
4248
4249         * gdk/win32/gdkdrawable-win32.c
4250         * gdk/win32/gdkimage-win32.c
4251         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
4252         X11 backend.
4253
4254         * gdk/win32/gdkcc-win32.c
4255         * gdk/win32/gdkcolor-win32.c
4256         * gdk/win32/gdkfont-win32.c
4257         * gdk/win32/gdkinput-win32.c
4258         * gdk/win32/gdkmain-win32.c
4259         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
4260
4261 2000-10-24  Havoc Pennington  <hp@redhat.com>
4262
4263         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
4264         it a static function
4265
4266         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
4267         redraw text when a tag is applied to it.
4268
4269         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
4270         (gtk_text_tag_affects_nonsize_appearance): private functions to
4271         see if a tag requires various kinds of redraw/layout to be queued
4272         up.
4273
4274         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
4275
4276         * gtk/testtext.c (fill_example_buffer): Put the cursor 
4277         at the start of the buffer, so search works by default
4278
4279         * gtk/gtktextiter.c (lines_match): init match_start always
4280
4281         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
4282         function, get iter at a line + a byte index
4283
4284         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
4285         to set byte position within a line
4286         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
4287
4288 2000-10-23  Havoc Pennington  <hp@redhat.com>
4289
4290         * gtk/testtext.c: Re-enable the "find" dialog
4291
4292         * gtk/testgtk.c: Add test for gdk_drawable_get_image
4293         
4294         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
4295         the arguments to gdk_draw_drawable were in the wrong order
4296         (gdk_window_paint_init_bg): This function was ignoring the
4297         init_region, instead of clipping to it, so the entire backing
4298         pixmap was cleared on every begin_paint()
4299         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
4300         was in here again, the loop kept using the same GtkWindowPaint
4301         over and over.
4302         (gdk_window_begin_paint_region): Fix a bug where we had two
4303         x_offset instead of x_offset and y_offset
4304
4305         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
4306         before we get the image.
4307         (gdk_draw_drawable): get the composite before we draw the drawable.
4308         (gdk_drawable_real_get_composite_drawable): default
4309         get_composite_drawable implementation that returns the drawable 
4310         itself
4311
4312         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
4313         get_composite_drawable virtual function
4314
4315         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
4316         list-walking bug
4317
4318         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
4319         make this work if the source drawable is a GdkDrawableImplX11
4320         instead of a public drawable type. This is really broken; the
4321         problem is that GdkDrawable needs a virtual method get_xid(), but
4322         of course that doesn't work in practice. Enter RTTI.
4323
4324         Also, improve mismatched depth message.
4325
4326         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
4327         GdkPixmap
4328
4329         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
4330         install _gdk_x11_get_image as our implementation of get_image
4331         
4332         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
4333         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
4334
4335         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
4336         gdk_drawable_get_image
4337
4338         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
4339
4340         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
4341         get_image
4342
4343         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
4344         trailing semicolon after for loop
4345
4346 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
4347
4348         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
4349         where font_desc for widget's context lagged widget's font_desc by
4350         one step.
4351
4352 2000-10-22  Tor Lillqvist  <tml@iki.fi>
4353
4354         * gdk/win32/gdkgc-win32.c
4355         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
4356
4357         * gtk/makefile.mingw.in
4358         * gtk/gtk.def: Updates.
4359
4360         * gtk/testgtk.c: sleep() is called _sleep in MS's C
4361         library.
4362
4363         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
4364
4365         * gtk/makefile.msc: Remove
4366
4367         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
4368
4369         * gtk/Makefile.am: Add it.
4370
4371         * configure.in: Generate it.
4372
4373         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
4374         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
4375         something even if not implemented, to satisfy picky MSVC.
4376
4377         Patches by Hans Breuer:
4378         
4379         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
4380         SetBkMode() and SetTextAlign() before calling
4381         pango_win32_render().
4382
4383         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
4384         Set hcliprgn to NULL after destroying it.
4385         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
4386
4387         * gdk/win32/gdkgeometry-win32.c
4388         (_gdk_windowing_window_queue_antiexpose): More effective
4389         implementation.
4390
4391         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
4392         depth as default, not the visual's.
4393
4394         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
4395         against empty title.
4396
4397         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
4398         IMAGE_PRIVATE_DATA.
4399
4400         * gdk/win32/gdkimage-win32.c: Use it.
4401
4402 2000-10-22  Robert Brady  <robert@suse.co.uk>
4403
4404         * configure.in: Check for bind_textdomain_codeset
4405
4406         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
4407         present, make use of it.
4408
4409         Add a translatable string "default:LTR" which, if translated
4410         to "default:RTL", will cause the default direction to be
4411         Right-to-Left.
4412
4413         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
4414         direction if marked as flippable.
4415
4416         * gtk/gtkhscale.c: Mark widget as flippable.
4417         
4418 2000-10-04  Havoc Pennington  <hp@redhat.com>
4419
4420         * gtk/testgtk.c (create_buttons): create some stock buttons
4421         with the default accel group
4422         (create_image): test some new GtkImage features
4423         (make_message_dialog): test GtkMessageDialog
4424         (create_modal_window): fix someone's bizzarro indentation
4425
4426         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
4427         GTK_WIN_POS_CENTER_ON_PARENT. 
4428         Add "destroy with parent" setting, which means the window goes
4429         away with its transient parent.
4430         (gtk_window_get_default_accel_group): get the default accel group
4431         for the window.
4432         (gtk_window_set_destroy_with_parent): set/unset destroy with
4433         parent flag
4434         (gtk_window_read_rcfiles): invalidate icon set caches
4435         after reloading rcfiles 
4436
4437         * gtk/gtkenums.h (GtkWindowPosition): add
4438         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
4439         on its parent window when the dialog is mapped for the first time.
4440
4441         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
4442         a simple message dialog class
4443         
4444         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
4445         handler to emit response signal, and maybe later it would
4446         honor a hide_on_delete flag - though that isn't there yet.
4447         Set border width on the vbox to 2, so we get some padding.      
4448         Use a button box for the action area.
4449         (gtk_dialog_key_press): synthesize a delete event if Esc
4450         is pressed and the GtkWidget key press handler didn't 
4451         handle the escape key.
4452         (gtk_dialog_new_with_buttons): new function creates a dialog
4453         with some default buttons in it.
4454         (gtk_dialog_add_action_widget): add an activatable widget
4455         as a button in the dialog - you can also add a non-activatable
4456         widget by accessing the action area directly.
4457         (gtk_dialog_add_button): add a simple button - stock ID or 
4458         label - to the action area
4459         (gtk_dialog_response): emit response signal
4460         (gtk_dialog_run): block waiting for the dialog, return 
4461         the response. Override normal delete_event behavior, so that 
4462         delete_event does nothing inside gtk_dialog_run().
4463
4464         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
4465         emitted when an action widget is clicked or the dialog gets
4466         delete_event
4467
4468         * gtk/gtk.h: add gtkmessagedialog.h
4469
4470         * gtk/Makefile.am: add gtkmessagedialog.[hc]
4471
4472 2000-10-18  Havoc Pennington  <hp@redhat.com>
4473
4474         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
4475         where any number of empty lines would get skipped
4476
4477         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
4478         edge.
4479
4480         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
4481         warning about invalid iterators (explain more thoroughly)
4482         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
4483
4484         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
4485         big
4486
4487         * demos/*.c: Add error handling
4488
4489         * gtk/gtktextbuffer.c: don't modify const iterators
4490
4491         * gtk/gdk-pixbuf-loader.c: Add full error handling here
4492
4493         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
4494         on file load
4495
4496         * gtk/gtkiconfactory.c: Update to reflect addition of error
4497         handling to gdk-pixbuf loaders
4498
4499 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
4500
4501         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
4502         move to new modularized testgtk.
4503
4504 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
4505
4506         * gtk/gtktreeview.c: Draw the arrows correctly.
4507
4508         * gtk/gtktreemodel.c: Added user docs.
4509
4510         * gtk/gtk.h: remove gtktreedatalist.h.
4511
4512         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
4513         parent when generating my type.
4514
4515         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
4516         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
4517
4518 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
4519
4520         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
4521         GtkTreeModel from object to interface.
4522
4523 2000-10-16  Havoc Pennington  <hp@redhat.com>
4524
4525         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
4526         compilation
4527
4528 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
4529
4530         * gtk/gtktreeselection.c: Add API documentation to all public
4531         functions.
4532
4533         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
4534         functions.
4535
4536 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
4537
4538         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
4539         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
4540         docs to all public functions.
4541
4542         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
4543         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
4544         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
4545         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
4546         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
4547         issue.
4548
4549 2000-10-14  Robert Brady  <robert@suse.co.uk>
4550
4551         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
4552
4553 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
4554
4555         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
4556         values other then G_TYPE_STRING.
4557         * gtk/gtktreeselection.c: Minor commenting updates.
4558         * gtk/gtktreeview.c: Format updates.
4559
4560 2000-10-09  Tor Lillqvist  <tml@iki.fi>
4561
4562         * README.win32: Update.
4563
4564         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
4565         lines that had been deleted by mistake (?).
4566
4567         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
4568         also the case fg==white and bg==black (but still not randomly
4569         coloured cursors). Thanks to Wolfgang Sourdeau.
4570
4571         * gdk/win32/*.c: Silence gcc -Wall.
4572
4573         * gtk/gtk.def: Add missing entry points.
4574
4575         Fixes by Hans Breuer:
4576
4577         * gdk/makefile.msc
4578         * gdk/win32/makefile.msc: Update.
4579
4580         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
4581         some MSVC thing, presumably), cause breakpoint on failures. Add
4582         GDK_NOR case. Call g_log_set_always_fatal.
4583
4584         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
4585         should be pased by reference.
4586         
4587         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
4588         
4589         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
4590
4591         * gdk/win32/gdkevents-win32.c
4592         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
4593
4594         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
4595         implementation object.
4596
4597         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
4598         not just windows.
4599         
4600         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
4601         Use the wrapper object.
4602         
4603 2000-10-06  Havoc Pennington  <hp@redhat.com>
4604
4605         * Makefile.am (SRC_SUBDIRS): contrib subdir
4606
4607         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
4608         so it can be used in Xlib version
4609
4610         * demos/testpixbuf.c (update_timeout): error checking from 1.0
4611         tree
4612
4613         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
4614         change from 1.0 tree that returns first frame of animation
4615         if the loaded file is an animation.
4616
4617         * contrib: add new directory to hold stuff that comes with GTK+
4618         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
4619         
4620         * configure.in: add contrib/*
4621
4622 2000-10-05  Havoc Pennington  <hp@redhat.com>
4623
4624         * demos/testpixbuf-save.c: add pixbuf save test
4625
4626         * demos/Makefile.am: add testpixbuf-save.c
4627
4628 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
4629
4630         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
4631         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
4632         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
4633         * gtk/gtktreeselection.[ch]: Replaced
4634         "node_selected"/"node_unselected" signal with "selection_changed"
4635         signal.
4636
4637 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
4638
4639         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
4640         tree widget.
4641
4642 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
4643
4644         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
4645         drawing.
4646
4647 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
4648
4649         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
4650         Move list pointer forwards before removing item from
4651         list. (Crash reported by Salmaso Raffaele)
4652
4653         * gdk/gdkwindow.h: Remove spurious trailing ,
4654
4655         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
4656         dependencies on uninstalled libraries, sorry folks.
4657
4658 2000-10-04  Havoc Pennington  <hp@redhat.com>
4659
4660         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4661         gtk/gtkiconfactory.c: Fix copyrights    
4662
4663         * demos/testpixbuf.c: add inline pixbuf test
4664         
4665 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
4666
4667         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
4668         Add gdk_window_iconify.
4669
4670         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
4671         (gdk_window_set_geometry_hints): Add win_gravity
4672         to geometry structure.
4673
4674         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
4675         Implement _NET_WM_PING.
4676
4677         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
4678         Set _NET_WM_PID on the client leader.
4679
4680         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
4681         Handle UTF-8 better.
4682
4683         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
4684         UTF-8 better, set _NET_WM_NAME as well. Only set
4685         icon name if it hasn't previously been explicitely 
4686         set.
4687
4688 2000-10-03  Havoc Pennington  <hp@redhat.com>
4689
4690         * gtk/testtextbuffer.c: clean up trailing whitespace,
4691         add extensive tests for tag toggle iteration.
4692         
4693         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
4694         distance
4695
4696         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
4697         optimize case where the tag root is on level 1
4698         (gtk_text_line_previous_could_contain_tag): attempt to implement
4699         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
4700         functionality
4701
4702         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
4703         Implement this, though not very efficiently.
4704
4705         * gtk/gtktextiterprivate.h: reformat
4706
4707         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
4708         iterator
4709
4710         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
4711         this to properly revalidate the iterators.
4712
4713         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
4714         properly at the end of the line (and therefore on empty lines)
4715
4716         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
4717         maybe we should return a value...
4718
4719 2000-10-03  Tor Lillqvist  <tml@iki.fi>
4720
4721         * config.h.win32: Guard definition of alloca(). glib.h now handles
4722         that.
4723
4724         * gdk/gdk.def
4725         * gtk/gtk.def: Add new entry points.
4726
4727         Changes just to make GTK+ build without errors on Win32. No hope
4728         of it working in its current state, though...:
4729         
4730         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
4731         some functions from the X11 backend, just to make GTK+ build.
4732
4733         * gdk/makefile.mingw.in
4734         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
4735         number. Add new object files.
4736
4737         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
4738         GetMessageTime to get timestamp (where on X11 uses
4739         gdk_x11_get_server_time()).
4740
4741 2000-10-02  Havoc Pennington  <hp@pobox.com>
4742
4743         * gtk/gtktextview.c: text_window_* weren't static and should have
4744         been.
4745         Start work on child widgets; not yet complete, syncing to 
4746         office computer.
4747
4748         * gtk/gtktextchild.h: change this to contain a public interface,
4749         starting work on child interfaces.
4750         * gtk/gtktextchildprivate.h: move private interfaces here
4751
4752         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
4753
4754         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
4755         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
4756         gtk/gtktextmark.c: copyright notices
4757
4758         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
4759         internal functions      
4760
4761         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
4762         internal function
4763
4764         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4765         Reformatting    
4766
4767 2000-09-30  Havoc Pennington  <hp@pobox.com>
4768
4769         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
4770         NULL start/end pointers
4771
4772         * gtk/gtktextbuffer.c: Write some docs
4773         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
4774         NULL, so you can just check whether there's a selection.        
4775
4776         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
4777         cleanup_line or segments_changed ourselves, it gets done 
4778         in unlink_segment
4779
4780         * gtk/gtktextmark.h:
4781         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
4782         
4783         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
4784
4785         * gtk/gtktextmark.c: delete some more old Tk cruft
4786
4787         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
4788         mark before removing it, so we can emit MARK_DELETED with a valid
4789         pointer.
4790         (gtk_text_buffer_mark_set): hold ref across signal emission
4791
4792         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
4793         whining about attempts to delete special marks
4794
4795         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
4796         underscore, since it's internal.
4797
4798         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
4799         now implemented in terms of iterators in gtktextiter.h
4800
4801         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
4802         New function, destructively sets contents of buffer. Also 
4803         a convenient way to clear the buffer by setting text to ""
4804
4805         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
4806         multiline string literal
4807
4808         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
4809         text changes.
4810
4811         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
4812         is not dereferenceable
4813         (gtk_text_iter_forward_lines): fix return value
4814
4815 2000-09-29  Havoc Pennington  <hp@redhat.com>
4816
4817         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
4818
4819         * gtk/gtktextview.c: Implement drag thresholding; change functions 
4820         that set border window size to have nicer name
4821         (gtk_text_view_mark_set_handler):  Fix this to have the 
4822         right signature.
4823
4824         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
4825
4826         * gtk/testtext.c: Update with API changes, put line numbers on 
4827         both sides.
4828         
4829         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
4830         with this
4831
4832         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
4833         pixbuf; delete a big block of #if 0 Tk code
4834
4835         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
4836         insert_pixmap with insert_pixbuf
4837
4838 2000-09-29  Martin Baulig  <baulig@suse.de>
4839
4840         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
4841         confusion with the GdkPixbuf of the GNOME 1.x platform.
4842
4843 2000-09-29  Havoc Pennington  <hp@pobox.com>
4844
4845         * gtk/gtktextview.c: Implement the side windows.
4846
4847         * gtk/testtext.c: Implement simple line numbering in the 
4848         left side window; seems to make scrolling sloooow. Oops.
4849         Also, cursor blink is for some reason causing redraws
4850         of the line numbers. Should investigate...
4851
4852 2000-09-28  Havoc Pennington  <hp@redhat.com>
4853
4854         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
4855         scrolling child windows, and draw focus rectangle properly.
4856         
4857         (gtk_text_view_buffer_to_window_coords):
4858         Coordinate transformation to deal with all these freaking windows
4859         and offsets
4860         (gtk_text_view_window_to_buffer_coords): transform the other way
4861
4862         * gtk/testtext.c (create_buffer): Update to match Pango API change
4863
4864         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
4865         anonymous tags
4866         (foreach_unref): don't emit remove signal from finalize, just
4867         set tag's parent to NULL
4868
4869 2000-09-26  Havoc Pennington  <hp@redhat.com>
4870
4871         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
4872         Fix some warnings       
4873
4874 2000-09-26  Havoc Pennington  <hp@redhat.com>
4875
4876         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
4877         headers into the private header list
4878
4879         * Makefile.am (pkgconfig_DATA): install pkg-config files
4880
4881         * configure.in: add pkg-config files
4882
4883         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
4884
4885         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
4886         outstanding icon caches on theme change.
4887
4888         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
4889         important types:
4890
4891         (GtkIconSource): Specification for creating a pixbuf 
4892         appropriate for a direction/state/size triplet from 
4893         a source pixbuf or filename
4894
4895         (GtkIconSet): List of GtkIconSource objects that are used to
4896         create the "same" icon (e.g. an OK button icon), and cache for
4897         rendered icons
4898
4899         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
4900         up the icon set for a given stock ID.  GTK maintains a stack of
4901         GtkIconFactory to search, and applications or libraries can add
4902         additional icon factories on top of the stack
4903         
4904         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
4905         the set of GtkIconSource specified for a given stock ID into 
4906         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
4907         RcStyle, under the specified stock ID.
4908
4909         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
4910         render_icon used to derive a GdkPixbuf from a GtkIconSource.
4911         This allows people to theme how prelight, insensitive, etc. are
4912         done.
4913
4914         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
4915         icon factories for a style, and return the resulting 
4916         icon set if any.
4917
4918         (gtk_style_render_icon): Render an icon using the render_icon 
4919         method in the GtkStyleClass.
4920
4921         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
4922         Use the style for a given widget to look up a stock ID, get the
4923         icon set, and render an icon using the render_icon method 
4924         of the style
4925
4926         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
4927         (contains information about a stock item), the built-in stock item
4928         IDs, and functions to add/lookup stock items.
4929
4930         * gtk/stock-icons/*: Stock icons that come with GTK
4931
4932         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
4933         a button based on a GtkStockItem
4934         (gtk_button_new_accel): Takes a uline string and accel group, and
4935         installs the accelerator.
4936
4937         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
4938         image-display widget.
4939
4940 2000-09-25  Havoc Pennington  <hp@redhat.com>
4941
4942         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
4943
4944         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
4945         Fix a bug when removing node data, we didn't properly 
4946         re-splice the linked list after removing the data.
4947
4948         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
4949         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
4950
4951         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
4952
4953         * gtk/gtktextlayout.c (set_para_values): Set tab array 
4954         for the layout from the GtkTextTag.
4955
4956         * gtk/gtktexttypes.h: delete tab and search cruft, 
4957         remove g_convert() in favor of GLib version
4958
4959         * gtk/gtktexttypes.c: remove tab implementation from here,
4960         move to Pango
4961
4962         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
4963         tab stuff using new PangoTabArray from Pango
4964
4965         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
4966         unused border_width stuff
4967
4968 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
4969
4970         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
4971         glib) and now useless utf_to_latin1() latin1_to_utf()
4972
4973         * gtk/gtktextview.[ch]: Change ::move_insert and
4974         ::delete_text action signals to ::move and ::delete;
4975         create the signals with the right enumeration type,
4976         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
4977         C-v bindings, change Home, End to move to beginning/end
4978         of line, Add C-Home C-End to move to beginning/end
4979         of buffer. Change ::cut_text to ::cut_clipboard, etc;
4980         combine ::scroll_text into ::move; use new GtkSelectionData
4981         functions to simplify DND text handling.
4982         
4983         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
4984         deletion enumerations here, rename enumeration values to 
4985         be consistently plural.
4986
4987         * gtk/gtktextbuffer.c: Use new clipboard interfaces
4988         for cut/copy/paste and primary selection.
4989
4990         * gtk/gtktextbuffer.[ch]: Remove excess time and
4991         'interactive' arguments from cut/copy/paste;
4992         rename cut to cut_clipboard, etc; remove
4993         gtk_text_buffer_get_clipboard_contents().
4994
4995         * gtk/gtktextlayout.[ch]: Add 
4996         gtk_text_layout_move_iter_to_line_end() to move the iter to 
4997         line ends.
4998
4999         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
5000         Functions to set or get a UTF-8 string on the selection
5001         data.
5002
5003         * gtk/gtkclipboard.[ch]: New, simplified selection handling
5004         interfaces.
5005
5006         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
5007         created widgets - one of these is useless if we don't.
5008
5009         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
5010         a public function clear all targets registered for the
5011         widget.
5012
5013         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
5014         Never call gtk_widget_realize() - that was just asking
5015         for bizarre side-effects.
5016
5017         * gtk/gtkselection.c (gtk_selection_owner_set): Call
5018         gdk_selection_owner_set even if the widget is the
5019         same so that we reliably update the timestamp on
5020         the server.
5021
5022         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
5023         gdk_x11_get_server_time() function.
5024         
5025         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
5026         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
5027         Add some tricky filtering on serial numbers for
5028         selection clear events to fix up long-standard
5029         race condition FIXME's in gtkselection.c.
5030
5031         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
5032         routines to convert from utf8 to compound text or
5033         STRING and from a text property to UTF-8.
5034
5035         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
5036         a convenience function gdk_get_current_event_time().
5037
5038         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
5039         and free selection_data->data properly
5040
5041 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
5042
5043         * gtk/gtkthemes.c: Remove some unecessary includes.
5044
5045 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
5046
5047         * gtk/gtktextdisplay.c
5048         * gtk/gtktextlayout.c
5049         * gtk/gtktexttag.c
5050         * gtk/gtktexttag.h
5051         * gtk/testtext.c: Change the overstrike property to strikethrough,
5052         to closer match pango.
5053
5054 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
5055
5056         * gtk/gtktextview.c: Fix up visibility so that focus,
5057         cursor_visible and blink interact properly.  Reenable cursor blink
5058         which had been roughly disabled. Make blink and focus
5059         properly per-view.
5060
5061         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
5062         Add a flag for whether to display insertion cursor and
5063         a function to set the flag.
5064
5065         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
5066         get_line_y() to get_line_yrange(), to be a bit more generally
5067         useful.
5068
5069 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
5070
5071         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
5072           do stop_navigating_submenu, to clear last timeout properly.
5073           Also in gtk_menu_motion_notify move ignore_enter above
5074           the conditional to make it always happen as suggested by Owen
5075
5076 2000-09-07  Tor Lillqvist  <tml@iki.fi>
5077
5078         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
5079
5080         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
5081         w32api headers.
5082
5083         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
5084         declarations.
5085
5086         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
5087         (gdk_win32_get_colormap): A line had been deleted by mistake.
5088
5089         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
5090         (gdk_event_translate): Handle more virtual keycodes to be able to
5091         generate GDK events for Control-comma, Control-period, etc.
5092
5093         * gtk/gtk.def: Add some missing entry points.
5094
5095 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
5096
5097         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
5098         Doc comment fixing. (Mostly non-matching parameter names.)
5099
5100         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
5101         comments a little to avoid looking like a doc comment.
5102
5103         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
5104         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
5105         conversions be changed to GError?)
5106
5107         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
5108         Move private #defines into .c file.
5109
5110         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
5111         order of argument addition, remove duplicates.
5112
5113         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
5114         parent class is FrameClass, not BinClass.
5115
5116         * gtk/gtk.h: Add gtkinvisible, which was missing.
5117         (It's occasionalyl useful for client apps, if seldom.)
5118
5119         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
5120         #define.
5121
5122 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
5123
5124         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
5125         coordinates when creating window, instead of GDK-space
5126         coordinates. (Avoid BadValue on too large windows.)
5127
5128 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5129
5130         * configure.in (use_mmx_asm): Remove conftest* after use along the
5131         lines of AC_TRY_COMPILE.        
5132         
5133         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
5134         of g_dirname, which is deprecated.
5135         (gtk_rc_parse_any): Removed calls to
5136         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
5137
5138         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
5139         Removed calls to g_hash_table_{freeze,thaw}, as they are
5140         deprecated now.
5141
5142         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
5143         instead of g_basename.
5144         
5145 2000-09-04 Elliot Lee <sopwith@redhat.com>
5146         
5147         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
5148         ANSI warning.
5149
5150 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
5151
5152         * gtk/gtkwidget.h:  Add some documenting comments about 
5153           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
5154           just as owen said on irc.
5155
5156         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
5157           set HAS_DEFAULT.  Only set it if there isn't another window
5158           holding it (a focus window which RECEIVES_DEFAULT) and only unset
5159           it if the widget is not the focused window with RECEIVES_DEFAULT.
5160           This fixes weird double default bugs in dialogs which has things
5161           call gtk_window_set_default at times.
5162
5163 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
5164
5165         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
5166         Nils Barth and David Santiago to improve submenu
5167         navigation. The patch does this by creating a triangular
5168         region from the point where the pointer leaves the
5169         menu to the submenu.  While the pointer is in
5170         that region and a timeout has not expired, events 
5171         that would cause the active submenu to change are
5172         ignored.
5173
5174 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
5175
5176         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
5177         moving a toplevel window immediately after sizing it would
5178         result in it being sized back to the old size since 
5179         impl->width, impl->height aren't updated until we hear
5180         back from the server. There is still a (longstanding) bug
5181         here that gdk_window_get_size() will give the wrong size
5182         until we do hear back.
5183
5184 2000-08-31  Havoc Pennington  <hp@redhat.com>
5185
5186         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
5187         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
5188         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
5189         Rename GtkTextStyleValues to GtkTextAttributes
5190
5191 2000-08-31  Havoc Pennington  <hp@pobox.com>
5192
5193         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
5194         for rapid testing whether an iterator is the end iterator
5195         (gtk_text_btree_new): init end line cache
5196         (gtk_text_line_is_last): use fast cached line to 
5197         see if we're the last line.
5198         (get_last_line): use cached line here too, should 
5199         speed up some random unrelated code.
5200         
5201 2000-08-30  Havoc Pennington  <hp@pobox.com>
5202
5203         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
5204         signals.
5205
5206         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
5207         delete_text signals. This allows the signals to be used for
5208         implementing undo.
5209
5210         * gtk/gtktextbuffer.c: Change signal handler signatures; 
5211         provide "interactive" argument when emitting insert_text or
5212         delete_text signal.
5213         
5214 2000-08-30  Havoc Pennington  <hp@pobox.com>
5215
5216         * gtk/gtktextbuffer.c: Docs
5217
5218 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
5219
5220         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
5221         from switch statements, since Tor removed the enumeration
5222         value.
5223         
5224         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
5225         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
5226
5227 2000-08-29 Elliot Lee <sopwith@redhat.com>
5228         * */*.h: Use G_GNUC_CONST.
5229
5230 2000-08-27  Havoc Pennington  <hp@pobox.com>
5231
5232         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
5233         minor indentation fixes, inserted some FIXME about stuff I
5234         realized was broken while documenting it.
5235         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
5236         GTK convention  
5237
5238 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
5239
5240         * gtk/testgtk.c (create_styles): Fix double free of
5241         font desc.
5242
5243 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5244
5245         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
5246         
5247         * gtk/testgtk.c (create_styles): Add a test for modifying
5248         the style through gtk_widget_modify_*.
5249
5250         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
5251         a function to get the current modifier style.
5252
5253         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
5254         of the passed in GtkRcStyle instead of ref'ing it.
5255
5256         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
5257
5258 2000-08-20  Tor Lillqvist  <tml@iki.fi>
5259
5260         * gdk/gdkimage.h
5261         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
5262         shared memory image+pixmap GdkImage type, or
5263         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
5264         I am dropping that.
5265
5266         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
5267         actually call gtk_init_abi_check(), passing also
5268         sizeof(GtkWindow). Ditto for gtk_init_check(). 
5269
5270         * gtk/gtk.def
5271         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
5272         New functions, used to check that the GTK+-using code has been
5273         compiled using the correct compiler and switches. In particular,
5274         with gcc one has to use the -fnative-struct switch as GTK+ is
5275         compiled with that.
5276
5277 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
5280         ->prev fields when merging lists. (Found simultaneously
5281         by Pawel Salek and Jakub Jelinek)
5282
5283 2000-08-12  Tor Lillqvist  <tml@iki.fi>
5284
5285         * gdk/gdk.def
5286         * gtk/gtk.def: Add missing entries.
5287
5288         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
5289         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
5290
5291         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
5292         function. Dummy implementation at this point.
5293
5294         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
5295         rules. Undefine GTK_COMPILATION when compiling the test programs.
5296         
5297         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
5298
5299 2000-08-11  Tor Lillqvist  <tml@iki.fi>
5300
5301         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
5302         to convert back and forth from UTF-8 and the "system" (or "current
5303         locale") charset when necessary. Indentation/spacing cleanup.
5304
5305 2000-08-10  Havoc Pennington  <hp@redhat.com>
5306
5307         * Makefile.am (snapshot): Change the format of the snapshot
5308         version to match glib
5309
5310         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
5311         from EXTRA_DIST since it doesn't seem to exist
5312
5313 2000-08-10  Tor Lillqvist  <tml@iki.fi>
5314
5315         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
5316         version of the directory name (not the UTF-8 one) when building
5317         the path name to stat().
5318
5319 2000-08-03  Elliot Lee  <sopwith@redhat.com>
5320
5321         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
5322         PANGO_ATTR_SHAPE set.
5323
5324 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
5325
5326         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
5327         Peter Osterlund to simplify the code while keeping the
5328         functionality the same.
5329
5330 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
5331
5332         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
5333         is_viewable() test further inside the function, since removing the 
5334         window from the redraw list without clearing ->update_area
5335         was also very broken.
5336
5337 2000-08-02  Tor Lillqvist  <tml@iki.fi>
5338
5339         * configure.in: Check for <unistd.h>.
5340
5341 2000-08-01  Martin Baulig  <baulig@suse.de>
5342
5343         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
5344         to display the message that this is a development version of GTK+.
5345
5346 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
5347
5348         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
5349         was depending on widget->allocation instead of the width of text_area,
5350         which was incorrect for subclasses like GtkSpinButton.
5351
5352         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
5353         with width == 1 tests that should be width == -1.
5354
5355 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
5356
5357         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
5358         (broken, Elliot, every single window blank on X) custom code with call
5359         to gdk_window_is_viewable() which a) prevents code duplicate and
5360         b) works. 
5361
5362 2000-07-31  Elliot Lee  <sopwith@redhat.com>
5363
5364         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
5365         to get the GDK_PARENT_ROOT() macro to work.
5366         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
5367         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
5368         of, windows that aren't shown.
5369         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
5370         pointer grab stuff.
5371
5372 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
5373
5374         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
5375           s/gtk_main_iteration/g_main_iteration/
5376
5377           Did this already in change:
5378                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
5379           don't know how it got reverted.
5380
5381 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
5382
5383         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
5384         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
5385
5386         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
5387         not gdk_pixbuf.
5388
5389 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
5390
5391         * configure.in,po/{sp,sr}.po: Added Serbian files
5392
5393 2000-07-30  Tor Lillqvist  <tml@iki.fi>
5394
5395         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
5396
5397         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
5398         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
5399         GIOChannel implementation.
5400
5401         * gdk/win32/gdkinput.c
5402         * gdk/win32/gdkpango-win32.c: Update license name here, too.
5403
5404         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
5405         definition to match prototype.
5406
5407         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
5408
5409 2000-07-27  Elliot Lee  <sopwith@redhat.com>
5410
5411         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
5412         function, to allow handling image formats that cannot be detected
5413         by looking at content alone.
5414
5415 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
5416
5417         * docs/tutorial/*.gif *.jpg *.eps
5418           Update these to the same look-n-feel.
5419           Why does including images in DocBook suck so badly?
5420
5421 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
5422
5423         * gtk/gtktable.c: applied patch from Phil Thompson
5424         <phil@river-bank.demon.co.uk> that enables space settings for
5425         the last row/columns as well.
5426
5427 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
5428
5429         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
5430         updates the license headers to the GNU Lesser General Public License,
5431         as well as updating the copyright year to 2000.
5432
5433 2000-07-26  Robert Brady  <rwb197@zepler.org>
5434
5435         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
5436           and po/Makefile, was installing and looking for them under gtk20
5437           and gtk2 respectively.
5438
5439 2000-07-25  Havoc Pennington  <hp@redhat.com>
5440
5441         * gtk/testtext.c: Comment out some stuff that depends on the rest
5442         of my patches.
5443
5444 2000-07-25  Havoc Pennington  <hp@redhat.com>
5445
5446         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
5447         buffer
5448
5449 2000-07-25  Havoc Pennington  <hp@redhat.com>
5450
5451         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
5452         widget changes.
5453
5454         * gtk/gtktextview.h: To be consistent with usage of "line"
5455         throughout the API to mean "newline-terminated thingy", change
5456         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
5457         to MOVEMENT_LINE.
5458
5459         (GtkTextView): Add flags for default editability, and whether to
5460         show the cursor. Add functions to get/set that. Add 
5461
5462         (gtk_text_view_get_iter_location): new function
5463
5464         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
5465         gtktextlayout.h
5466         (g_convert): Add g_convert temporarily, will go in glib in a bit
5467         
5468         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
5469         GtkTextTagTableForeach instead of brokenly using GHFunc.
5470         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
5471
5472         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
5473         moved to public header.
5474
5475         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
5476         "invisible", since "elide" was a bad name.
5477         (gtk_text_tag_get_priority): Added
5478
5479         (GtkTextStyleValues): put this in public header, along with
5480         functions to use it.
5481
5482         * gtk/gtktextmarkprivate.h: Include more headers, since we no
5483         longer include gtktextbtree.h.
5484
5485         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
5486         gtk_text_mark_deleted
5487
5488         * gtk/gtktextlayout.h: Don't include the "really private" headers,
5489         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
5490         to make this possible. Now we only need to install
5491         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
5492         (However the Makefile.am isn't changed yet because of the
5493         logistics of merging gtk-hp-patches piecemeal)
5494
5495         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
5496         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
5497         gtk_text_iter_get_line is now used in the public API for a
5498         different purpose.
5499
5500         * gtk/gtktextiter.h: Clean up function names to be more
5501         consistent. Always call char offset "offset" and byte index
5502         "index". A "line" is always a line number. 
5503
5504         (gtk_text_iter_is_last): new function, more efficient than 
5505         the existing way to check
5506         (gtk_text_iter_is_first): new function, also more efficient
5507
5508         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
5509
5510         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
5511         gtk_text_iter_forward_char, etc.
5512
5513         (gtk_text_iter_forward_to_tag_toggle): Renamed from
5514         forward_find_tag_toggle, since this isn't a linear search
5515
5516         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
5517
5518         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
5519         New functions, search for a buffer substring.
5520
5521         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
5522         interactive and default editable (since we need to store that info
5523         until we receive the selection data).
5524
5525         Remove all the _at_char and at_line etc. versions of functions;
5526         only have iterator versions.
5527
5528         Add _interactive() versions of functions, that consider the
5529         editability of text. (FIXME add interactive flag to the 
5530         insert/delete signals per Darin's suggestion)
5531
5532         (gtk_text_buffer_get_tag_table): new function, demand-creates the
5533         tag table if necessary
5534
5535         Remove declaration of gtk_text_buffer_get_iter_from_string
5536
5537         (_gtk_text_buffer_get_btree): private/internal function, added.
5538         
5539
5540         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
5541         (gtk_text_line_is_last): new function
5542
5543 2000-07-25  Havoc Pennington  <hp@redhat.com>
5544
5545         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
5546         using GtkProgressBar. See Changes-2.0.txt for details.
5547
5548         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
5549         "pulse_step" which are the equivalent of
5550         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
5551         Implement new API.
5552         
5553         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
5554         (use_text_format) to mark whether text set on the progress bar is
5555         a format string. Deprecate entire GtkProgress interface.
5556
5557         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
5558         (gtk_progress_build_string): make this a no-op if use_text_format
5559         is FALSE
5560
5561         * docs/Changes-2.0.txt: Describe progress bar changes.
5562
5563 2000-07-25  Tor Lillqvist  <tml@iki.fi>
5564
5565         * Makefile.am: Include the build directory.
5566
5567         * configure.in: Generate build/Makefile, build/win32/Makefile,
5568         gdk/, gdk/win32/, and gtk/makefile.mingw.
5569
5570         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
5571         Add GETTEXT_PACKAGE.
5572         
5573         * gdk/gdk.def
5574         * gtk/gtk.def: Updates.
5575
5576         * gdk/gdkfont.h
5577         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
5578         need them any longer.
5579
5580         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
5581
5582         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
5583         PANGOWIN32_LIBS and gdk_pixbuf.
5584
5585         * gdk/win32: Compiles, but no doubt doesn't work at all.
5586
5587         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
5588
5589         * gdk/win32/gdkinput.c: New file, temporarily.
5590         
5591         * gdk/win32/gdkinput-win32.h: New file
5592
5593         * gdk/win32/gdkinputprivate.h: Remove.
5594
5595         * gdk/win32/gdkpango-win32.c: New file.
5596
5597         * gtk/makefile.mingw.in: New file
5598
5599         * gtk/makefile.cygwin: Removed
5600         
5601         * gtk/Makefile.am: Update accordingly.
5602
5603         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
5604         made externally visible.
5605
5606         * gtk/gtkmain.c: Use it.
5607         
5608         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
5609         is enough.
5610
5611         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
5612
5613 2000-07-24 Elliot Lee <sopwith@redhat.com>
5614         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
5615         individual backends already.
5616         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
5617         again. Yes, there really is a good reason for this, if you are using the gdkregion
5618         internals, and if you're not, why do you care?
5619         * gdk/gdkwindow.c: Fix inverted condition
5620         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
5621         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
5622         * gtk/gtkrange.c: Redraw trough when moving.
5623         * gtk/gtktypeutils.c: Fix warning by adding const cast.
5624         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
5625
5626 2000-07-23  Tor Lillqvist  <tml@iki.fi>
5627
5628         * configure.in: Check for mkstemp and sigsetjmp. Output
5629         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
5630
5631         More work on GDK for Win32. Still in an intermediate state.
5632
5633         * gdk/makefile.cygwin
5634         * gdk/win32/makefile.cygwin: Removed.
5635         
5636         * gdk/makefile.mingw.in
5637         * gdk/win32/makefile.mingw.in: New files.
5638
5639         * gdk/Makefile.am
5640         * gdk/win32/Makefile.am: Generate and distribute them.
5641
5642         * gdk/win32/gdkwindow-win32.h
5643         * gdk/win32/gdkdrawable-win32.h
5644         * gdk/win32/gdkpixmap-win32.h: New files.
5645
5646         * gdk/win32/gdkcolor-win32.c
5647         * gdk/win32/gdkcursor-win32.c
5648         * gdk/win32/gdkdrawable-win32.c
5649         * gdk/win32/gdkgc-win32.c
5650         * gdk/win32/gdkimage-win32.c
5651         * gdk/win32/gdkprivate-win32.h
5652         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
5653         Rename fields and variables called xcursor, xid, etc (these names
5654         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
5655
5656 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
5657
5658         * gtk/gtkentry.[ch]: Fix some problems with vertical
5659         alignment.
5660
5661         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
5662         char/byte confusion.
5663
5664 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
5665
5666         * gtk/gtktextview.c (changed_handler): Fix bug where
5667         redraw wasn't being done properly when height of
5668         dirty region changed.
5669
5670         * demos/Makefile.am: Remove various references to
5671         -lgmodule
5672
5673 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
5674
5675         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
5676         PangoAttrShape to reserve space for pixmaps, add 
5677         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
5678         in the display functions.
5679         
5680         * gtk/testgtk.c (create_layout): Set some more exotic
5681         scrolled window options
5682
5683         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
5684         Add function to set the shadow type of a window, to allow
5685         putting a shadow around widgets such as GtkLayout or GnomeCanvas
5686         which don't draw their own frame.
5687
5688 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
5689
5690         * docs/tutorial/package-db-tutorial.sh: New file for
5691           packaging DocBook format tutorial
5692
5693 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
5694
5695         * docs/tutorial/gtk-tut.sgml: Minor updates
5696
5697         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
5698
5699 2000-07-19  Tor Lillqvist  <tml@iki.fi>
5700
5701         * gtk/gtksignal.c: Fix C++ comment.
5702
5703         * gtk/gtkimmulticontext.c
5704         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
5705         don't return value from void functions.
5706
5707         * gtk/gtk.def: Add gtk_rc_style_unref.
5708
5709 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5710
5711         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
5712         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
5713         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
5714         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
5715         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
5716         gtk/gtktypeutils.h: Include files outside of the extern "C"
5717         block. Makes some C++ compiler happy. Reported by Denis Vakatov
5718         <vakatov@peony.nlm.nih.gov>.
5719
5720 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
5721
5722         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
5723           Completes first pass. Hurrah!
5724
5725 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
5726
5727         * docs/tutorial/gtk-tut.sgml: More clean ups.
5728
5729 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
5730
5731         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
5732         paint the background of the text area which was accidentally
5733         removed at some point.
5734
5735         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
5736           
5737          - Move most of the functionality from the theme vtable
5738            into GtkRcStyleClass and GtkStyleClass. The moved
5739            vtable functions were changed a bit in the move to
5740            work better in their new home.
5741
5742          - Get rid of the engine and engine_data fields from
5743            GtkRcStyle and GtkStyle; instead the theme
5744            engine derives theme-specific subclasses of GtkRcStyle
5745            and GtkStyle
5746
5747          - Add extra dlsym() found entry point to themes,
5748            theme_create_rc_style().
5749
5750         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
5751         in gtk_style_real_copy.
5752
5753         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
5754         to register a type associated with an engine. (The engine
5755         won't be unloaded as there is an instance of the type.)
5756
5757
5758 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
5759
5760         * docs/tutorial/gtk-tut.sgml: Clean ups.
5761
5762 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
5763
5764         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
5765           of cleaning up to do.
5766
5767 2000-07-15  Tor Lillqvist  <tml@iki.fi>
5768
5769         * gdk/testgdk.c: New file, quick hack to test backends for
5770         pixel-by-pixel correctness of the most simple graphic operations.
5771
5772 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
5773
5774         * Really release 1.3.1
5775         
5776         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
5777         include structure.
5778
5779 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
5780
5781         * Released 1.3.1
5782
5783 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
5784
5785         * gtk/gtktextlayout.c: use FALSE for size_only most
5786         of the time when calling gtk_text_layout_get_line_display()
5787         to avoid causing double reshapes when a redraw follows
5788         immediately after.
5789
5790 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
5791
5792         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
5793         appropriate region and gdk_window_process_updates() so trough
5794         updating doesn't lag behind the window being scrolled.
5795
5796         * gdk/gdkgc.c: Make parent_class pointer static.
5797          
5798 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
5799
5800         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
5801         include <string.h>.
5802          
5803         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
5804         cut-and-paste error in computing memory offset for 4 channels.
5805
5806 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
5807
5808         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
5809         gtk_rc_append_default_pixmap_path(), since it wasn't
5810         adding an interesting path and we don't have a meaningful
5811         default for this value.
5812
5813 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
5814
5815         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
5816         gtk-config to gtk-config-2.0 move gtk_.m4 to
5817         gtk-2.0.m4
5818
5819         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5820         gdk/Makefile.am demos/Makefile.am: Change 
5821         library names to libgtk-1.3.la, etc, so that we
5822         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
5823
5824         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
5825         gdk/Makefile.am gdk/x11/Makfile.am
5826         Move include files into /usr/include/gtk-2.0, 
5827         /usr/lib/gtk-2.0/include/
5828          
5829         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
5830         gtk/gtkintl.h: Change package for gettext from 
5831         gtk+ to gtk20. Put hack in autogen.sh to modify
5832         po/Makefile.in.in after gettextize to make this
5833         possible.
5834
5835         * gtk+.spec: Some updates, not tested.
5836
5837         * gdk-pixbuf/Makefile.am: Move loaders into
5838         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
5839
5840         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
5841         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
5842         to THEMENAME/gtk-2.0/. Move engine directory  to
5843         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
5844         
5845 2000-07-12  Tor Lillqvist  <tml@iki.fi>
5846
5847         Win32 changes, still doesn't build though.
5848
5849         * gdk/makefile.cygwin
5850         * gdk/win32/makefile.cygwin
5851         * gtk/makefile.cygwin: Updates.
5852
5853         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
5854         default values for fg and bg pixel as X11 does (0 and 1), not
5855         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
5856         Use 0 for pen width by default (treated as 1 anyway later, but for
5857         apps that might check the value in the GdkGC).
5858         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
5859         interface to gdk_gc_predraw and _postdraw.
5860
5861         * gdk/win32/gdkwin32.h
5862         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
5863
5864         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
5865         extraneous semicolon.
5866
5867         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
5868
5869         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
5870         not the Win32 bitspixel value.
5871
5872         * gdk/win32/gdkcc-win32.c:
5873         * gdk/win32/gdkcolor-win32.c 
5874         * gdk/win32/gdkprivate-win32.h
5875         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
5876         GDK object structure.
5877
5878 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
5879
5880         * docs/tutorial/gtk_tut_12.es.sgml (name): 
5881         * docs/tutorial/gtk_tut_it.sgml (name): 
5882         * docs/tutorial/gtk_tut_fr.sgml (name): 
5883         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
5884         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
5885
5886 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
5887
5888         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
5889           small changes.
5890
5891 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
5892
5893         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
5894         a bug here, never been here and never fixed anything ;(
5895         (don't segfault if tree->root_tree is NULL, which happens prior
5896         to widget realization, but puke instead).
5897
5898 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
5899
5900         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
5901         add the necessary tokens.
5902
5903         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
5904         (gtk_rc_style_to_style): copy thicknesses.
5905         (gtk_rc_init_style): apply thicknesses.
5906         (gtk_rc_parse_style): parse xthickness and ythickness.
5907
5908         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
5909
5910         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
5911         (gdk_window_new): 
5912         (_gdk_windowing_window_init): 
5913         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
5914         (gdk_pixmap_create_from_data): 
5915         (gdk_bitmap_create_from_data): 
5916         (gdk_pixmap_new): 
5917         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
5918         (gdk_image_new): 
5919         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
5920         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
5921         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
5922         (gdk_colormap_get_system): 
5923         (gdk_colormap_new): 
5924         * gdk/gdkwindow.c (gdk_window_init): 
5925         * gtk/gtkstyle.c (gtk_style_new):
5926         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
5927         * gdk/gdkpixmap.c (gdk_pixmap_init): 
5928         * gtk/gtkrc.c (gtk_rc_style_new):
5929         use g_object_new() instead of g_type_create_instance() which
5930         is a private function for fundamental type implementations.
5931
5932 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
5933
5934         * configure.in: Add check for db2html
5935
5936 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
5937
5938         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
5939         hack to set glib_debug_objects based on gtk_debug_flags.
5940
5941 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
5942
5943         * INSTALL.in: Update the Prerequisites section.
5944
5945         * Makefile.am demos/Makefile.am docs/Makefile.am
5946         docs/tutorial/Makefile.am gdk/x11/Makefile.am
5947         gdk/linux-fb/Makefile.am: Dist fixes
5948
5949 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
5950
5951         * NEWS: 10,000 foot view of 1.3.1 changes.
5952
5953 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
5954
5955         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
5956         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
5957         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
5958         gdk/x11/gdkmain-x11.c: 
5959
5960         Patch from George Lebl to add a GdkGrabStatus enumeration to use
5961         as a return value of gdk_*_grab(). Previously, we just
5962         returned the X11 values directly.
5963
5964 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
5965
5966         * gdk/x11/Makefile.am: Patch from George Lebl to 
5967         install all the headers in the right place.
5968
5969 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
5970
5971         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
5972           initial conversion to DocBook.
5973
5974 2000-07-04  Tor Lillqvist  <tml@iki.fi>
5975
5976         * README.win32: Improve a bit.
5977
5978         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
5979         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
5980         Alt+0nnn on the numpad (used to enter characters by numeric code
5981         from current DOS or ANSI codepage) working correctly, as in other
5982         Windows apps.
5983
5984         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
5985         same argument validity tests as in X11 version.
5986         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
5987
5988         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
5989         definitions in case missing from headers.
5990
5991         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
5992         destroy the window-specific cursor.
5993         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
5994         calling GetModuleHandle(NULL).
5995         (gdk_window_set_cursor): Reworked to always copy the passed cursor
5996         with CopyCursor before setting it as the window-specific
5997         cursor. It is OK for the caller to destroy the GdkCursor (and thus
5998         also its Windows cursor) after calling this function. Destroy any
5999         previous window-specific cursor.
6000
6001 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
6002
6003         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
6004         font charset is iso8859-1, not iso-8859-1.
6005
6006 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
6007
6008         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6009         Use g_get_charset() instead of g_get_codeset().
6010
6011         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
6012         Comment out some strdup'ing functions to keep timj
6013         happy until we finish fighting this out.
6014
6015 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
6016
6017         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
6018         <= width or height.
6019
6020         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
6021         from 1.2 for parent/child states.
6022
6023         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
6024         of typos.
6025
6026         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
6027         event structures, replace with a generic axes field. Replace 
6028         deviceid/sourec with GdkDevice *device.
6029
6030         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
6031         to extract particular axis use value from event. (Also
6032         can be used for normal X/Y.)
6033
6034         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
6035         allow for arbitrary number of axes, namespace everything
6036         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
6037         everywhere.
6038
6039         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
6040         Get rid of the gdk_input_vtable setup if favor of simply
6041         defining the functions in gdkinput-none/gxi/xfree.c in
6042         a similar fashion to the way that the port structure is 
6043         done.
6044
6045         * gtk/gtkdnd.c: Fix fields of synthesized button press event
6046         for new event structures. 
6047
6048         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
6049         new device interfaces.
6050
6051 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
6052
6053         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
6054         set the initial text.
6055
6056         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
6057         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
6058         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
6059         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
6060
6061         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6062         pango_layout_set_font_description to simplify.
6063
6064 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
6065
6066         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6067         pango_layout_set_font_description to simplify.
6068
6069 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
6070
6071         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
6072         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
6073         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
6074
6075         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
6076         PANGO_PIXELS() macro.
6077
6078 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
6079
6080         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
6081         that returns a PangoContext owned by the widget and updated to
6082         match future changes in the widget. Also, make 
6083         gtk_widget_create_pango_layout() use this context. If we ever
6084         add a ::changed signal to PangoContext, this will make things
6085         much more convenient. 
6086
6087         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
6088         in the appropriate places instead of destroying the layouts and
6089         creating new ones.
6090
6091         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
6092         in a few strategic places.
6093
6094 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
6095
6096         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
6097         gtk_widget_size_request() on reparented child, if one. Otherwise,
6098         queue_resize() on the child never results in it getting size-requested
6099         at all.
6100
6101         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
6102         in option menus, so that (with luck) people won't copy it into
6103         their apps in the future.
6104
6105         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
6106         to gtk_option_menu_calc_size. This isn't perfect, but should fix
6107         a lot of problems with changing the size of the menu's menu
6108         items after adding it to the option menu.
6109
6110         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
6111
6112         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
6113         the text direction for a widget changes.
6114
6115         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
6116         ::direction_changed to get rid of various hacks.
6117
6118 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
6119
6120         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
6121         name.
6122
6123 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
6124
6125         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
6126         flag to the structure. Do not call XFreePixmap on pixmaps created
6127         by gdk_pixmap_foreign_new().
6128
6129 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
6130
6131         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
6132         value using GdkRGB functionality given GdkColormap and GdkColor.
6133         (name not final, waiting for inspiration.)
6134         
6135         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
6136         set the foreground/background of a GC using the GC's colormap
6137         and GdkRGB. (name not final, waiting for inspiration.)
6138
6139         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
6140         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
6141
6142         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
6143         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
6144         purely a function of the corresponding colormap. Make
6145         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
6146
6147         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
6148         gdk_pixbuf_*create_from_xpm_* in terms of
6149         gdk_pixbuf_new_from_xpm_data(), move into platform independent
6150         code.
6151
6152         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
6153         advantage of the new draw_rgb_32_image_dithalign.
6154
6155         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
6156
6157         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
6158         on each created GC.
6159
6160         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
6161
6162         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
6163         which we initialize from the drawable when the GC is created,
6164         if the drawable has a colormap.
6165
6166         * gdk/x11/gdkgc-x11.c: include string.h for memset.
6167
6168         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
6169
6170         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
6171
6172 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
6173
6174         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
6175         actually returning expose events, make sure to set
6176         the count field properly.
6177
6178         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
6179         accidentally reintroced bug which always cleared
6180         the graphics_exposures value. 
6181
6182 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
6183
6184         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
6185
6186 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
6187
6188         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
6189
6190 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
6191
6192         * docs/faq/gtk-faq.sgml: Start of Section 6.
6193
6194 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
6195
6196         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
6197         
6198         (Fixes problem with drawing childless frames. Pointed out
6199         by and a first patch from Anders)
6200         
6201         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
6202         compute a child_allocation, even if we don't have a child.
6203
6204         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
6205         Always chain to the parent's impl, even if we don't have a child.
6206
6207 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6208
6209         * gdk/gdkrgb.c: If possible, create only a single shm segment and
6210         use multiple parts of it instead of creating a bunch of separate
6211         segments, since the maximum number of segments per system is not
6212         large. (This might be worth backporting to GTK+-1.2.x if we make a
6213         new release )
6214
6215         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
6216         structure in preparation for per-colormap GdkRGB.
6217
6218         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
6219         to False when we get EINVAL from shmget so that the caller of
6220         gdk_image_new can retry with a smaller segment size.
6221
6222 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
6223
6224         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
6225
6226 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
6227
6228         * configure.in: make the current version number 1.3.1 (binary age 0,
6229         interface age 0).
6230         
6231         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
6232         gtkcompat.h is all we want.
6233
6234         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
6235         GLib primitive types. fixed g_type_register_fundamental() argument
6236         ordering.
6237
6238         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
6239         compiles.
6240
6241         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
6242         object code cleanup, comment trigraph fixes, etc...
6243
6244 2000-06-23  Havoc Pennington  <hp@redhat.com>
6245
6246         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
6247         instead of making up a bogus name for first_para_mark
6248
6249         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
6250         0 as a context ID
6251
6252 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
6253
6254         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
6255
6256 2000-06-21  Havoc Pennington  <hp@pobox.com>
6257
6258         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
6259         we didn't check window->bg_pixmap != GDK_NO_BG.
6260
6261         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
6262         gdk-pixbuf
6263
6264 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
6265
6266         * docs/faq/gtk-faq.sgm: Move file to here.
6267           TODO: Update Makfile.am 
6268
6269 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
6270
6271         * docs/gtk-faq.sgm: Add Section 2
6272
6273 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
6274
6275         * docs/gtk-faq.sgm: New file. Start of DocBook
6276           version of the FAQ.
6277
6278 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
6279
6280         * configure.in (GDK_PIXBUF_MAJOR): Define version
6281         numbers for GDK_PIXBUF_*, as they get substituted
6282         into a header file. Need to consider versioning
6283         for gdk-pixbuf more carefully later.
6284
6285 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
6286
6287         Work with srcdir != builddir.   
6288         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
6289         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
6290         * demos/testpixbuf.c: Likewise.
6291         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
6292         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
6293         <gdk/x11/gdkx.h>.
6294         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
6295         "gdk-pixbuf.h".
6296         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
6297
6298 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
6299
6300         * TODO.xml: Change 1.4 version numbers to 2.0.
6301
6302 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
6303
6304         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
6305         fixups to GTK+ standard.
6306
6307 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
6308
6309         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
6310         gdk-pixbuf.
6311
6312         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
6313         fixups for GObject.
6314
6315         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
6316         gdk-pixbuf with GDK dependencies moved into GDK.
6317         
6318         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
6319         move gdk-pixbuf-loader here until GObject has signals.
6320
6321         * demos/: New directory of demos. Move demos from
6322         gdk-pixbuf here.
6323
6324         * demos/pixbuf-init.c: Small bit of code to check for
6325         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
6326         set GDK_PIXBUF_MODULEDIR appropriately.
6327
6328         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
6329         define which no longer makes sense.
6330
6331 2000-06-21  Havoc Pennington  <hp@redhat.com>
6332
6333         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
6334         gtk_get_default_language
6335
6336         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
6337         new function to get the default language
6338
6339         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
6340         s/gtk_text_view_style_values/gtk_text_style_values/
6341
6342         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
6343         Add a "language" field to tags.
6344
6345         (gtk_text_tag_set_arg): Fix bug in setting
6346         "bg_full_height_set" tag.
6347
6348 2000-06-21  Havoc Pennington  <hp@redhat.com>
6349
6350         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
6351         in the interfaces
6352
6353         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
6354         stuff instead when possible.
6355
6356         * gtk/gtktexttypes.h: Delete some unused constants
6357
6358         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
6359         testtextbuffer.c: use glib instead of custom unicode routines
6360
6361 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
6362
6363         * docs/es/: Removed mistakenly added generated sgml
6364
6365         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
6366         Remove outdated info files.
6367
6368         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
6369         Moved tutorial files into subdir
6370
6371         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
6372         subdir.
6373
6374         * docs/man/gtk_button.pod: Remove. (contents will be
6375         integrated into gtk-reference button page.)
6376
6377         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
6378         docs/faq/Makefile.am: Adjust for new organization
6379
6380 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
6381
6382         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
6383         not $(MKINSTALLDIRS)
6384
6385 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
6386
6387         * gtk/testgtk.c (create_text): Finish the job Elliot started
6388         of removing font setting test for text widget. (Since text widget
6389         and GdkFont are not deprecated, and cause portability problems.)
6390
6391 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
6392
6393         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
6394         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
6395         Remove use of libunicode in favor of new GLib functions.
6396
6397         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
6398         nano-x, framebuffer. The X11 include is just a hack until we get
6399         the necessary functions in gdkcolor.h, so there is no reason to
6400         add other includes of platforms.
6401
6402         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
6403         window bigger than the screen change.
6404
6405         * gtk/testgtk.c: Revert some random changes from Elliot
6406         that had no particular point and were causing testgtkrc
6407         not to function correctly.
6408         
6409         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
6410         because GdkSegment and GdkRegionBox have the same fields,
6411         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
6412         results in clearer code.
6413
6414         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
6415         gdk_input_translate_coordinates): Fix missed GdkObjectification
6416
6417 2000-06-18  Elliot Lee  <sopwith@redhat.com>
6418
6419         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
6420         * gtk/gtk{plug,socket}.h: Missed commits from previous.
6421
6422 2000-06-20  Havoc Pennington  <hp@redhat.com>
6423
6424         * modules/linux-fb/Makefile.am: Make this compile
6425         without framebuffer enabled
6426
6427         * gdk/linux-fb/Makefile.am: Add conditional to not build
6428         framebuffer unless specified in configure
6429
6430         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
6431         the size of the target instead of source if -1 was passed for
6432         width/height
6433
6434         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
6435         width/height confusion.
6436
6437 2000-06-19  Havoc Pennington  <hp@redhat.com>
6438
6439         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
6440         GDK_DRAWABLE_XID. In the future, we probably want to make it
6441         faster with G_DISABLE_CHECKS turned on.
6442
6443 2000-06-14  Havoc Pennington  <hp@redhat.com>
6444
6445         * gdk/Makefile.am: add gdkpixmap.c
6446
6447         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
6448         s/gdk_image_init/_gdk_windowing_image_init
6449
6450         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
6451         ref/unref
6452
6453         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
6454
6455         * gdk/gdkcompat.h: remove GdkWindowType compat, since
6456         GdkWindowType is now non-deprecated; 
6457         change gdk_window_get_type() compat to be
6458         gdk_window_get_window_type().
6459
6460         * gdk/gdkdnd.h: make GdkDragContext a GObject.
6461
6462         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
6463         virtual GObject. Make all functions call into the vtable.
6464         Move gdk_image_put() guts in here. Remove GdkDrawableType
6465         and gdk_drawable_get_type(), these are now GdkWindow-specific.
6466         draw_image, get_depth, get_size, set_colormap, get_colormap,
6467         get_visual added to the vtable.
6468         
6469         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
6470         GObject. Virtualize everything. 
6471         (gdk_gc_new_with_values): remove check for destroyed window,
6472         because now GdkWindow::create_gc will check this.
6473         (gdk_gc_set_values): New function to set GC values, this 
6474         was already implemented but wasn't in the header
6475
6476         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
6477
6478         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
6479         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
6480         remove _gdk_window_class; add _gdk_window_impl_get_type() and
6481         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
6482         _gdk_windowing_window_init, rename gdk_image_init to
6483         _gdk_windowing_image_init.
6484         
6485         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
6486         (gdk_draw_layout): Remove check for destroyed window, 
6487         because all the drawable methods already check it.
6488         
6489         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
6490         Add gdkpixmap.c which contains implementation of GdkDrawable
6491         virtual table (by chaining to a platform-specific implementation
6492         object).
6493         
6494         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
6495         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
6496         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
6497         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
6498         GdkColormapPrivate. 
6499
6500         * gdk/gdktypes.h: #include <glib-object.h>
6501
6502         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
6503         Move most functionality to platform-specific implementation
6504         object. GdkWindow itself now handles the backing store, then
6505         chains to the platform-specific implementation.
6506         (gdk_window_get_window_type): return GdkWindowType of the window.
6507         (gdk_window_peek_children): New routine, returns the children of 
6508         a GdkWindow
6509         (gdk_window_get_children): Was in X11-specific code and did 
6510         XQueryTree. Changed to simply return a copy of window->children; 
6511         so it can go in cross-platform code.
6512         
6513         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
6514
6515         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
6516         GdkColormap; just changed to use the new private data instead
6517         of casting to GdkColormapPrivate.
6518
6519         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
6520         gdk_cursor_new().
6521
6522         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
6523         (private data member in the GObject). 
6524         (xdnd_manager_source_filter): Function had broken 
6525         error handling, fix it (use gdk_error_trap_push).
6526
6527         * gdk/x11/gdkdrawable-x11.c: This file now implements
6528         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
6529         base class is purely for the convenience of the X port,
6530         and not part of the interface to cross-platform GDK.
6531
6532         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
6533         
6534         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
6535         specific to X, and returned by the create_gc virtual method
6536         of GdkDrawableImplX11. 
6537         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
6538         rather than gchar, this was also changed in the GdkGC vtable.
6539         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
6540         mask is 0, return immediately, instead of checking every flag.
6541         This is faster, and keeps us from segfaulting if values is NULL
6542         and the mask contains some nonzero flags.
6543
6544         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
6545         GdkWindow.
6546
6547         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
6548         GdkWindowPrivate is gone.
6549
6550         * gdk/x11/gdkim-x11.c: rename things that got renamed.
6551
6552         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
6553         remove the image_put stuff that got transferred to GdkDrawable.
6554         
6555         * gdk/x11/gdkinput.c: renamings
6556
6557         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
6558
6559         * gdk/x11/gdkpixmap-x11.c: GObject conversion
6560
6561         * gdk/x11/gdkprivate-x11.h: indentation fixes
6562
6563         * gdk/x11/gdkproperty-x11.c: renamings
6564
6565         * gdk/x11/gdkselection-x11.c: renamings
6566
6567         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
6568         implements the platform-specific "impl" object.
6569         Moved gdk_window_get_children to gdk/gdkwindow.c
6570
6571         * gdk/x11/gdkx.h: Remove all the private structs and private datas
6572         that no longer exist. Add declaration of GdkGCX11 object here.
6573         Fix all the macros to still work. 
6574
6575         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
6576         GdkDragContext from the boxed types since they are now GObjects.
6577
6578         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
6579         moved xthickness/ythickness into the instance. GtkStyleClass
6580         functions are now in the standard vtable for GtkStyle, so you have
6581         to create a GObject subclass to write a theme engine.
6582         (gtk_style_copy): fixed a leaked PangoFontDescription
6583         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
6584         can be the standard GObject function.
6585         
6586         * Throughout GTK:
6587         s/style->klass->[xy]thickness/style->[xy]thickness
6588         s/pango_layout_unref/g_object_unref/
6589
6590         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
6591         
6592         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
6593         accessing GDK internals.
6594
6595         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
6596         accessing GDK internals.
6597
6598 2000-06-18  Elliot Lee  <sopwith@redhat.com>
6599
6600         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
6601
6602         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
6603         problem by calculating event position relative to the trough
6604         rather than the slider.
6605         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
6606
6607         * gdk/gdkgc.h: Add GDK_NOR.
6608
6609         * configure.in, Makefile.am: Add modules top level dir
6610         * configure.in: Only use pangox library if building x11 target.
6611         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
6612
6613 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
6614
6615         * gtk/gtkcolorsel.c: Change private class member to be named
6616         private_data throughout the file.
6617
6618         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
6619         private_data to avoid clashing with keyword.
6620
6621 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
6622
6623         * gdk/gdkdnd.h: Add comment to remove warning.
6624
6625 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
6626
6627         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
6628         Byelorussian language; changed the Makefile and file names 
6629         to reflect that.
6630
6631 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
6632
6633         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
6634         rather than gdk_window_hide; this makes things work
6635         correctly if the window is programmatically hidden while
6636         iconified.
6637
6638 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
6639
6640         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
6641         cut and paste typo where wrong pixmap was being
6642         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
6643
6644 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
6645
6646         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
6647         Add helper function to compute format / bytes 
6648         relationship. Use in a couple places to fix up
6649         errors which assume 8 * format.
6650
6651         * gtk/gtkselection.c (gtk_selection_request): Use 32
6652         rather than 8 * sizeof (GdkAtom), to work correctly
6653         on Alpha.
6654
6655 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
6656
6657         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
6658         libgtk.la
6659         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
6660         versions
6661
6662         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
6663         checking macros return NULL since the function has a return value.
6664
6665 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
6666
6667         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
6668         GTK+ from building at all.
6669
6670         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
6671
6672 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
6673
6674         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
6675         gtk/Makefile.am: make it possible to configure gtk for different
6676         targets on the same platform. The library name is now 
6677         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
6678         flag. Only the x11 target compiles right now.
6679         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
6680         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
6681         * gdk/nanox/gdk*generic*: delete generic region code.
6682         * gdk/linux-fb/gdk*generic*: delete generic region code.
6683         * README.nanox: update information.
6684         
6685 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
6686
6687         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
6688         prepend not append. (Pointed out by Brett Hall.)
6689
6690 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
6691
6692         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
6693
6694 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
6695
6696         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
6697         need this later, and this makes sure that the atexit for
6698         glib gets called after that for GDK, so atexits are
6699         properly ordered for object leak checking.
6700
6701         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
6702
6703         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
6704         pango_x_shutdown_display()
6705
6706         * gtk/simple.c (main): Close window on destroy.
6707
6708 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
6709
6710         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
6711         to treat initial creation different from setting with 
6712         regards to the graphics-exposures parameter, so add a parameter
6713         indicating whether this is initial or not.
6714
6715 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
6716
6717         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
6718         to sort of work by adding an extra return_exposes arg
6719         to gdk_event_translate() - it might be better to simply
6720         deprecate the function altogether and force people to rewrite
6721         without it. gdk_window_scroll() handles most of it, and where
6722         gdk_window_scroll() doesn't work, simply redrawing more does.
6723
6724         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
6725         assertion.
6726
6727         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
6728
6729         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
6730         bunch of pretty much useless /* Print debugging info */ comments 
6731         which had drifted away from the code they were commenting.
6732
6733 2000-06-02  Havoc Pennington  <hp@pobox.com>
6734
6735         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
6736         is in working order.
6737         
6738         * gtk/testtext.c: Change to reflect anonymous mark API
6739
6740         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
6741
6742         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
6743         field, which was unused.
6744
6745         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
6746         saves some typing.
6747
6748         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
6749
6750         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
6751         flag on the insertion point and selection bound
6752
6753         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
6754         make mark-manipulation functions take a GtkTextMark* instead of a
6755         mark name.
6756         
6757         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
6758         GtkTextMarkBody; will be used to detect attempts to delete
6759         the permanent marks (insert and selection bound)
6760
6761         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
6762
6763 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
6764
6765         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
6766         flag to on.
6767
6768         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
6769         Honor DOUBLE_BUFFRED_FLAG
6770
6771         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
6772         function to set the DOUBLE_BUFFERED flag.
6773
6774         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
6775         or not exposes done on the widget should be double-buffered.
6776
6777         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
6778         to be what would be expected. (Fixes problem with a
6779         g_return_if_fail() validating a TextDirection enumeration)
6780
6781 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
6782
6783         * gtk/gtkwidget.c: Remove all references to 
6784         offscreen flag which was no longer used.
6785
6786         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
6787
6788         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
6789         for non-null label_widget->parent.
6790
6791         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
6792         which no longer was used.
6793
6794         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
6795
6796         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
6797         for null arguments.
6798
6799         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
6800         check for destroyed windows.
6801
6802 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
6803
6804         * gtk/gtkimmulticontext.c: Add a finalize method and unref
6805         the slave context there.
6806
6807         * gtk/gtkinvisible.[ch]: Make reference counting behavior
6808         identical to GtkWindow.
6809
6810 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
6811
6812         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
6813         pangox to here, so we can write them independent of rendering
6814         system, using GDK primitives.
6815
6816         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
6817         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
6818         since we have a rendering-system independent implementation in
6819         terms of draw_glyphs().
6820         
6821         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
6822         function to render a single line.
6823
6824         * gdk/x11/gdkpango.c: Move the guts of this file mostly
6825         into ../gdkpango.c, which simplifies things, since we
6826         don't have to deal with raw X gc's.
6827
6828 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
6829
6830         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
6831         get the logical attributes for a given GtkTextLine.
6832
6833 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
6834
6835         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
6836         g_locale_get_codeset() to g_get_codeset() change.
6837
6838 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
6839
6840         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
6841         descriptions.
6842
6843         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
6844         the entry.
6845
6846         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
6847         redoing (vastly simplifying) for Pango. Still needs quite
6848         a bit of work. (Size selection is currently poor. List of 
6849         predefined sizes is not a good idea, since all of these
6850         sizes won't necessarily be distinct.)
6851
6852 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
6853
6854         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
6855         CODESET results for LANG=C.
6856
6857 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
6858
6859         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
6860         which takes a stringized pango font description;
6861         ignore the older 'font' and 'fontset' declarations.
6862
6863         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
6864         field with a GdkFont derived via gdk_font_from_description(),
6865         for compatibility. (Should we just remove it entirely?
6866         Probably too much compatibility breakage, but people
6867         should be migrating to the new Pango stuff as quickly
6868         as possible.)
6869
6870 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
6871
6872         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
6873
6874 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
6875
6876         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
6877         redoing; there are some bugs in size allocation right
6878         now, the semi-existant distinction between header / day
6879         fonts was removed, but, with Pango, could actually
6880         be made functional in a nice way.
6881         
6882         * gtk/testcalender: Move calender from examples into this
6883         directory as a test program. (We really need to restrcture
6884         testgtk into a whole directory full of tests for every
6885         widget or functionality group, separated into multiple .c
6886         files.)
6887
6888 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
6889
6890         * gtk/testgtk.c (file_exists): Fix stupid typo that
6891         was keeping RC file from being loaded.
6892
6893         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
6894         RC file font code.
6895
6896 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
6897
6898         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
6899         Add function to load a GdkFont from a PangoFontDescription.
6900
6901 2000-05-29  Tor Lillqvist  <tml@iki.fi>
6902
6903         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
6904         variable should be of type GdkEventPrivate.
6905
6906 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
6907
6908         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
6909         to have any widget for the label, use a GtkLabel widget
6910         to display the text. (Based partially on a patch from
6911         Anders Carlson.)
6912
6913         (Quite a bit of code reorganization - strip 90% of the
6914         guts out of gtkaspectframe and add a single virtual
6915         func to GtkFrameClass - compute_child_allocation.)
6916
6917 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
6918
6919         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
6920         (Removed clist->row_center_offset field because caching
6921         it wasn't saving time or code, added private function
6922         _gtk_clist_create_cell_layout()).
6923
6924 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
6925
6926         * gtk/gtkaccellabel.c: Pangoized.
6927
6928         * gtk/[hv]ruler.c: Pangoized
6929
6930 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
6931
6932         * gtk/gtkfilesel.c (gtk_file_selection_init):
6933         Use gtk_clist_set_column_auto_resize() to remove need
6934         need for manual column width computations.
6935
6936 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
6937
6938         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
6939         ensuring Pango correctness, and considerably simplifying the
6940         code.
6941         
6942         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
6943
6944         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
6945         getting of numbers of lines.
6946
6947         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
6948         to the actual requested width of the lable, not to the wrap
6949         width we set.
6950
6951         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
6952
6953         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
6954           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
6955
6956         * gtk/gtktextview.c: Fix structure inheritance.
6957
6958         * gtk/gtkprogressbar.c: Pangoize.
6959
6960 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
6961
6962         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
6963         in a function.
6964
6965         * gtk/gtktextlayout.c (find_display_line_above): Fixed
6966         bug with computing line tops.
6967
6968         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
6969
6970 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6971
6972         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
6973         and y_offset coordinates to do what we need now. (The offset between
6974         buffer and layout coordinates has been reintroduced, but is a 
6975         bit different than before.)
6976
6977         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
6978         handle the adjustments ourselves, and scroll as necessary using
6979         the new gdk_window_scroll().
6980         
6981         The advantage of this is that when we are incrementally revalidating,
6982         we are essentially rearranging things around the visible portion
6983         of the screen. With the old setup, the visible portion of the
6984         screen was moved around in the layout, so scrolling and redrawing
6985         to track that caused jumping of the display. Since we now
6986         control the scrolling ourselves, we can suppress this and
6987         only redraw when things actually change.
6988
6989 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
6990
6991         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
6992         the region not just redisplay it after-all, since we store the
6993         cursors in the LineDisplay. (Ugly interactions here between
6994         GtkLayout and GtkTextBTree here.)
6995         
6996         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
6997
6998 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
6999
7000         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
7001         Added function to scroll contents of a window while keeping the
7002         window constant. Works by XCopyArea or guffaw-scrolling depending
7003         on the details of how the window is set up. (guffaw-scrolling
7004         still needs to be filled in.)
7005
7006 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
7007
7008         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
7009         move the debugging that was tied to a global variable
7010         to that.
7011
7012         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
7013
7014         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
7015         validated flag, in line data instead of setting height/width to
7016         -1. This allows us to perform operations with partially invalid
7017         buffer (using the old size for invalid lines) and thus to do
7018         incremental vaidation. Keep height/width aggregates up to date
7019         when deleting text and rebalancing the tree.
7020
7021         * gtk/gtktextbtree.[ch]: Add functions validate a line
7022         (gtk_text_btree_validate_line), and to validate up
7023         to a number of pixels (gtk_text_btree_validate).
7024
7025         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
7026         that indicates that something is changed and a revalidation
7027         pass is needed. Change ::need_repaint to ::changed, and
7028         make it take old and new yranges instead of a rectangle.
7029
7030         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
7031         the line_data_destroy() function from 
7032         gtk_text_btree_add_view() to a virtual function in 
7033         GtkTextLayout
7034
7035         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
7036         since we are handling partial repaints in a different fashion
7037         now.
7038
7039         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
7040         of the selection instead of queueing a repaint on the
7041         entire widget.
7042
7043         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
7044         get_selection_bounds() down to btree, make the function
7045         in buffer a wrapper around the btree function.
7046
7047         * gtk/gtktextlayout.[ch]: Add functions to check if the
7048         layout is valid and to recompute either a range of pixels
7049         aroudn a line or a certain total number of pixels.
7050
7051         * gtk/gtktextlayout.[ch]: Cache a single line display;
7052         now that we only redraw the needed portions, the hit rate
7053         for this cache is quite high.
7054         
7055         * gtk/gtktextview.[ch]: Keep track of the first paragraph
7056         on the screen so that when re-laying-out the buffer, we can
7057         keep the same place. This requires connecting to ::value_changed
7058         on the adjustments
7059
7060         * gtk/gtktextview.[ch]: Add idle functions to revalidate
7061         the buffer after we receive an ::invalidated signal.
7062         
7063 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
7064
7065         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
7066         to max of allocation and layout size, not just to the
7067         layout size.
7068
7069         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
7070         Invalidate window so it gets redrawn properly.
7071
7072         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
7073         to mean the entire window.
7074
7075         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
7076         into public header.
7077
7078 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7079
7080         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
7081         to get the name of a mark.
7082
7083         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
7084         to find the paragraph from a y position.
7085
7086 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
7087
7088         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
7089         nodes have width/height >= 0, not > 0.
7090
7091 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
7092
7093         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
7094         Add a size_only flag, so when we only need the size, we don't create
7095         useless appearance attributes.
7096
7097         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
7098         duplicate setting of font description.
7099
7100         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
7101
7102 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7103
7104         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7105         EXTRA_DIST. It does not work well when the file that
7106         everything depends on is not in the tarball.
7107
7108 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
7109
7110         * gtk/testgtk.c: Some hacks and fixes so that it basically
7111         works when not sitting in the GTK+ build tree.
7112
7113 2000-05-03  Havoc Pennington  <hp@redhat.com>
7114
7115         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7116         Properly determine the ordering of the tag root and the current
7117         line within the tree. Previous algorithm only worked if the tag
7118         root's immediate parent was the common root of both the current
7119         line and the tag root.
7120
7121 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
7122
7123         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
7124         alignment.
7125
7126         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
7127         the widget text directional dynamically.
7128
7129         * gtk/gtktextview.[ch]: Added functions to get and set default
7130         wrap mode.
7131
7132 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
7133
7134         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
7135         in cursor location computation.
7136
7137 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
7138
7139         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
7140         vadjusment values properly when layout gets smaller.
7141
7142         * gtk/gtktextview.c (need_repaint_handler): Areas being
7143         passed in are far completely inaccurate, and sometimes
7144         too small, so, for now, just queue a redraw on the
7145         whole visible region.
7146
7147 2000-04-25  Havoc Pennington  <hp@redhat.com>
7148
7149         * gtk/gtktextbtree.c (summary_destroy): new function to 
7150         destroy tag summary nodes
7151         (gtk_text_line_next_could_contain_tag): this function was 
7152         totally broken if the line passed in wasn't below the tag
7153         root. Fix it.
7154         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
7155         "wildcard" case, we have to do a linear scan. Blah.
7156         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
7157         we have to do the linear scan
7158         (tag_removed_cb): When a tag is removed from the tag table, 
7159         remove the GtkTextTagInfo node from the btree.
7160         (gtk_text_btree_spew): Implement the spew function, for 
7161         our debugging pleasure.
7162
7163 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
7164
7165         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
7166         a problem with referring to the wrong buffer.
7167
7168         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
7169
7170         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
7171         font description to gtk_style_new() - otherwise things
7172         don't work without a .gtkrc file.
7173
7174         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
7175         tags table if we create it ourself, too.
7176
7177         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
7178         it was conflicting with XKB modifiers.
7179
7180         * gtk/gtktextview.[ch]: Add simple support for 
7181         GtkIMContext.
7182
7183 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
7184
7185         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
7186         with deletion from last commit.
7187
7188 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
7189
7190         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
7191         in the context from the current locale.
7192         
7193         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
7194         context, not hardcoded value.
7195
7196         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
7197         not logical.
7198
7199 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
7202         attributes - that doesn't handle partial-glyph selection
7203         properly. Instead use new pango_layout_line_get_x_ranges()
7204         functionality to draw the selection.
7205
7206         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
7207         now properly handles out-of-range coordinates.
7208
7209         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
7210
7211         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
7212         public.
7213
7214         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
7215         for paragraphs opposite to the base direction of the widget.
7216
7217         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
7218
7219         * gtk/gtktextlayout.c: Don't split segments on marks, since that
7220         causes Arabic words to reshape as you cursor through.
7221
7222         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
7223         cursor position when moving vertically with the arrow keys and
7224         scrolling with page-up/page-down. (Arrow keys save only the X,
7225         scrolling saves both X and Y.)
7226
7227         This means you can line-up / line-down or page-up / page-down
7228         without losing your place, and also that moving vertically
7229         with the cursor keys keeps the same X position, not the same
7230         character count:
7231
7232         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
7233         arrow keys move by display lines, not paragraphs.
7234
7235 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
7236
7237         * gtk/gtklayout.c: Make sure that the bin window is at least
7238         as big as the allocation. (Should we also make sure that the
7239         bin window is big enough to completely cover widget->window?)
7240
7241         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
7242         function to get the onscreen rectangle.
7243
7244         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
7245         for offsets in window coordinates.
7246
7247 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
7248
7249         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
7250         confusion.
7251
7252         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
7253         from the widget direction.
7254
7255         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
7256         Add a "direction" attribute.
7257
7258         * gtk/gtktextview.c: global s/tkxt/text_view/.
7259
7260         * gtk/testtext.c: Added long block of text in Arabic, to test out
7261         the direction attributes. (Some problems with the shaping system
7262         for arabic become obvious - like the fact the cursor splits words
7263         into unjoined pieces.)
7264
7265 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
7266
7267         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
7268
7269         * gtk/gtktextlayout.c: Fix up alignment.
7270
7271         * gtk/testtext.c: Add some tests for centering, wrapping.
7272
7273 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
7274
7275         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7276         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
7277         If we wrote GTK+-specific layout-render function this could just replace
7278         the draw_layout() operation in the vtable.
7279
7280         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
7281         pango_layout_get_cursor_pos() and use that function.
7282
7283         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
7284         is a non-static symbol.
7285
7286         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
7287         with gtk_text_btree_find_line_by_y()
7288
7289         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
7290         renderer that handles GtkTextAppearance attributes.
7291
7292         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
7293
7294           - Move the values in the style that don't affect geometry into a
7295             GtkTextAppearance structure.
7296           - Change underline to take a PangoUnderline and "font" a string
7297             representation of a font description
7298           - Add a "font_desc" attribute which takes a FontDescription structure.
7299
7300         * gtk/gtktextlayout.[ch]:
7301
7302           - Get rid of the display-line list per each line. Instead, we
7303             generate, on demand, a GtkTextLineDisplay structure which]
7304             contains a PangoLayout * and other necesary information
7305             (offsets, cursor locations) for displaying a paragraph.
7306           - Get rid of the code to wrap lines, create display chunks,
7307             etc. Instead, we just go through a paragraph and convert
7308             it into the necessary inputs to a PangoLayout.
7309           - Implement a new attribute type, GtkTextAttrAppearance. This
7310             holds a GtkTextAppearance, and is used to pass colors, 
7311             stipple, etc, through from the layout to the display without
7312             having to use lots and lots of individual attributes.
7313           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
7314             in terms of PangoLayout functions.
7315         
7316         * gtk/gtktextview.c: 
7317          
7318           - Handle passing the necessary PangoContext to the layout
7319           - Some fixups in painting to deal with the automatic backing store
7320             and offsetting of GTK+-1.4
7321           - Add a style_set handler so that the default style reacts
7322             properly to theme changes.
7323         
7324         * gtk/gtktext?*.[ch]: Random code-style fixes.
7325
7326         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
7327
7328 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
7329
7330         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
7331         in original form preparatory to Pango-ization and gdkimcontext-ization.
7332
7333 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
7334
7335         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
7336         so that we can derive from gtkimcontext in language bindings properly.
7337
7338 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
7339
7340         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
7341         Add a compose table including (almost) all the compose combinations
7342         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
7343         data in the XIM implementation.
7344
7345         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
7346         Moved functions to convert keyvalues from and to unicode here from
7347         the win32 port and made them public.
7348
7349 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
7350
7351         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
7352
7353 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
7354
7355         * gtk/gtkimcontext.[ch]: Base class for new input context system
7356
7357         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
7358         the real input context implementation to be loaded from modules
7359         and switched on the fly.
7360
7361         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
7362         context that just does direct keysymbol => unicode translation.
7363
7364         * gtk/gtkentry.[ch]: Start switching editing over to using
7365         GtkInputContext. (No handling of preedit yet.)
7366
7367 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
7368
7369         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
7370         many substitutions. (klass should not be subsituted.)
7371
7372 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
7373
7374         * configure.in: Add checks for Pango
7375
7376         * configure.in docs/Makefile.am: Add test for sgml2html
7377         and allow 'make dist' without building html, but print out
7378         warnings in that case. (For making snapshots)
7379
7380         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
7381         Add Pango libraries and C flags
7382
7383         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7384         Add function (gdk_draw_layout) to draw a pango layout.
7385
7386         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
7387         for getting Pango contexts for GDK.
7388
7389         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
7390
7391         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
7392         editing.
7393
7394         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
7395         keysym => unicode translations. More languages can be added
7396         here, but real input-method support is needed.
7397
7398         * docs/Changes-1.4.txt: Added note about entry behavior.
7399         
7400         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
7401         to set the reading direction for a widget and the global direction.
7402         Add test which allows toggling the global direction. Two private
7403         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
7404
7405         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
7406           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
7407
7408         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
7409
7410         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
7411         underlining now handled by Pango.
7412
7413         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
7414         to RCStyle and Style. (Having both this and the old font name and GdkFont 
7415         is temporary.)
7416
7417         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
7418         convenience functions for creating contexts and layouts for widgets.
7419
7420         * gtk/testgtk.c: Enhance label tests with multilingual labels.
7421
7422 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
7423
7424         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
7425         titles to be active, even if they aren't visible.
7426         (gtk_clist_column_titles_passive):  Ditto.
7427
7428 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
7429
7430         * gtkmenu.c:
7431         * gtkmenu.h:
7432         * gtktypeutils.h: Spelling/grammar fixes in comments.
7433
7434 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
7435
7436         * gdk/nanox/*.h: add missing header files.
7437
7438 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
7439
7440         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
7441         send_event to TRUE.
7442         (gtk_drawing_area_size): queue a resize.
7443
7444 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
7445
7446         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
7447         the handlers, also invalidate them. bug nailed down by Karl Nelson
7448         <kenelson@ece.ucdavis.edu>.
7449
7450 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
7451
7452         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
7453         "(nil)" foundries, patch from Grigorios Magklis.
7454
7455         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
7456         on non-available fonts, based on a patch by Grigorios Magklis
7457         <maglis@cs.rochester.edu>.
7458
7459 2000-05-18  Elliot Lee  <sopwith@redhat.com>
7460
7461         * gdk/x11/gdkregion-generic.c: If a region does not have any
7462         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
7463         instead of GDK_OVERLAP_RECTANGLE_IN.
7464
7465 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
7466
7467         * gtk/gtklayout.c (gtk_layout_map): Remove references to
7468         OFFSCREEN, as it is no longer necessary.
7469
7470 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
7471
7472         * gtk/gtkcolorsel.c: Patch from David Santiago
7473         <mrcooger@cyberverse.com> to change things so that the 
7474         indicator of the active palette entry is done independently,
7475         not via the focus, since it should always be visible.
7476
7477 2000-05-17  Tor Lillqvist  <tml@iki.fi>
7478
7479         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
7480         refcount leaks as in the X11 backend.
7481
7482         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
7483         cosmetics.
7484
7485         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
7486         backend. Add _gdk_windowing_window_destroy().
7487
7488         * gtk/gtkcolorsel.c: Include correct backend-specific header.
7489         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
7490         either, but these probably do exist on nanox?)
7491         
7492         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
7493         which isn't necessarily defined by <math.h>.
7494
7495         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
7496         ancestry past GtkObject.
7497
7498         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
7499         from DLL on Win32.
7500
7501         * gtk/gtk.def: Update corresponding to recent changes.
7502
7503         * gtk/makefile.{cygwin,msc}: Updates.
7504
7505 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
7506
7507         * docs/Changes-1.4.txt: A bit of editing.
7508
7509         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
7510         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
7511         to clear the update area for the window, and clear it
7512         when hiding a window.
7513
7514         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
7515         if window destroyed.
7516
7517         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
7518
7519         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
7520         gdk_window_destroy() to the generic code, since there was a lot of 
7521         window-system-independent logic it in. Add a function:
7522         
7523          _gdk_window_destroy() 
7524
7525         to the internal API to destroy a window without unreferencing it.
7526         Add a function:
7527
7528          _gdk_windowing_window_destroy()
7529
7530         That does the windowing-system-dependent part of destroying 
7531         the window.
7532
7533 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
7534
7535         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
7536
7537 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
7538
7539         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
7540         Make gtk_widget_shape_combine_mask() keep a reference count on
7541         the pixmap since it keeps it around.
7542
7543 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
7544
7545         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
7546         leak.
7547
7548         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
7549         leak with event filters.
7550
7551 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
7552
7553         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
7554         signal handlers with the right data arguments. (Fixes
7555         some warnings when a widget was repeatedly set as a drag
7556         destination.)
7557
7558         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
7559         window so we can avoid avoid setting the DND properties on the
7560         toplevel window repeatedly.
7561
7562 2000-05-13  Tor Lillqvist  <tml@iki.fi>
7563
7564         * gdk/win32/gdkwin32.h: Define more message types missing from
7565         mingw headers.
7566
7567         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
7568         call gdk_window_destroy_notify(). It was never called. This
7569         probably meant that the GdkWindow was never freed. Thanks Owen for
7570         noticing (!).
7571
7572         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
7573         window as destroyed before calling DestroyWindow(). DestroyWindow()
7574         causes a call to the window procedure (gdk_WindowProc), which
7575         calls gdk_event_translate(), which calls
7576         gdk_window_destroy_notify(), which gets confused unless the window
7577         is set as destroyed.
7578
7579         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
7580         this function to indicate it's win32 only. Put inside #ifdef
7581         G_ENABLE_DEBUG.
7582
7583         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
7584         debugging function. (gdk_event_translate:) Add a default branch
7585         that uses the above function to print debug messages with all
7586         Windows messages symbolically.
7587
7588         * gdk/win32/gdkprivate-win32.h: Declare it, and
7589         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
7590
7591 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
7592
7593         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
7594         public header file.
7595
7596 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
7597
7598         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
7599
7600         * gtk/gtktext.c: made the adjustments no-construct args, simply
7601         provide default adjustments.
7602         (gtk_text_destroy): release adjustments.
7603
7604         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
7605         adjustment argument non-construct.
7606
7607         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
7608         instead of in finalize.
7609         (gtk_progress_get_text_from_value): 
7610         (gtk_progress_get_current_text): 
7611         (gtk_progress_set_value): 
7612         (gtk_progress_get_percentage_from_value): 
7613         (gtk_progress_get_current_percentage): 
7614         (gtk_progress_set_percentage): 
7615         (gtk_progress_configure): ensure an adjustment is present.
7616
7617 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
7618
7619         * gtk/gtkcolorsel.[hc]:
7620         * gtk/gtkcolorseldialog.[hc]:
7621         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
7622         their parent implementation, use bit fields for boolean values, don't
7623         create unused widgets, usage of glib types, braces go on their own
7624         lines, function argument alignment, #include directives etc. etc. etc..
7625
7626         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
7627
7628 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
7629
7630         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
7631
7632         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
7633         of NULL.
7634
7635         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
7636         to freed data.
7637         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
7638
7639         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
7640         to NULL when the toplevel is getting destroyed.
7641         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
7642         (gtk_menu_destroy): 
7643         (gtk_menu_init): store the information of whether we have to
7644         readd the initial child ref_count during destruction in a new
7645         GtkMenu field needs_destruction_ref_count.
7646
7647         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
7648         here, those reading: learn from my mistake! ;)
7649         in order for set_?adjustment to support a default adjustemnt if
7650         invoked with an adjustment pointer of NULL, the code read (pseudo):
7651         if (v->adjustment) unref (v->adjustment);
7652         if (!adjustment) adjustment = adjustment_new ();
7653         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
7654         now imagine the first unref to actually free the old adjustment and
7655         adjustment_new() creating a new adjustment from the very same memory
7656         portion. here, the latter comparision will unintendedly fail, and
7657         all hell breaks loose.
7658         (gtk_viewport_set_hadjustment):
7659         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
7660         after unreferencing it.
7661
7662         * gtk/gtkcontainer.[hc]: removed toplevel registration
7663         functions: gtk_container_register_toplevel(),
7664         gtk_container_unregister_toplevel() and
7665         gtk_container_get_toplevels() which had wrong semantics
7666         anyways: it didn't reference and copy the list.
7667
7668         * gtk/gtkwindow.c: we take over the container toplevel registration
7669         bussiness now. windows are registered across multiple destructions,
7670         untill they are finalized. the initial implicit reference count
7671         users are holding on windows is removed with the first destruction
7672         though.
7673         (gtk_window_init): ref & sink and set has_user_ref_count, got
7674         rid of gtk_container_register_toplevel() call. add window to
7675         toplevel_list.
7676         (gtk_window_destroy): unref the window if has_user_ref_count
7677         is still set, got rid of call to
7678         gtk_container_unregister_toplevel().
7679         (gtk_window_finalize): remove window from toplevel list.
7680         (gtk_window_list_toplevels): new function to return a newly
7681         created list with referenced toplevels.
7682         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
7683
7684         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
7685         adjustment a non-construct arg.
7686         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
7687         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
7688         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
7689
7690         * gtk/gtkrange.c: added some realized checks.
7691         (gtk_range_destroy): get rid of the h/v adjustments in the
7692         destroy handler instead of finalize. remove timer.
7693         (gtk_range_get_adjustment): demand create adjustment.
7694
7695         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
7696         we simply create them on demand now and get rid of them in
7697         the destroy handler.
7698         (gtk_viewport_destroy): get rid of the h/v adjustments in the
7699         destroy handler instead of finalize.
7700         (gtk_viewport_get_hadjustment): 
7701         (gtk_viewport_get_vadjustment): 
7702         (gtk_viewport_size_allocate): demand create h/v adjustment
7703         if required.
7704
7705         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
7706         gtk_widget_real_destroy () functionality.
7707         (gtk_widget_real_destroy): reinitialize with a new style, instead
7708         of setting widget->style to NULL.
7709
7710 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
7711
7712         * gtk/gtkcalendar.c:
7713         * gtk/gtkbutton.c: ported _get_type() implementation over to
7714         GType, either to preserve memchunks allocation facilities,
7715         or because Gtk+ 1.0 GtkTypeInfo was still being used.
7716
7717         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
7718         over. prepare for ::destroy to be emitted multiple times.
7719         removed reference tracer magic. chain into GObjectClass.shutdown()
7720         to emit ::destroy signal.
7721
7722         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
7723         fundamental.
7724
7725         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
7726         cludge.
7727
7728         * gtk/gtksocket.c:
7729         * gtk/gtkplug.c:
7730         * gtk/gtklayout.c:
7731         * gtk/gtklabel.c:
7732         * gtk/gtkargcollector.c:
7733         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
7734         not being a fundamental anymore, and to work with the new
7735         type system (nuked fundamental type varargs clutter).
7736
7737         * gtk/*.c: install finalize handlers in the GObjectClass
7738         part of the class structure.
7739         changed direct GTK_OBJECT()->klass accesses to
7740         GTK_*_GET_CLASS().
7741         changed direct object_class->type accesses to GTK_CLASS_TYPE().
7742
7743         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
7744         GType. made most of the GTK_*() type macros and Gtk* typedefs
7745         simple wrappers around macros and types provided by GType.
7746         most notably, a significant portion of the old API vanished:
7747         GTK_TYPE_MAKE(),
7748         GTK_TYPE_SEQNO(),
7749         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
7750         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
7751         GTK_TYPE_ARGS,
7752         GTK_TYPE_CALLBACK,
7753         GTK_TYPE_C_CALLBACK,
7754         GTK_TYPE_FOREIGN,
7755         GtkTypeQuery,
7756         gtk_type_query(),
7757         gtk_type_set_varargs_type(),
7758         gtk_type_get_varargs_type(),
7759         gtk_type_check_object_cast(),
7760         gtk_type_check_class_cast(),
7761         gtk_type_describe_tree(),
7762         gtk_type_describe_heritage(),
7763         gtk_type_free(),
7764         gtk_type_children_types(),
7765         gtk_type_set_chunk_alloc(),
7766         gtk_type_register_enum(),
7767         gtk_type_register_flags(),
7768         gtk_type_parent_class().
7769         replacements, where available are described in ../docs/Changes-1.4.txt.
7770         implemented compatibility functions for the remaining API.
7771
7772         * configure.in: depend on glib 1.3.1, use gobject module.
7773
7774 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
7775
7776         * TODO.xml: Various updates to current status.
7777
7778 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
7779
7780         * gtk.m4: Print out version when test succeeds.
7781
7782 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
7783
7784         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
7785         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
7786         
7787         (Original triangle color selector from Simon Budig
7788         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
7789         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
7790         Santiago <mrcooger@cyberverse.com>)
7791
7792         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
7793         out into a separate widget.
7794
7795         * gtk/testgtk.c: Add some checkbuttons for toggling palette
7796         and opacity controls.
7797
7798 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
7799
7800         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
7801         snuck in prematurely.
7802
7803 2000-05-07  Tor Lillqvist  <tml@iki.fi>
7804
7805         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
7806         had deleted a ! operator by mistake, which caused
7807         GDK_SELECTION_CLEAR events never to be generated, which caused
7808         only the first copy to the clipboard from an gtkeditable to
7809         actually cause a copy to the Windows clipboard.
7810
7811 2000-05-06  Tor Lillqvist  <tml@iki.fi>
7812
7813         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
7814         compilation, too. Current mingw gcc distributions include the
7815         necessary headers. Also the necessary IIDs are now in mingw
7816         headers/libraries, and own definitions unnecessary.
7817
7818         More hacking on OLE2 DND, still doesn't work though, and thus
7819         ifdeffed out.
7820
7821         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
7822         here, too.
7823
7824 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
7825
7826         * gdk/nanox/*: nano-X port work in progress.
7827         * gdk/simple.c: simple test for Gdk.
7828         * README.nanox: notes about the port: read this first!
7829         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
7830         with nano-X.
7831
7832 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
7833
7834         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
7835         gdk_window_clear() into common code, implement in terms of
7836         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
7837         not redirected to the backing rectangle.
7838
7839 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7840
7841         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7842         EXTRA_DIST. It does not work well when the file that
7843         everything depends on is not in the tarball.
7844
7845 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
7846
7847         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
7848         with recursion where process_updates() is called from
7849         an expose handler. (GtkTextView is highly broken in
7850         doing this, but it should work, so it is a nice test
7851         case.)
7852
7853 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7854
7855         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
7856         handle the case where updates are queued during processing of
7857         updates.
7858
7859 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
7860
7861         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
7862         window is on gdk_display - use that instead of segfaulting.
7863
7864 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
7865
7866         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
7867         broken and require an empty arg, give it to them.
7868
7869 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
7870
7871         * gtk/gtklabel.h: indentation fixes.
7872
7873 2000-05-02  Tor Lillqvist  <tml@iki.fi>
7874
7875         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
7876         draw too narrow or too low arcs, they seem to fail, at least with
7877         some display drivers.
7878
7879         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
7880
7881         Large changes to the Win32 backend, partially made necessary by
7882         the changes to the backend-independent internal
7883         structures. Attempts to implement similar backing store stuff as
7884         on X11. The current (CVS) version of the Win32 backend is *not* as
7885         stable as it was before the no-flicker branch was merged. A
7886         zipfile with that version is available from
7887         http://www.gimp.org/win32/. That should be use by "production"
7888         code until this CVS version is usable. (But note, the Win32
7889         backend has never been claimed to be "production quality".)
7890
7891         * README.win32: Add the above comment about versions.
7892
7893         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
7894
7895         * gdk/gdk.def: Update.
7896
7897         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
7898         presumably be replaced by some more better mechanism as 1.4 gets
7899         closer to release shape.
7900
7901         * gdk/makefile.{cygwin,msc}: Update.
7902
7903         * gdk/win32/*.c: Correct inclusions of the backend-specific and
7904         internal headers. Change code according to changes in these. Use
7905         gdk_drawable_*, not gdk_window_* where necessary.
7906
7907         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
7908         our old DND.
7909
7910         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
7911         to interpret single characters as UTF-8. Thanks to Hans Breuer.
7912         Use correct function name in warning messages.
7913
7914         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
7915         GSourceFuncs gdk_event_prepare and gdk_event_check.
7916         (gdk_event_get_graphics_expose): Do implement, use
7917         PeekMessage. Thanks to Hans Breuer.
7918         (event_mask_string): Debugging function to print an GdkEventMask.
7919         (gdk_pointer_grab): Use it.
7920
7921         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
7922         (old) book I used claimed was Hangul actually is CJK Unified
7923         Ideographs Extension A. Also, Hangul Syllables were missing.
7924         Improve logging.
7925
7926         * gdk/win32/gdkgc-win32.c: Largish changes.
7927
7928         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
7929         g_win32_getlocale() from GLib, and not setlocale() to get current
7930         locale name.
7931
7932         * gdk/win32/gdkprivate-win32.h
7933         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
7934         gdkwin32.h, similarily as in the X11 backend.
7935
7936         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
7937         assignment was used instead of equals in if test. Thanks to Hans
7938         Breuer.
7939
7940         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
7941         the X11 version.
7942
7943         * gdk/win32/makefile.{cygwin,msc}
7944         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
7945         path to the Win32 headers that works also with the mingw compiler.
7946
7947         * gtk/gtkstyle.c: Include <string.h>.
7948
7949 2000-04-26  Havoc Pennington  <hp@redhat.com>
7950
7951         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
7952         replacing the broken gtk_label_get ()
7953
7954 2000-04-15  Havoc Pennington  <hp@pobox.com>
7955
7956         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
7957         this keeps scanner scripts from getting confused.
7958
7959         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
7960         data, rather than void
7961
7962 2000-04-15  Tor Lillqvist  <tml@iki.fi>
7963
7964         * gtk/gtkclist.c (gtk_clist_motion)
7965         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
7966         with is_hint FALSE, get x and y from the event. They used to be
7967         used uninitialised. The Win32 backend never sends motion events
7968         marked as hints. This for instance fixes the annoying file and
7969         font selector behaviour in the Win32 version.
7970
7971 2000-04-14  Tor Lillqvist  <tml@iki.fi>
7972
7973         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
7974         gtk_private_n_signals variables, they are used by some software,
7975         sigh.
7976
7977         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
7978         installation directory from the Registry, where the installer
7979         should have put it.
7980
7981 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
7982
7983         * gdk/x11/Makefile.am: Fix problem with installation directory for
7984         gdkx.h
7985
7986         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
7987         <mrcooger@cyberverse.com> so that when selecting menus with the
7988         mouse, the first item will not be selected, but when selecting
7989         with an accelerator, or navigating left-right on a menubar with
7990         the menus popped up, the first item will be selected.
7991
7992 2000-04-05  Dan Damian  <dand@dnttm.ro>
7993
7994         * configure.in: Added "ro" to ALL_LINGUAS.
7995
7996 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
7997
7998         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
7999         indentation.
8000
8001         * Makefile.am (EXTRA_DIST): Fix typo.
8002
8003         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
8004         to catch gdkconfig.h
8005
8006         * gtk/gtkitemfactory.c: Added FIXME.
8007
8008 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
8009
8010         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
8011         s/return_if_fail/return_val_if_fail/g and add a return value.
8012
8013 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8014
8015         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
8016         merge slipup.
8017
8018         * gdk/gdkinput.h: Fix missing line from merge.
8019
8020 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
8021
8022         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
8023         instead of gdkprivate.h.
8024
8025 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
8026
8027         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
8028         parent class to correctly be GtkDialogClass.
8029
8030 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
8031
8032         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
8033         toplevel windows and their immediate children by their parents,
8034         since the size of toplevel windows is out of our immediate
8035         control and we don't get any real benefit from trying to track
8036         this size for clipping.
8037
8038         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
8039         for input_only windows.
8040
8041         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
8042         to fix some hacks and make sure that we don't try to set the
8043         background of input only windows.
8044
8045 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
8046
8047         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
8048         the _really_ internal stuff, and leave gdkprivate.h for the fake private
8049         stuff that we've traditionally exposed.
8050
8051         * gdk/**.c: Use gdkinternals.h where appropriate.
8052
8053         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
8054         not include gdkprivate-x11.h, move all stuff of conceivable public
8055         interest into gdkx.h; keep all really private stuff in
8056         uninstalled header gdkprivate-x11.h.
8057
8058         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
8059         image->image_put on windows through a new function _gdk_window_draw_image()
8060         to allow us to do backing store for images. (Sort of ugly)
8061
8062         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
8063         contexts locally so that we can offset them properly when drawing 
8064         onto backing pixmaps.
8065
8066         * gdk/gdkinput.h: Reindented
8067
8068         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
8069         pixmap or color for the window, so we can properly initialize
8070         our double-buffer pixmaps, and also so that we temporarily set
8071         a background of None while scrolling.
8072
8073         * gdk/gdkregion.h: Revise region boolean operators to have an
8074         interface that is actually convenient - switch from creating new
8075         regions on every op, to "methods" that modify existing regions
8076         (A = A OP B). 3 argument forms which allow dest == src, would also
8077         be possible, but the current interfaces seem to map nicely
8078         onto what needs to be done. (There is quite a lot of region
8079         code in GDK now.)
8080
8081         * gdk/gdkregion.h: Add constructor from rectangle and a copy
8082         operator.
8083
8084         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
8085         gdkpoly-generic.h: Copy region code from Xlib, switch it over
8086         to 32 bit coordinates, modify it to be mostly GTK+ style
8087         and to have interfaces that match gdkregion.h.
8088
8089         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
8090         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
8091         create a backing pixmap and redirect all drawing to
8092         that backing pixmap until a matching gdk_window_end_paint().
8093
8094         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
8095         Create a special drawable class for GtkWindow's that 
8096         redirects the drawing to the backing pixmap as necessary
8097         and then calls the real operations in _gdk_windowing_window_class.
8098
8099         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
8100         Store invalid region for each window. Generate expose events for invalid
8101         region in an idle. This replaces both the expose compression
8102         and the redrawing queuing in GTK+. It is both more efficient and
8103         simpler than either one individually and far more so then the
8104         combination.
8105
8106         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
8107         Emulate 32 bit coordinates for windows with 16 bit coordinates
8108         by offsetting drawing, guffaw scrolling techniques and
8109         mapping/unmapping child windows as necessary.
8110
8111         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
8112         where, when invalid regions are processed, the region is stored,
8113         and if expose events come in that are detectably duplicate
8114         the processed exposes (by comparison of event serial numbers),
8115         the stored region is subtracted out of those exposes.
8116
8117         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
8118         regions newly exposed when scrolling or resizing windows.
8119         This, combined with forcing processesing of queued invalidated
8120         regions, gives nice flicker-free scrolling.
8121
8122         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
8123         invalidated regions after every scroll.
8124
8125         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
8126         emulation in GDK. Its, for all practical purposes just a
8127         GtkViewport/GtkFixed hybrid now.
8128
8129         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
8130         (16-bit) structures as necessary instead of just casting.
8131
8132         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
8133         in terms of the structures from gdkregion-generic.c, using appropriate
8134         offsets from GDK to X11 coordinates. Cache clip mask and
8135         origin and ts origin locally and only flush to the server
8136         when drawing, to avoid constantly setting and resetting these
8137         values when offsetting GC's for scrolling and backing pixmaps.
8138
8139         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
8140
8141         * gtk/gtkcontainer.c: Call process_all_updates at end
8142         of resizing to reduce flicker. (Avoids having redraw
8143         lag arbitrarily behind resize under some circumstances)
8144
8145         * gtk/gtkentry.c: Remove old backing store code, and simply take
8146         advantage of the new backing store capabilities of GDK.
8147
8148         * gtk/gtkmain.c: Simple implementation of widget backing
8149         store - simply push a paint while handling each expose.
8150         (Should really be configurable widget for widget.)
8151         
8152         * gtk/gtkwidget.c: Remove all the old complicated redraw
8153         code, and simply invalidate the GDK windows from
8154         gdk_window_queue_clear(), etc. (Sigh, so much carefully
8155         debugged complexity ... gone to the winds.)
8156
8157         Remove all the code for suppressing expose events while
8158         resizes are pending; this isn't needed since the invalid
8159         areas won't be processed until after the resizes are
8160         processed, since they are in a lower priority idle.
8161
8162 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
8163
8164         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
8165         and height of dest rectangle for non-intersecting rectangles.
8166
8167 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
8168
8169         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
8170         for GdkRectangle.
8171
8172 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
8173
8174         * gdk/gdk{events,image,private,types,window}.h
8175          gdk/x11/gdkinputprivate.h: Change all coordinates
8176          from int16 to int. Also, Change width and height from
8177          unsigned to signed to avoid all the stupid C 
8178          signedness bugs.
8179
8180 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
8181
8182         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
8183         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
8184         Add some more detailed checking.
8185
8186         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
8187         New function to retrieve the depth of a drawable.
8188
8189         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
8190         field, reorder fields to save memory. 
8191
8192 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
8193
8194         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
8195         of the background image instead of scaling the background down to
8196         a line.
8197
8198         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
8199         which temporarily set slider to wrong size.
8200
8201         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
8202         queue_clear().
8203
8204 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
8205
8206 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
8207
8208         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
8209
8210 2000-03-17  Tor Lillqvist  <tml@iki.fi>
8211
8212         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
8213         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
8214
8215         * gdk/win32/gdkfont-win32.c
8216         * gdk/win32/gdkproperty-win32.c
8217         * gdk/win32/gdkselection-win32.c
8218         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
8219         now declared such.
8220
8221 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
8222
8223         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
8224
8225 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
8226
8227         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
8228         is called without trapping X errors.
8229
8230 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
8231
8232         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
8233         way into the fontset lists.
8234
8235 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
8236
8237         * gtk/gtkthemes.h: add extern "C" scope.
8238
8239 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
8240
8241         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
8242         to make appends to the list constant. (gtk-guy-990901-0.patch)
8243
8244 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
8245
8246         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
8247         for the typename hash table.
8248
8249 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
8250
8251         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
8252         to make sure we never divide by zero. 
8253         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
8254
8255 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
8256
8257         * gtk/gtkfontsel.c: Apply patch from
8258         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
8259         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
8260
8261         Also, some cleanups in atom handling.
8262
8263 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
8264
8265         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8266         not GtkWidget.
8267
8268 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
8269
8270         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
8271         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
8272         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
8273         more guint wrap-around bugs before going to bed.
8274
8275 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
8276
8277         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
8278         guint wrap arounds in allocation.width.
8279
8280         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
8281         process untill we fit the allocation given.
8282
8283 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
8284
8285         * gtk/gtkwidget.c:
8286         (gtk_widget_unrealize): guard widget access with ref/unref
8287         around signal emission.
8288         (gtk_widget_hide): same here, but also check its destroyed
8289         state before queueing a resize.
8290
8291 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
8292
8293         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
8294         of gtk_default_insensitive_bg as insensitive base color.
8295
8296         * gtk/gtktext.c (gtk_text_style_set): set the background color according
8297         to the widget's state.
8298         (gtk_text_realize): same here.
8299         (gtk_text_state_changed): same here.
8300         (draw_bg_rect): compare background color against base[] from
8301         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
8302
8303 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
8304
8305         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
8306         grabs are active, unless a delete event is send to the toplevel
8307         of the currently grab holding widget.
8308
8309 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
8310
8311         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
8312         debugging g_print's.
8313
8314 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
8315
8316         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
8317         ever make the scrolled-window requisition ever depend on the 
8318         visibility state of the scrollbars for the AUTOMATIC policy. 
8319         This breaks the GTK+ requisition model, and causes loops.
8320
8321 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
8322
8323         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
8324         the default font to avoid problems with XFree86-4.0 where the
8325         default charset is iso10646-1, not iso8859-1.
8326
8327 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
8328
8329         * acinclude.m4
8330         * config.guess
8331         * config.sub
8332         * ltconfig
8333         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
8334
8335         * gtk/Makefile.am: minor cosmetic consistency tweak
8336
8337 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
8338
8339         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
8340         the activate_time to 0, so that we handle a quick
8341         press/release press/release properly and don't suppress
8342         the second release. (Red Hat bug #7545)
8343
8344 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
8345
8346         * gtk/gtkctree.c (row_delete):
8347         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
8348         bugs with destruction notifier, *always* update internal
8349         structures *before* calling user code.
8350
8351 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
8352
8353         A few more fixes for bug #5487, #2051, #2677.
8354         * gtk/gtkclist.c : 
8355         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
8356         not GDK_BUTTON_PRESS.
8357         (resync_selection): resync only if selection_mode is
8358         GTK_SELECTION_EXTENDED
8359         * gtk/gtkctree.c (resync_selection): same here
8360
8361 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
8362
8363         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
8364         gdk_drag_get_selection() and gtk_menu_detach().
8365
8366         [ From Jeroen Ruigrok/Asmodai ]
8367
8368 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
8369
8370         * gtk/gtknotebook.c (gtk_notebook_size_request): 
8371         page->tab_label can be NULL.
8372
8373 2000-01-25  Havoc Pennington  <hp@pobox.com>
8374         
8375         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
8376         arg is boolean
8377
8378         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
8379
8380         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
8381
8382         * gdk/gdkproperty.c (gdk_property_get): return boolean
8383
8384         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
8385
8386         * gdk/gdkim.c (gdk_im_ready): return boolean
8387
8388         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
8389
8390         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
8391         glib clash, should fix glib)
8392
8393         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
8394         (gdk_get_show_events): return gboolean, and canonicalize 
8395         to TRUE/FALSE
8396
8397         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
8398         colormap is private
8399         (gdk_colors_alloc): gboolean whether to be contiguous
8400         (gdk_color_equal): return gboolean since we are a predicate
8401         and not a qsort() (this looks semi-wrong due to glib breakage,
8402         IMO glib should be fixed)
8403         
8404         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
8405         (gdk_get_use_xshm): return gboolean
8406         (gdk_pointer_is_grabbed): return gboolean
8407
8408         * gdk/gdk.h: Change prototypes to match all the above changes,
8409         and re-run egtk-format-protos as required.
8410
8411 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
8412
8413         * gtk/gtkctree.c (resync_selection): 
8414         * gtk/gtkclist.c (resync_selection):
8415
8416         Return immediately if clist->drag_pos < 0. This is a workaround
8417         for the corrupt state that the clist gets into when a
8418         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
8419
8420         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
8421         
8422         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
8423         variable from recent commit.
8424
8425 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
8426
8427         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
8428
8429 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
8430
8431         * gtk/Makefile.am: prefix all autogenerated source that get build in
8432         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
8433         in builddir. since we subsequently cd into srcdir for autogeneration,
8434         the paths have to be stripped from the target file names, thusly we
8435         use $(@F) as target names now.
8436         put a comment about configure.in's --disable-rebuilds option,
8437         which can be used for non-writable source directories, for development
8438         setups though, srcdir has to be *writable*.
8439
8440 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
8441
8442         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
8443           Finish the job of allowing event to be NULL.
8444           (Fixes bug #4283, reported by Chris Blizzard)
8445
8446         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
8447           things so that the cursor appears on screen, properly
8448           take into account INNER_BORDER.
8449           (Fixes bug #4754, reported by Antonio Campos)
8450
8451 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
8452
8453         * gtk/gtknotebook.c (gtk_notebook_map): Don't
8454           show the tab_label unless it itself is visible.
8455
8456           gtk/gtknotebook.c (gtk_notebook_size_request):
8457           Do a better job of making sure that the visibility
8458           of the tab label corresponds to whether it should
8459           be mapped or not.
8460
8461 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
8462
8463         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
8464           Use the requisition, not the allocation, since the
8465           allocation has not necessarily been computed yet.
8466           (Pointed out by Eugene Osintsev)
8467
8468 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
8469
8470         * gtk/gtkstyle.c (gtk_style_new): Dont' set
8471           style/base[GTK_STATE_INSENSITIVE] both to
8472           gtk_default_insensitive_bg!
8473           (Bug #2187, reported by Jonathan Blandford)
8474
8475         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
8476           Add Alt_L, Alt_R to list of invalid accelerators.
8477           (Bug #3736, reported by Vlad Harchev)
8478
8479 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
8480
8481         * gtk/gtkfilesel.c (open_ref_dir): Fix several
8482         bugs which occured after an attempt to open 
8483         invalid home directory left cmpl_state->reference_dir == NULL.
8484
8485          - completion on files in home directory didn't work
8486          - completion on an empty string caused  segfault
8487
8488          (Bug #3678, reported by Steve Ratcliffe)
8489
8490         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
8491         cut and paste error that was causing scales to
8492         be incorrectly positioned.
8493         (Bug #2956,
8494          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
8495
8496 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
8497
8498         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
8499         when checking for dcgettext, if we've found we needed
8500         it for dgettext.
8501 +
8502 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
8503
8504         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
8505         queue_clear on NO_WINDOW widgets during a reparent,
8506         since at that point the window and widget heirarchies
8507         are out of sync. This stops crashing in some cases
8508         (the scrolled window reparent test, for instance), and
8509         _probably_ won't cause drawing errors.
8510
8511         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
8512         test do what it was supposed to do and be robust against
8513         window closings, etc. (Bug #2443)
8514
8515 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
8516
8517         * gtk/gtkentry.c: Fix return values on mouse events.
8518         (Bug #2686, Sky <seb_sky@yahoo.com>)
8519
8520         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
8521         (pointed out by George Lebl)
8522
8523         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
8524         (From Ettore Perazzoli  <ettore@helixcode.com>)
8525  
8526 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
8527
8528         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
8529         clicks between rows or outside calender area correctly.
8530         (Patch from Damon Chaplin)
8531
8532         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
8533         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
8534           Call destroy function when overwriting existing data. 
8535           (Pointed out by Damon Chaplin)
8536
8537 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
8538
8539         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
8540           which was causing problems on various systems with Xmu.
8541           This hasn't been needed for a very long time.
8542           (Fixes #1185 3167)
8543
8544 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
8545
8546         * gdk/gdki18n.h: Include <ctype.h> when defining
8547           gdk_isw* in terms of is* as a fallback.
8548           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
8549
8550 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
8551
8552         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
8553           realize the widget when it is size allocated!
8554           (old, old bug)
8555
8556         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
8557           Removed unused call to gdk_window_get_size() that
8558           showed up when the above was fixed.
8559
8560 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
8561
8562         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
8563           fix up widget->window when the widget is a
8564           NO_WINDOW container widget.
8565
8566 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
8567
8568         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
8569           to account for the fact that feof() does _not_ 
8570           return TRUE on errors, and thus avoid infinite loops
8571           when trying to use gdk_pixmap_create_from_xpm()
8572           on unreadable values.
8573
8574 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
8575
8576         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
8577
8578 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
8579
8580         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
8581           gdk_gc_set_dashes to take gint8 instead of gchar to
8582           make it clearer that it is _not_ a NULL terminated string.
8583
8584         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
8585           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
8586           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
8587           arguments.
8588
8589 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
8590
8591         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
8592         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
8593         background size relative to our allocation, guard against small
8594         allocations, we may have not yet been size allocated.
8595
8596 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
8597
8598         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
8599         not just version == 3. We implement all 3 + most of 4 - 
8600         (we don't support matching text/plain;charset=iso-8859-1
8601         to a dest that expects text/plain). We'll still advertise
8602         3 to be safe, but any client implementing version >= 3
8603         must interoperate with 3.
8604         
8605 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8606
8607         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
8608         background and gc members, add a warning in gtk_tooltips_set_color()
8609         indicating that this function is deprecated.
8610
8611 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
8612
8613         * docs/gtkfaq.sgml: FAQ Update:
8614           - Minor cleanups (Emmanuel, me)
8615           - New questions:
8616                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
8617                 How can I retrieve the text from a GtkMenuItem? (timj)
8618                 How do I validate/limit/filter the input to a GtkEntry? (me)
8619                 Memory does not seem to be released when I free the list
8620                         nodes I've allocated (timj)
8621
8622 2000-03-07  Tor Lillqvist  <tml@iki.fi>
8623
8624         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
8625         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
8626         for which it is no use to call GetLastError onWin9x.
8627         (gdk_other_api_failed) New function, for general error
8628         reporting without calling GetLastError.
8629         (gdk_win32_api_failed) OTOH, this function always calls
8630         GetLastError. (gdk_win32_last_error_string) Remove this function,
8631         GLib has the equivalent now.
8632
8633         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
8634         call them with function name, file name and line number in the
8635         arguments.
8636
8637         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
8638         functions.
8639         
8640         * gtk/gtk.def: Add some missing entry points.
8641
8642         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8643         gtk_paned_set_gutter_size, which don't exist any longer, as void.
8644         
8645         Fixes by Hans Breuer:
8646
8647         * gdk/makefile.msc: Update for debugging.
8648
8649         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
8650         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
8651         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
8652         in the dash_list.
8653
8654         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
8655         the x11 backend.
8656
8657         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
8658
8659         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
8660
8661 2000-03-04  Tor Lillqvist  <tml@iki.fi>
8662
8663         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
8664         just pixel value of background colour.
8665
8666         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
8667         containing code snippet previously duplicated in a couple of
8668         places.
8669         
8670         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
8671         gdk_colormap_color.
8672
8673         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
8674         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
8675         events for autorepeated Shift, Control and Alt keys. Use
8676         gdk_colormap_color.
8677
8678         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
8679         pointer is inside the window the cursor of which we are setting,
8680         call SetCursor immediately.
8681
8682         * gdk/win32/makefile.cygwin
8683         * gtk/makefile.cygwin: If we don't have the build number stamp
8684         file, use zero.
8685
8686         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
8687         gtk_paned_set_gutter_size as empty.
8688
8689         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
8690         
8691 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
8692
8693         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
8694           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
8695           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
8696           docs/gtk_tut.sgml docs/gtk.texi TODO:
8697
8698           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
8699
8700 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
8701
8702         * gtk/gtkcalendar.c: Implement num_marked_dates,
8703           and don't emit mutiple day_selected signals on
8704           month_prev.
8705
8706 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
8707
8708         * docs/make-todo (lineno): let title and logo be configurable so
8709         that GNOME can use this script too.
8710
8711         * TODO.xml: added logourl and a title
8712
8713 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
8714
8715         * TODO.xml: Added some UI items, and an explanatory
8716         comment at the top of the file.
8717
8718 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
8719
8720         * TODO.xml: some updates, added abunch of new entries.
8721         a note for those fiddeling with this file, when done
8722         with it, invoke:
8723         $ ./docs/make-todo TODO.xml >/dev/null
8724         and correct output errors before comitting changes.
8725
8726 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
8727
8728         * TODO.xml: Added XML-structured TODO file.
8729         * docs/make-todo: python script to turn TODO.xml into
8730           pretty XML output. 
8731
8732 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
8733
8734         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
8735         the function to let it draw the seven dots, instead of the old,
8736         much maligned, method.
8737         (draw_dot): New function to draw a dot.
8738
8739         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
8740         to draw the handle inside the border width as opposed to outside.
8741         Use paint function instead of gdk_draw_point.
8742
8743         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
8744         to draw the handle inside the border width as opposed to outside.
8745         Use paint function instead of gdk_draw_point.
8746
8747         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
8748         Change indenting to be more GTK like.
8749
8750 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
8751
8752         * docs/gtk_tut.sgml: New section on GtkCalendar
8753         * examples/calendar: Update example code
8754
8755 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
8756
8757         * docs/gtkfaq.sgml: FAQ Update
8758
8759 2000-02-19  Anders Carlsson  <andersca@gnu.org>
8760
8761         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
8762         to prevent the scroll event to be propagated upwards.
8763
8764 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8765
8766         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
8767         OwnerGrabButtonMask from button entries for
8768         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
8769
8770         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
8771         to the event mask (which will result in button/press release
8772         being added to the event mask on Unix) so scrolling works
8773         for layouts in scroll windows.
8774
8775         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
8776
8777         Patch from Anders Carlsson  <andersca@gnu.org> to add
8778         a scroll event.
8779
8780         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
8781         scrolling to the "Test Scrolling" part of testgtk.
8782  
8783         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
8784  
8785         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
8786         it against GDK_SCROLL.
8787  
8788         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
8789         way of mouse wheel scrolling.
8790  
8791         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
8792  
8793         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
8794  
8795         * gtk/gtkmain.c: Removed previous mouse wheel hack.
8796  
8797         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
8798         gdk_event_mask_table.
8799  
8800         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
8801         GdkEventScroll handler.
8802  
8803         * gdk/gdkevents.h: Added GdkEventScroll structure.
8804  
8805 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
8806
8807         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
8808         and Anders Carlsson to change the Paned widgets so that they
8809         can be dragged from anywhere along the length. Also change
8810         the way that this is drawn to make this apparent.
8811
8812         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
8813         from George Lebl to check that option_menu->menu is present
8814         before getting history.
8815
8816 2000-02-14  Tor Lillqvist  <tml@iki.fi>
8817
8818         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
8819         before the assertion for non-NULL segment list.
8820
8821         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
8822         Seems that pattern brushes *must* be 8x8 pixels! At least on my
8823         machine, but it might be display driver dependent. Sigh, so make
8824         sure the stipple is that size. Does Windows suck or what?
8825
8826         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
8827         places.
8828
8829 2000-02-13  Havoc Pennington  <hp@pobox.com>
8830
8831         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
8832         refcount to 1
8833         (gdk_cursor_new): init refcount to 1
8834
8835         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
8836
8837 2000-02-13  Tor Lillqvist  <tml@iki.fi>
8838
8839         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
8840         so that we don't have to do unnecessary settings to the HDC.
8841
8842         * gdk/win32/gdkdrawable-win32.c
8843         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
8844         gdk_gc_predraw.
8845
8846         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
8847         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
8848         GDI paths, call WidenPath to get the outline of the stroken path,
8849         and then fill the outline (with the brush that was built from the
8850         stipple).
8851
8852         * gdk/win32/gdkgc-win32.c: Factor out common code from
8853         _gdk_win32_gc_new and gdk_win32_gc_set_values into
8854         gdk_win32_gc_values_to_win32values. Use correct colour for
8855         SetBkColor() (Until now the code actually used a random colour in
8856         the call to SetBkColor()... but that didn't show up as not many
8857         GDI APIs use the background colour. Pattern (opaque stippled)
8858         brushes do.)
8859
8860         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
8861         gdk_win32_api_failed): New functions for error logging.
8862
8863         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
8864         WIN32_API_FAILED to call them, passing function or file name and
8865         line number.
8866
8867         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
8868
8869         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
8870         GdkColor for foreground and background in GdkGCWin32Data.
8871
8872         * gdk/makefile.cygwin: Link in the resource object separately.
8873
8874         * gdk/win32/rc/gdk.rc
8875         * gtk/gtk.rc (New file)
8876         * gdk/win32/makefile.cygwin
8877         * gtk/makefile.cygwin: Update build number in DLLs automatically,
8878         as in GLib.
8879
8880 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
8881
8882         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
8883         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
8884         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
8885         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
8886         parameters given and cursor->ref_count. coding style fixups.
8887
8888         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8889         not GtkWidget.
8890         
8891         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
8892         fix up widget macros and add _GET_CLASS() variant.
8893         
8894         * gtk/*.c: some GtkType fixups.
8895
8896 2000-02-09  Tor Lillqvist  <tml@iki.fi>
8897
8898         * gdk/win32/gdkproperty-win32.c
8899         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
8900         were reversed.
8901
8902 2000-02-04  Tor Lillqvist  <tml@iki.fi>
8903
8904         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
8905         g_filename_to_utf8 to convert the font names Windows gives us from
8906         whatever is the default codepage to UTF-8.
8907         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
8908         in the other direction.
8909
8910         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
8911         error in debugging output.
8912
8913 2000-02-02  Tor Lillqvist  <tml@iki.fi>
8914
8915         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
8916         and height parameters to gdk_window_clear_area(). Not minus one.
8917
8918 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
8919
8920         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
8921         checks if the widget passed to gtk_drag_get_data() was not the
8922         dest widget.
8923
8924 2000-02-01  Tor Lillqvist  <tml@iki.fi>
8925
8926         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
8927         g_filename_from_utf8 functions (which were added a moment ago to
8928         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
8929         size buffers.
8930
8931         gtk_file_selection_get_filename returns the filename in the C
8932         runtime encoding. It calls g_filename_from_utf8, but copies the
8933         returned string to a static buffer, which is returned. I think
8934         this is better than returning the result from g_filename_from_utf8
8935         directly, which would mean all apps that use it would have to free
8936         the return value. Or should this function care about this issue at
8937         all? Maybe a new function with clearly defined semantics.
8938
8939         * gtk/gtkfilesel.h: Add comment about
8940         gtk_file_selection_get_filename returning the filename in the C
8941         runtime's encoding.
8942
8943         * README.win32
8944         * gdk/gdk.def
8945         * gdk/makefile.{cygwin,msc}
8946         * gtk/gtk.def: Updates.
8947
8948         * gdk/gdkcursor-win32.c: Initialise refcount.
8949
8950 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
8951
8952         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
8953
8954 2000-01-30  Havoc Pennington  <hp@pobox.com>
8955
8956         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
8957         destroy
8958
8959         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
8960
8961         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
8962         implemented in platform-specific code
8963
8964         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
8965
8966         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
8967         underscore in front
8968
8969         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
8970         put an underscore in front
8971
8972         * gdk/gdkcursor.c: new file, implements
8973         gdk_cursor_ref/gdk_cursor_unref
8974
8975         * gdk/gdkcursor.h: Refcount GdkCursor
8976
8977         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
8978
8979 2000-01-29  Tor Lillqvist  <tml@iki.fi>
8980
8981         * gdk/gdkwindow.h
8982         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
8983
8984 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8985
8986         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
8987         structures to properly inherit from GtkWidget not GtkBin.
8988
8989 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
8990
8991         * gtk+.spec.in: Added lib/gtk+/include/* to %files
8992         (bug #5178 - Peter Wainright)
8993         
8994         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
8995         so that it will be installed.
8996         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
8997
8998 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
8999
9000         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
9001         for the GtkStyleClass vtable const.
9002
9003         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
9004         take a const string argument like GtkTranslateFunc. This will
9005         require changes in use code.
9006
9007 2000-01-19  Tor Lillqvist  <tml@iki.fi>
9008
9009         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
9010         semantics (to mimic the X11 backend, which just calls XClearArea)
9011         is to check for zero width (and height), and in that case use the
9012         window's width minus x (height minus y). This fixes for instance
9013         some redraw problems with gtkclist, which were easily noticeable
9014         in the gtk file selection widget.
9015
9016         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
9017         windows.
9018
9019 2000-01-13  Tor Lillqvist  <tml@iki.fi>
9020
9021         * configure.in
9022         * gdk/Makefile.am
9023         * gdk/x11/Makefile.am
9024         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
9025         (bug #5177).
9026         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
9027         out later.
9028
9029 2000-01-09  Tor Lillqvist  <tml@iki.fi>
9030
9031         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
9032         WM_MOVE for iconified or invisible windows. This fixes various
9033         problems when minimising windows. Thanks to Bernd Herd.
9034
9035 2000-01-05  Tor Lillqvist  <tml@iki.fi>
9036
9037         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
9038         backend's draw_lines method, not draw_points.
9039
9040 2000-01-02  Tor Lillqvist  <tml@iki.fi>
9041
9042         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
9043         before Owen's reorganisation: Don't have queued_events and
9044         queued_tail statics in this file, but use gdk_queued_events and
9045         gdk_queued_tail. This makes exposure event compression work again.
9046
9047         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
9048         seem to be needed?
9049
9050 1999-12-30  Tor Lillqvist  <tml@iki.fi>
9051
9052         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
9053         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
9054         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
9055         doesn't do anything.
9056
9057         * gdk/gdk.def: Add gdk_xid_table_insert.
9058
9059         * gdk/win32/gdkprivate-win32.h
9060         * gdk/win32/gdkevents-win32.c
9061         * gdk/win32/gdkinput-win32.c
9062         
9063         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
9064         extension_events field in the GdkWindowWin32Data struct. Use only
9065         the extension_events field in GdkWindowPrivate. Previously one was
9066         set, and the other one tested, which broke tablet
9067         functionality. Thanks to Keishi Suenaga for pointing this out.
9068
9069 1999-12-18  Tor Lillqvist  <tml@iki.fi>
9070
9071         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
9072         When handling a single character (text length == 1), don't handle
9073         it as if it was UTF-8.
9074
9075 1999-12-11  Tor Lillqvist  <tml@iki.fi>
9076
9077         * Makefile.am: Distribute README.win32.
9078         
9079         * gdk/Makefile.am
9080         * gdk/win32/Makefile.am: Distribute Win32 files.
9081
9082         * gdk/makefile.msc: New file.
9083
9084         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
9085         after label).
9086
9087         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
9088         gdk_error_code as GDKVAR, as they are referred outside GDK.
9089
9090         * gdk/win32/makefile.msc: Update.
9091
9092         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
9093         tweaks. Check only if at least one of those Unicode subrange bits
9094         we care for is set. If no code page bits are set, guess (wildly)
9095         based on the charset.
9096
9097         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
9098
9099         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
9100         non-NULL.
9101
9102         * gtk/gtkdnd.c
9103         * gtk/gtklayout.c
9104         * gtk/gtkplug.c
9105         * gtk/gtkselection.c
9106         * gtk/gtksocket.c
9107         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
9108         appropriate. There must be a cleaner way to handle this?
9109
9110         * gtk/gtkrc.c: Must include windows.h on Win32.
9111
9112         * gtk/testgtk.c: No need to include gdkx.h.
9113
9114         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
9115
9116 1999-12-07  Tor Lillqvist  <tml@iki.fi>
9117
9118         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
9119         the rbearing is set to the same as the width, but this should be
9120         fixed.
9121
9122 1999-12-06  Tor Lillqvist  <tml@iki.fi>
9123
9124         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
9125         function. If Windows doesn't tell us what Unicode subranges a font
9126         covers, guesstimate based on the codepages it covers. This will
9127         hopefully help those Windows versions or fonts that don't give us
9128         any useful Unicode subrange information with GetTextCharsetInfo.
9129         Call this function in gdk_font_load_internal.
9130
9131         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
9132         minor changes.
9133
9134 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
9135
9136         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
9137         New function, long needed.
9138
9139 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
9140
9141         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
9142         only_if_exists argument of gdk_atom_intern to
9143         bool.
9144
9145 1999-11-25  Tor Lillqvist  <tml@iki.fi>
9146
9147         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
9148         Fix two copy&paste errors.
9149
9150         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
9151         win32 has changed.
9152
9153         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
9154         GdkWin32SingleFont struct.
9155
9156         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
9157         subranges of loaded fonts. Clear font signature first, in case
9158         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
9159         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
9160
9161         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
9162         Unoffset clip region.
9163
9164 1999-11-23  Tor Lillqvist  <tml@iki.fi>
9165
9166         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
9167         event->any.window before calling filter functions.
9168
9169 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
9170
9171         * gtk/gtkgamma.h: Adapt cast macros to standard.
9172
9173 [ Merges from 1.2 ]
9174
9175 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
9176
9177         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
9178         If translation does not include a '/', use entire
9179         translation instead of crashing.
9180
9181 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
9182
9183         * docs/gtk_tut.sgml:
9184         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
9185
9186 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
9187
9188         * gtk/gtkselection.c (gtk_target_list_remove): Use
9189         g_list_remove_link, not g_list_remove.
9190
9191         [ From Geert Bevin <gbevin@thunderstorms.org> ]
9192         
9193 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
9194
9195         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
9196         statement upon unselection (how the heck did that slip in?).
9197
9198 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
9199
9200         * gtk/gtktext.c (gtk_text_freeze): 
9201         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
9202         in frozen state (and aparently crashes). patch provided by Anders
9203         Melchiorsen <and@kampsax.dtu.dk>.
9204
9205 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
9206
9207         * fix insensitive default/focus widget activation,
9208         reported by Matt Goodall <mgg@isotek.co.uk>.
9209
9210         * gtk/gtkwindow.c (gtk_window_key_press_event): 
9211         (gtk_window_activate_default):
9212         (gtk_window_activate_focus):
9213         return handled=FALSE for actiavtion of insensitive default
9214         widgets. return handled=TRUE for activation of insensitive
9215         focus widgets. don't activate in either case.
9216
9217 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
9218
9219         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
9220         and $glib_cflags to match library order and in the
9221         theory that an old version of GLib is more likely to
9222         be in the include directory for X then vice-versa.
9223         (Bug #2776)
9224
9225 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
9226
9227         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
9228         to determine the locale for fontsets, not LC_MESSAGES;
9229         the user may want English messages with a handling
9230         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
9231         will still be broken) (Bug #2891)
9232
9233 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9234
9235         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
9236
9237 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9238
9239         * gtk/gtkrc.ko: Changed the Korean default fontset.
9240
9241 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
9242
9243         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
9244         where when scrolling to the left or top double exposes
9245         were done, causing major slowdowns.
9246
9247 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
9248
9249         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
9250         names to lowercase and alphanumeric, before looking
9251         them up.
9252
9253         * gtk/Makefile.am: Install codeset variant gtkrc files
9254         with normalized names.
9255
9256 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
9257
9258         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
9259         popup menus when the menu is already visible, but its parent
9260         is still hidden, (happens after tornoff window got hidden).
9261
9262 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
9263
9264         * gtk/Makefile.am (install-data-local): Fix
9265         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
9266         deleted, causing error messages on install.
9267
9268 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
9269
9270         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
9271         the handle as well, since we now sometimes ignore
9272         exposes on the handle while resizing.
9273
9274 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
9275
9276         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
9277         extra g_free introduced in one of the last one or two 
9278         commits.
9279
9280 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
9281
9282         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
9283         consistent, put each style that a gtkrc.* file creates
9284         in a unique namespace, remove old files before installing.
9285
9286 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
9287
9288         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
9289         gtk_rc_init is called multiple times. (Yes, people who
9290         do that have bugs in their code.)
9291
9292 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
9293
9294         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
9295         Remove it since it's generated by the Makefile anyway
9296
9297 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
9298
9299         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
9300         device->info.axes for core pointer.
9301
9302 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
9303
9304         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
9305         idle_id, to deal with obsolete, broken C libraries.
9306
9307 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
9308
9309         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
9310         allocation->x/y twice!
9311
9312         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
9313         consistent with gtk_vscale_pos_trough().
9314
9315 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
9316
9317         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
9318         be queueing a resize on a toplevel container between
9319         the time we show it and when we map it. So, we need
9320         to test GTK_WIDGET_VISIBLE() for toplevels, and only
9321         use GTK_WIDGET_DRAWABLE() for child windows.
9322
9323 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
9324
9325         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
9326         (fixes bug #2144)
9327
9328 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
9329
9330         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
9331         container DRAWABLE (instead of VISIBLE), so we don't queue
9332         resizes on non-toplevel containers.
9333
9334 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
9335
9336         * gtk/gtkselection.[ch]: Make the data argument
9337         const guchar *.
9338
9339 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
9340
9341         * gtk/gtkwindow.c: Try to behave sensibly if 
9342         the focus widget is the window itself. (Should
9343         we allow this at all?)
9344
9345 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
9346
9347         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
9348         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
9349         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
9350         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
9351         in prototypes and implementations consistent (Tomas Ogren).
9352
9353         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
9354         before the widget is unparented (reported by damon).
9355
9356         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
9357         since we provide unsigned data anyways.
9358
9359 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
9360
9361         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
9362         the call to gtk_tooltips_layout_text() until later.
9363
9364         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
9365         Call gtk_widget_ensure_style() before using the style.
9366
9367 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
9368
9369         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
9370         for old widgets that don't propagate draws to all
9371         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
9372
9373 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
9374
9375         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
9376         for a redraw but just the widget that requested the resize.
9377
9378 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
9379
9380         * gtk/gtkcontainer.c: added new widget level method
9381         gtk_container_set_reallocate_redraws() and a GtkContainer flag
9382         reallocate_redraws : 1 to reflect the setting, exported this through
9383         the argument system as a boolean ::reallocate_redraws.
9384
9385         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
9386         on the widget because the allocation changes, do so as well for
9387         widget->parent if the parent has reallocate_redraws set to TRUE.
9388         with that containers requesting reallocation redraws get automatically
9389         redrawn if their children changed allocation (this unfortunately
9390         affects also other children that didn't change allocation, but we
9391         cannot work around that before 1.3).
9392
9393 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
9394
9395         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
9396         _and_ height are >0 (not _or_).
9397
9398         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
9399         instead of gtk_container_queue_resize(), which is a core gtk internal
9400         function (must have been on crack when i queued that).
9401
9402         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
9403         we can check more reliably if we want to discard expose events.
9404         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
9405         flag.
9406         
9407         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
9408         we simply trust these events. for deciding whether to discard exposes,
9409         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
9410         
9411 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
9412
9413         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9414         queues of areas that are completely off screen.
9415
9416         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
9417         logic for handleboxes.
9418
9419         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
9420         check on width/height.
9421
9422 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
9423
9424         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
9425         we are fine with using $@ the way we do (if we actually encounter
9426         brokeness with $@ in VPATH builds because of additional path prefixes,
9427         we need to use $(@F) actually).
9428
9429 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
9430
9431         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
9432         short lived bugs, that would allow language bindings to do surgeries
9433         to our guts.
9434
9435 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
9436
9437         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
9438         where comparison was being done against an uninitialized
9439         value causing intermittant results depending on
9440         compiler flags. Also make it clearer that we aren't
9441         ever initializing the child as 0x0 (though this will
9442         be caught in gtk_widget_size_allocate())
9443
9444 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
9445
9446         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
9447         gtk_window_unset_transient_for() call after we do checks
9448         involving the old transient parent.
9449         [ From Lance Capser <lmc@cyberhighway.net> ]
9450
9451 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
9452
9453         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
9454         an empty file.
9455
9456 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
9457
9458         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
9459         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
9460
9461 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
9462
9463         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
9464         `$@' is valid only in the build dir, not after we've done 
9465         `cd $srcdir'.  Also use `test -f' instead of less portable
9466         `test -e'.
9467
9468 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
9469
9470         * gtk/gtktext.c (correct_cache_insert): Rewrite
9471          for simplicity, and hopefully correctness.
9472          (Fixes bug #1322, which was a segfault when
9473           on some insertions with the properties around
9474           the insertion set up just wrong.)
9475
9476         * gtk/gtktext.c (gtk_text_adjustment): When we receive
9477          a "changed" signal, clamp the new value to the adjustment
9478          bounds to avoid segfaulting if someone tries to change
9479          the adjustment to a bogus value. (Bug #1795)
9480
9481 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
9482
9483         * gtk/gtkmain.c: Ignore unexpected destroy notifies
9484         for children, for toplevel windows handle them
9485         like delete_event.
9486
9487         * gtk/gtkplug.c: Add an unrealize handler so that
9488         we unref plug->socket_window when we are done
9489         with it.
9490
9491 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
9492
9493         * gtk/gtktext.c (clear_area): Fix stupid signedness
9494          problem that was causing background to sometimes
9495          be misaligned.
9496
9497 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
9498
9499         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
9500         
9501         * gtk/gtkmenu.c (gtk_menu_position): Make
9502          sure we never position menus with negative x, y,
9503          since gtk_widget_set_uposition() can't handle that.
9504
9505         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
9506          Modify the positioning code a bit so that we always
9507          put the top-left corner onscreen. (This is for
9508          UI reasons, gtk_menu_position() now takes care of
9509          gtk_widet_set_uposition() brokeness.)
9510
9511 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
9512
9513         * gtk/Makefile.am: fixed up things for -jx, x > 1.
9514
9515 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
9516
9517         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
9518           RC style that is passed in. The lack of the ref
9519           before was a bug. If people worked around this
9520           bug, this will introduce a slight memory leak
9521           in their code. The code should typically look like:
9522
9523             rc_style = gtk_rc_style_new ();
9524             [...]
9525             gtk_widget_modify_style (widget, rc_style);
9526             gtk_rc_style_unref (rc_style);
9527
9528         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
9529           the style if it was already set.
9530
9531         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
9532           style if it was set before.
9533
9534 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
9535
9536         * gtk/testgtk.c (main): Add a check to see if we
9537           are being run from the correct directory and
9538           to quit nicely if we are not.
9539
9540         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
9541           static.
9542
9543 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
9544
9545         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
9546
9547         * gtk/gtkwindow.c:
9548         queue resizes unconditionally (gtk_widget_queue_resize will figure
9549         what to do if the window is not realized).
9550         (gtk_window_move_resize): only recenter the window
9551         for GTK_WIN_POS_CENTER_ALWAYS.
9552         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
9553         the same way as GTK_WIN_POS_CENTER.
9554
9555 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
9556
9557         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
9558         with (!(info->last_flags & GDK_HINT_POS)) instead of
9559         (!info->last_flags & GDK_HINT_POS).
9560
9561         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
9562         new_height unconditionally, because we use these values even if
9563         !default_size_changed && !hints_changed.
9564         comented the (default_size_changed || hints_changed) case with
9565         respect to resize rejects from the window manager.
9566
9567         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
9568         in the zvt condition hack, since this includes the window hints, set
9569         the hints after the handling_resize case.
9570
9571         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
9572         window is initially shown with to the geometry.
9573
9574 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
9575
9576         * gtk/gtkwindow.c (gtk_window_move_resize):
9577         s/size_changed/default_size_changed/g so i know what's
9578         really going on (frying brain on smaller flame now).
9579
9580 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
9581
9582         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
9583         we have size_changed upon handling_resize. this is a gross
9584         workaround for the broken zvt widget and should be removed in
9585         1.3 again (search for FIXME).
9586         Owen provided an accurate comment for this:
9587
9588         /* We could be here for two reasons
9589          *  1) We coincidentally got a resize while handling
9590          *     another resize.
9591          *  2) Our computation of size_changed was completely
9592          *     screwed up, probably because one of our children
9593          *     is broken. It's probably a zvt widget.
9594          *
9595          * For 1), we could just go ahead and ask for the
9596          * new size right now, but doing that for 2)
9597          * might well be fighting the user (and can even
9598          * trigger a loop). Since we really don't want to
9599          * do that, we requeue a resize in hopes that
9600          * by the time it gets handled, the child has seen
9601          * the light and is willing to go along with the
9602          * new size. (this happens for the zvt widget, since
9603          * the size_allocate() above will have stored the
9604          * requisition corresponding to the new size in the
9605          * zvt widget)
9606          *
9607          * This doesn't buy us anything for 1), but it shouldn't
9608          * hurt us too badly, since it is what would have
9609          * happened if we had gotten the configure event before
9610          * the new size had been set.
9611          */
9612
9613 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
9614
9615         * gtk/gtkrc.c: deal properly with the fact that RC
9616           style lists may include rc styles more than once.
9617
9618         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
9619           unused static function.
9620
9621         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
9622           stack of directories of RC files currently being
9623           parsed and implicitely add them to pixmap path.
9624           
9625           This fixes a bug where the directory would get
9626           appended then overwritten by pixmap_path declarations.
9627
9628           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
9629
9630         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
9631           theme's exit function. (Patch from Peter Wainwright,
9632           bug #1454)
9633
9634         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
9635           Add a destroy() handler to take care of removing
9636           group for menu item. (Fixes bug #1197)
9637
9638         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
9639           in warning message.
9640
9641 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
9642
9643         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
9644         roundtrip to figure window's width and height, since we know that
9645         anyways from widget->allocation.
9646
9647 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
9648
9649         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
9650           the hints after we request the new size.
9651
9652 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
9653
9654         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
9655           GTK_WIDGET_REALIZED() assertion - we can compute the
9656           hints before we are realized.
9657
9658         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
9659           hint changing so that we have a value of hints_changed
9660           when we decide whether to constrain the window size.
9661
9662         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
9663
9664         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
9665         change back to G_MAXINT.
9666
9667 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
9668
9669         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
9670         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
9671         contain uncluttered values.
9672         (gtk_window_compute_hints): simply assert that window is realized
9673         and that geometry_info is valid, since we rely on this anyways.
9674         (gtk_window_constrain_size): major cleanups to the code.
9675         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
9676         for the base size, instead of the minimums. use 32767 as max width
9677         and height (like in gtkwindow.c) instead of G_MAXINT.
9678
9679 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
9680
9681         * cleaned up the GtkContainer.need_resize flag handling mess, we
9682         only need to force resize requests when we were prematurely
9683         realized, or our widget tree was modified when we were temporarily
9684         hidden. handling these cases directly upon showing the window (i.e.
9685         while the GdkWindow is still unmapped) avoids the need to wait for
9686         a configure event response and therefore makes the GUI more snappier
9687         and avoids blank windows during the roundtrip.
9688
9689         * gtk/gtkwidget.c:
9690         (gtk_widget_hide): 
9691         (gtk_widget_show): don't queue resizes on toplevels, they know how
9692         to deal with matters.
9693
9694         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
9695         flag directly for not visible resize containers and spare us unecessary
9696         signal emissions.
9697
9698         * gtk/gtkwindow.c:
9699         (gtk_window_realize): if we need to enforce premature size allocation,
9700         queue a container resize so we are correctly resized later on.
9701         (gtk_window_init):
9702         (gtk_window_size_request):
9703         don't freak around with the ->need_resize flag,
9704         gtk_container_queue_resize() will care about that.
9705         (gtk_window_show):
9706         handle initial resizing issues here, we can handle matters better in
9707         this place, especially since we know that our GdkWindow is still
9708         unmapped.
9709         (gtk_window_move_resize):
9710         don't care about ->need_resize at all.
9711         handle size changes properly that occoured while we waited for a
9712         configure event.
9713
9714 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
9715
9716         * gtk/gtkwidget.c (gtk_widget_set_uposition):
9717         * gtk/gtkwindow.[hc] (gtk_window_reposition):
9718         Move the hint setting code from gtk_widget_set_uposition
9719         to here; set the hints so that we respect any previously
9720         set geometry hints.
9721
9722         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
9723         change the window hints here or move the window here,
9724         let that happen in gtk_window_move_resize().
9725
9726 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
9727
9728         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
9729         to already queued resizes (and therefore redraws) on a widget, check
9730         its anchestry as well.
9731
9732         * gtk/gtkcontainer.c:
9733         (gtk_container_queue_resize): clear resize widgets for resize
9734         containers before aborting prematurely. this is especially important
9735         for toplevels which may need imemdiate processing or their resize
9736         handler to be queued.
9737         (gtk_container_dequeue_resize_handler): added new internal function for
9738         gtkwindow.c.
9739
9740         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
9741         configure event, take possible changes in window position into account
9742         as well.
9743         if we request a new window size, queue up a resize handler that will
9744         last until the configure event response arrives.
9745         combined the ->need_resize case (initial show) with the general size
9746         (hints) changed case and added even more comments.
9747         if !auto_shrink, only revert to the old allocation if the new size
9748         is smaller than the current allocation.
9749
9750 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
9751
9752         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
9753                            gtk_window_set_geometry_hints
9754                            gtk_window_set_default_size):
9755         When hints are set, queue a resize so that the hints will
9756         be eventually reset on the toplevel.
9757
9758         * gtk/gtkwindow.c (gtk_window_show): Use
9759         gtk_window_compute_default_size(). Clear the need_resize flag
9760         on the initail map so that we don't unnecessarily trigger the
9761         resize code.
9762
9763         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
9764         into separate functions. Compare the hints we are setting
9765         with what we set last time so that we can accurately
9766         tell when we need to reset the hints.
9767
9768         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
9769         function to figure out the size from requisition
9770         and default_size.
9771
9772         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
9773         from fvwm to constrain a size to the geometry hints.
9774
9775         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
9776         to compare two sets of geometry hints.
9777
9778         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
9779         from gtk_window_set_hints(), just compute the hints,
9780         don't set them.
9781
9782         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
9783         code from gtk_window_move_resize() to separate function,
9784         rationalize a bit.
9785
9786 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
9787
9788         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
9789         structure into a new private structure.
9790
9791         * gtkrc.c: Split GtkRcStyle into public/private.
9792         In the private part, add a list of pointers to the
9793         RcStyle lists this RcStyle participates in.
9794
9795         * gtkrc.c: When a RcStyle is free, remove all
9796         lists referencing it from the 
9797         realized_style_ht hash, and free those lists.
9798         
9799         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
9800         gtk_rc_init(), since that adds the default styles
9801         to the list of parsed RC files again.
9802
9803         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
9804         
9805 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
9806
9807         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
9808         checks that ensure that a widget's allocation is at least 1 in width
9809         and height. (GNOME note: this doesn't affect old panel code anymore,
9810         because GtkSocket will request width and height of at least 1 since
9811         Fri Jul 23).
9812
9813         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
9814         allocated yet (happens if the user realizes the window prematurely),
9815         size request and allocate it.
9816         (gtk_window_size_allocate): guard against guint underflows.
9817
9818 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
9819
9820         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
9821         in gtk_built_sources, so gtk.defs gets built prior to all other
9822         sources.
9823
9824 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9825
9826         * gtk/Makefile.am:
9827         invoke indent on gtkmarshal.*. 
9828         rewrote source generation rules, use COPYING as oldest source tag for
9829         a piggyback rule to generate all sources from (don't touch it ;).
9830         major cleanups, strip spaces on build rules for GNU Make.
9831
9832         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
9833         source and target files from commandline arguments. don't invoke indent.
9834
9835 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
9836
9837         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9838         notebook after switch to avoid drawing problems.
9839         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9840         
9841         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
9842         show them instead. 
9843         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9844
9845 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
9846
9847         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
9848         notebook after switch to avoid drawing problems.
9849         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
9850         
9851         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
9852         show them instead. 
9853         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
9854
9855 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
9856
9857         * gtk/gtkwindow.c:
9858         we use window->need_resize from configure_event now, to indicate that
9859         the gtkwindow should keep its allocation (e.g. because the user resized
9860         the window through window manager handles). resize_count is now reliably
9861         used to figure whether we got the allocation we requested from the
9862         window manager.
9863         configure events get queued as resizes now, the real stuff (size
9864         computation and allocation) now only goes on in gtk_window_move_resize().
9865         GtkWindow's requisition now contains its *real* requisition (like all
9866         other widgets), *not* taking usize into account.
9867         geometry_info->last_{width|height} is now updated from set_hints() only
9868         so it always contains the last hints we set for the window manager.
9869         made some event handlers return TRUE instead of FALSE.
9870         the overall code should be much more straight forward now, and the
9871         significant code portions are accompanied by comments now.
9872         (gtk_window_set_hints):
9873         removed requisition argument and made it
9874         fetch the requisition through gtk_widget_get_child_requisition.
9875         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
9876         does that now.
9877         (gtk_window_show):
9878         ensure that the widget is realized before calling 
9879         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
9880         ensure that we got properly size requested and allocated before
9881         realization.
9882         (gtk_window_configure_event):
9883         ignore plain window moves, or reallocate the widget tree through the
9884         resize queue otherwise.
9885         (gtk_window_move_resize):
9886         mostly rewrote this function to figure window manager hints more
9887         reliably, coalesce window moves and resizes to reduce configure events
9888         and do actuall size allocations.
9889
9890 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
9891
9892         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
9893         that have a resize pending, because a redraw is already queued for them.
9894
9895         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
9896         hack to clear resize_widgets.
9897
9898         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
9899         for resize containers prior to size allocation. (this is also a bit
9900         ugly, but avoids side effects for stopped emissions and is thus more
9901         reliable).
9902         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
9903
9904         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
9905         function from gtk_tooltips_expose, as we connect to ::expose_event
9906         *and* ::draw now.
9907
9908 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
9909
9910         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
9911         checks.
9912         (gtk_target_list_unref): Likewise.
9913
9914         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
9915
9916 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
9917
9918         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
9919         guard against division by zero. (Fixes bug #1339)
9920
9921 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
9922
9923         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
9924         Prevent the trivial leak of information of allowing
9925         word motion when the entry is not visible.
9926
9927 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
9928
9929         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
9930         modality to error dialog as well as confirmation dialogs.
9931         (Bug #1803, reported by Rosanna Wing Sze Yuen)
9932
9933 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
9934
9935         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
9936         tree->view_lines.
9937         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
9938
9939         * gtk/Makefile.am (install-data-local): Solaris apparently
9940         has various troubles with ln -f; use rm first instead.
9941         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
9942
9943 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
9944
9945         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
9946         use `cp' followed by `rm' (the `rm' was already there).
9947
9948 July 30, 1999 Elliot Lee <sopwith@redhat.com>
9949         
9950         * configure.in: Fix autoconf warnings about cross compilation by
9951         trying to provide sane defaults for AC_TRY_RUN.
9952         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
9953         put them into $(srcdir) when generated. Also add a dependency of
9954         gtksignal.h on gtkmarshal.h for -j builds. 
9955         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
9956
9957 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
9958
9959         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
9960         GDK_THREADS_{LEAVE,ENTER} pair.
9961         (From Paul Fisher <pnfisher@redhat.com>)
9962
9963 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
9964
9965         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
9966         width and height are always >0 (owen).
9967
9968 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
9969
9970         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
9971         change that assured that a widget's allocated with and height are
9972         always >1, since this breaks *buggy* panel code. unfortunately this
9973         back-breaks the gimp's color selector.
9974
9975         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
9976         allocation is always >0 in width and height, before sending the
9977         configure event; this is a *gross* hack to get the gimp back to work.
9978         
9979         * marked both cases with TODO-1.3
9980
9981 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gtk/gtktext.c: Don't display wrap indicators when
9984         text is not editable and word wrap is on.
9985
9986 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
9987
9988         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
9989         option menus here as they are not derived from menu shell, assure that
9990         the option menu has a menu we can add items to.
9991
9992 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
9993
9994         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
9995         width/height to (gint) before calculations and check against < 0 to
9996         avoid guint wraparounds.
9997
9998 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
9999
10000         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
10001         width and height is never zero. sanity check both dimensions against
10002         32767 and issue a warning if the allocation is greater than that.
10003
10004 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
10005
10006         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
10007         to g_main_pending() as well.
10008
10009 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
10010
10011         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
10012         call to g_main_iteration() - since that will regrab
10013         GTK+ lock to process events.
10014
10015 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
10016
10017         * gtk/gtkwindow.c
10018         - Regularize with the rest of GTK+ by making widget->requisition
10019           not reflect the set_usize()
10020         - Always recompute geometry hints, then check if they
10021           changed before sending them to the X server. The
10022           previous checks for changes would fail in a number
10023           of circumstances. 
10024
10025 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
10026
10027         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
10028
10029 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
10030
10031         * gtk/gtkdnd.c:
10032         - Code cleanups
10033         - Instantaneously update on modifier key presses
10034         - Allow cancellation of the drag with Escape.
10035
10036 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gtk/testgtk.c (create_handle_box): Set the policy
10039         to auto_shrink - otherwise the appearance is rather
10040         strange when flipping between horizontal and vertical.
10041
10042 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
10043
10044         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
10045         (gtk_window_set_default_size): don't change a value if it's < 0.
10046         queue a resize.
10047
10048 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
10049
10050         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
10051
10052 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
10053
10054         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
10055         add an extra "/" when concating "/" + filename.
10056         (From Matt Grossman <mattg@oz.net>)
10057
10058 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
10059
10060         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
10061         for fg_gc if we set it for drawing pixmap.
10062
10063 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
10064
10065         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
10066         
10067         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
10068         already set, call old engine's destroy function and
10069         unref the old engine.
10070
10071 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
10072
10073         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
10074
10075 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
10076
10077         * gtk/gtkaccelgroup.h: mark certain functions as internal.
10078
10079 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
10080
10081         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
10082         expand behaviour changed.
10083
10084         * gtk/gtklabel.c (gtk_label_set_pattern):
10085         (gtk_label_set_justify):
10086         (gtk_label_set_line_wrap):
10087         don't bother invoking queue_clear, the reallocation does
10088         that for us, always free_words so the upcoming resize will
10089         relayout the label's contents.
10090
10091 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
10092
10093         * applied argument implementation patches from Elena Devdariani
10094         <elena@cogent.ca>.
10095
10096         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
10097         ::space_style, ::relief
10098         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
10099         * gtk/gtkpreview.c: ::expand
10100         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
10101         * gtk/gtknotebook.c: ::homogeneous
10102         * gtk/gtklabel.c: ::wrap
10103         * gtk/gtklist.c: ::selection_mode
10104         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
10105         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
10106         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
10107         * gtk/gtkclist.c: ::sort_type
10108         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
10109         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
10110
10111 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
10112
10113         * gtk/gtkstyle.c: Removed ill-thought-out part of last
10114         comment.
10115
10116 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
10117
10118         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
10119         counting right when we have to attach a new style
10120         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
10121
10122         * gtk/gtkstyle.c: Documented the refcounting
10123         peculularities of gtk_style_attach.
10124
10125 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10126
10127         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
10128         window types.
10129
10130         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
10131         of GTK_TOPLEVEL for creating the window.
10132
10133 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10134
10135         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
10136         the last argument (reported by Per Winkvist).
10137         
10138 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
10139
10140         Fixes for invisible XOR lines (Frank Loemker
10141         <floemker@TechFak.Uni-Bielefeld.DE>)
10142         
10143         * gtk/gtkclist.c (gtk_clist_realize): Always use
10144         a non-zero pixel for GDK_XOR.
10145
10146         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
10147         Use GDK_INVERT instead of GDK_XOR.
10148
10149 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
10150
10151         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
10152         signals if h/voffsets differ from adjustment values.
10153         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
10154
10155 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
10156
10157         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
10158         ::selection-done emissions up to the topmost menu shell.
10159
10160 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
10161
10162         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
10163         the user data on the window before destroying it.
10164
10165         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
10166         unrealize handler to take care of destroying 
10167         notebook->panel properly. 
10168         (Bug #1198 - Morten Welinder <terra@diku.dk>)
10169
10170         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
10171         of g_new and g_realloc to stop memory leak. (Actually,
10172         we could just use g_realloc(), but I'm not 100% sure
10173         that is portable).
10174         (Bug #1196 - Morten Welinder <terra@diku.dk>)
10175
10176 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
10177
10178         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
10179
10180         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
10181         for fontsets.
10182
10183         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
10184         with bin/button confusion.
10185
10186 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
10187
10188         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
10189         and show how preselection of radio items is done.
10190
10191 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
10192
10193         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
10194         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
10195         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
10196         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
10197         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
10198         * gtk/gtktable.c (gtk_table_attach): 
10199         * gtk/gtklist.c (gtk_list_insert_items): 
10200         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
10201         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
10202         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
10203         * gtk/gtkbin.c (gtk_bin_add): 
10204         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
10205         * gtk/gtkfixed.c (gtk_fixed_put): 
10206         * gtk/gtklayout.c (gtk_layout_put):
10207         general fixups to container_add logic. always realize child if
10208         child->parent is realized, only map the child and queue a resize
10209         if child and child->parent are both visible.
10210
10211 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
10212
10213         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
10214         instead of gtk_container_foreach to walk and unrealize children, so
10215         composite children get also unrealized.
10216         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
10217         (gtk_widget_map): assert that the widget is visible (basic constrain).
10218         (gtk_widget_real_map): assert that the widget is realized (basic
10219         constrain).
10220
10221 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
10222
10223         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
10224
10225 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
10226
10227         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
10228         file for iso-8859-2 locales.
10229
10230         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
10231
10232 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
10233
10234         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
10235          (Pointed out by andy@rz.uni-karlsruhe.de and others).
10236          Remove some suspicious and useless lines. 
10237
10238 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
10239
10240         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
10241         width,height = 0, 0 to mean - here to edge of window,
10242         instead of -1, -1, since the former is all we support.
10243
10244 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
10245
10246         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
10247         when removing from quit_functions list.
10248
10249 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
10250
10251         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
10252
10253 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
10254
10255         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
10256          When redrawing characters on non-visible entry, use appropriate
10257          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
10258
10259 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
10260
10261         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
10262         from drag coordinates.
10263         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
10264         use drag_dest_cell.
10265
10266         * gtk/gtktree (drag_dest_cell)
10267         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
10268         (Bug #1129)
10269
10270 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
10271
10272         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
10273         translate_* fields.
10274         (gtk_item_factory_finalize): invoke translate_notify independant from
10275         translate_data.
10276         (gtk_item_factory_set_translate_func): likewise.
10277         (gtk_item_factory_destroy): only remove ifactory pointer from those
10278         widgets that belong to us (stupid me).
10279
10280 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
10281
10282         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
10283         rc_style list when lookup succeeeds.
10284
10285 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
10286
10287         * gtk/gtkctree.c (resync_selection): 
10288         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
10289         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
10290         bug.
10291
10292 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
10293
10294         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
10295         Add some missing GDK_THREADS_ENTER()/LEAVE around
10296         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
10297
10298 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
10299
10300         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
10301         rather than emit_by_name.
10302
10303         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
10304         on the widget across multiple signal emissions.
10305         (gtk_editable_delete_text): same here.
10306         (gtk_editable_class_init): set widget_class->activate_signal after
10307         editable_signals[ACTIVATE] has been created.
10308
10309 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
10310
10311         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
10312         position here prematurely -- we might not have the
10313         right ->min_position and ->max_position yet.
10314
10315 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
10316
10317         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
10318         Add error traps so if the other end of the connection
10319         dies, we survive.
10320
10321         * gtk/gtkselection.c (gtk_selection_notify): Clean
10322         up properly when selection property retrieval fails.
10323         
10324         * gtk/gtkselection.c (gtk_selection_request): Correctly
10325         reject SelectionRequest notifies where the handler
10326         returns no data.
10327
10328 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
10329
10330         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
10331         when we've previously highlighted.
10332
10333         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
10334         emit two "drag_leave" signals for Motif drops.
10335
10336         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
10337         back the correct status messages when dropping from
10338         Motif onto a proxy window that is rejecting the
10339         drop.
10340
10341 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
10342
10343         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
10344         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
10345         to compare two argument values. added gtk_arg_to_valueloc() to set a
10346         variable from an arg through its location (pointer).
10347
10348         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
10349         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
10350         as gfloat*, uchars are collected as guchar*, ints are collected as
10351         gint*, etc...
10352
10353 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
10354
10355         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
10356         Include <string.h> instead of <strings.h>.
10357
10358         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
10359         (actually, a lot more duplicate includes occur if
10360          you trace through the sequence of #include's)
10361         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
10362         
10363 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
10364
10365         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10366         gtk-a-higuti-990322-[0-3]
10367
10368         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10369         that was causing -DX_LOCALE not to work.
10370
10371         * gtk/gtkrc.c (gtk_rc_init):
10372         X_LOCALE will never have LC_MESSAGES defined
10373
10374 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
10375
10376         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
10377         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
10378
10379         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
10380         left/right as well (gtk-michael-980726-0.patch.gz).
10381
10382         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
10383         for pointer values, use gchar instead of char. fixed uline allocation
10384         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
10385         chunks instead of G_ALLOC_ONLY.
10386         (gtk_label_size_request): always alter requisition as passed and leave
10387         widget->requisition alone.
10388         (gtk_label_set_text): allow NULL strings.
10389         (gtk_label_new): likewise.
10390
10391 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
10392
10393         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
10394
10395 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
10396
10397         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
10398         *and* mapped (i.e. drawable).
10399         (gtk_bin_expose): only send exposes to drawable children.
10400
10401         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
10402         (gtk_box_expose): only send exposes to drawable children.
10403
10404         * gtk/gtkhscale.c (gtk_hscale_draw): 
10405         * gtk/gtkvscale.c (gtk_vscale_draw):
10406         hm, this is an ugly one. we first compute the size of our trough area
10407         here (window relative) and then check intersection with the draw_area
10408         which is parent relative because we're a NO_WINDOW widget, so we need
10409         to offset the trough area by allocation.x and allocation.y before the
10410         check. (this must not be done for the background area though, since
10411         that's already computed parent relative).
10412
10413 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
10414
10415         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
10416         unrealize title buttons.
10417
10418 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
10419
10420         * gtk/gtkclist.c (gtk_clist_column_title_passive)
10421         (gtk_clist_column_title_active): 
10422         only connect/disconnect to GtkWidgetClass::event to block mouse events.
10423
10424         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
10425         zero initialize event, removed superfluous gdk_window_get_pointer call
10426
10427         * gtk/gtklist.c (gtk_list_vertical_timeout)
10428         (gtk_list_horizontal_timeout): removed superfluous
10429         gdk_window_get_pointer call
10430
10431 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
10432
10433         * plugging problems reported by "Bruce Mitchener, Jr."
10434         <bruce@puremagic.com> due to a purify session.
10435
10436         * gtk/gtkstyle.c:
10437         (gtk_style_ref): 
10438         (gtk_style_unref): assert ref_count to be > 0.
10439
10440         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
10441         the requisition.
10442         (gtk_clist_set_shift): likewise.
10443
10444         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
10445         adjustments.
10446
10447         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
10448         event before sending it and set send_event to TRUE (which needs to
10449         be done for *all* synthesized events).
10450         (gtk_list_vertical_timeout): likewise.
10451
10452         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
10453         leaks.
10454
10455         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
10456         to TRUE when synthesizing events.
10457
10458 [ *** end of merges from 1.2 *** ]      
10459         
10460 1999-11-21  Tor Lillqvist  <tml@iki.fi>
10461
10462         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
10463         (or copied from gdkconfig.h.win32 on Win32, sigh).
10464
10465         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
10466
10467         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
10468
10469         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
10470
10471         * gdk/gdkconfig.h.win32: New file.
10472
10473         * gdk/win32/makefile.cygwin: Build just a static archive here.
10474
10475         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
10476         for the DLL from the static archive built above.
10477
10478         * gdk/gdk.def: Moved here from the win32 subdirectory.
10479
10480         * gdk/win32/*: Adapt for the changed private struct organisation.
10481
10482         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
10483
10484 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
10485
10486         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
10487         for wheel mice (buttons 4 and 5).
10488
10489 1999-11-18  Tor Lillqvist  <tml@iki.fi>
10490
10491         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
10492         drawables use just the pixel field in the foreground and
10493         background GdkColor of the GdkGC.
10494
10495         gdk_gc_set_{fore,back}ground() are called in the GIMP with
10496         GdkColors containing uninitialized (red,green,blue) fields, and
10497         just the pixel field filled in, and furthermore in the
10498         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
10499         It thus turns out that we really don't need to have the full
10500         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
10501         it later to have just the pixel values.
10502
10503 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10504
10505         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
10506
10507 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
10508
10509         * docs/gtkfaq.sgml: threads example from Erik Mouw.
10510         New question on GtkLabel background colors.
10511
10512         * docs/gtk_tut.sgml:
10513           - Correct the example code callback
10514             function definitions.
10515           - Update the gtkdial example code, from Frans van Schaik.
10516           - Update setselection.c to current API.
10517
10518         * examples/Makefile examples/*/*.c: Update to code
10519         listed in tutorial.
10520
10521 1999-11-10  Tor Lillqvist  <tml@iki.fi>
10522
10523         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
10524         subrange table (from the "Developing International Software for
10525         WIndows 95 and Windows NT" book) was missing the Hangul syllable
10526         block... Get the loaded font's charset correctly.
10527
10528         (Note that this, and the other *-win32.c files, still really are
10529         the old ones, the win32 subdirectory is not ready for compilation
10530         yet after the reorg.)
10531
10532 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
10533
10534         * gtk/gtkclist.c: Fix off-by-one bug in parameter
10535         check.
10536
10537 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
10538
10539         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
10540         on results of XQueryDeviceState().
10541
10542 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
10543
10544         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
10545         we need to accesss only ->children. We need an accessor
10546         for the children.
10547
10548         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
10549         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
10550         to get rid of gdkx.h include.
10551         
10552         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
10553         and random references to 'None'.
10554
10555         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
10556         Get rid of unused #include <gdk/gdkx.h>
10557
10558         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
10559         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
10560         gdkconfig.h.
10561
10562 1999-11-08  Tor Lillqvist  <tml@iki.fi>
10563
10564         * gdk/win32/gdkdraw.c
10565         * gdk/win32/gdkfont.c
10566         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
10567         following yesterday's changes. (Unrelated to Owen's reorg.)
10568
10569 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
10570
10571         * gdk/x11/gdkinput-gxi.c: Add missing include,
10572           fix GdkWindowPrivate => GdkDrawablePrivate.
10573
10574         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
10575
10576         * gdk/x11/Makefile.am (xinput_sources): Add missing
10577         backslash to fix building with --with-xinput=none
10578
10579 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
10580
10581         Move all X specific code into the x11/ directory.
10582         Aside from shuffling things around, did the following:
10583
10584        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
10585          gdk_arg_context_* - a simple argument parsing system
10586          in the style of popt.
10587
10588        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
10589          gdk/x11/gdkprivate-x11.h:
10590          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
10591          add ->klass and ->klass_data fields. The klass_data
10592          field points to an auxilliary structure that is
10593          windowing system dependent.
10594
10595        * gdk/gdkfont.c: Make most of the measurement functions
10596          simply wrappers around gdk_text_extents().
10597
10598        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
10599          _gdk_font_strlen() function that hides the weird
10600          behavior in gtk+-1.[02] where a string is interpreted
10601          differently for 8-bit and 16-bit fonts.
10602
10603        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
10604          to store common code for synthesizing double/triple
10605          press events.
10606         
10607        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
10608          Make all the function that modify an existing GC
10609          simply wrappers around gdk_gc_set_values().
10610          
10611        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
10612          for throwing out later.
10613
10614        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
10615          GdkImagePrivate and GdkColormapPrivate to have a
10616          windowing system dependent part (GdkFontPrivateX etc.)
10617          that "derives" from the system-independent part.
10618
10619        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
10620          Got rid of the included-source-files for XInput in
10621          favor of automake conditionals. (Which didn't exist
10622          when XInput support was originally added.)
10623
10624        * gdk/gdkrgb.c: Remove the visual id from the debugging
10625          statements since that is X11 specific; print out
10626          type/depth info instead.
10627          
10628
10629 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
10630
10631         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
10632         loading duplicates of hashed fonts.
10633
10634         * gdk/gdk.c (gdk_keysym_convert_case): rename
10635         gdk_XConvertCase to gdk_keysym_convert_case, allow
10636         results to be NULL in the GTK+ style.
10637
10638         * gdk/gdkcompat.h: Started compatibility header
10639         for renames.
10640
10641 1999-11-07  Tor Lillqvist  <tml@iki.fi>
10642
10643         * gdk/win32/gdkprivate.h: New font private structures, related to
10644         fontsets.
10645
10646         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
10647         gdk_font_list_free(). On X11, will just be wrappers to
10648         XListFonts() and XFreeFontNames(). On Win32, the code previously
10649         in gtkfontsel.c is now here.
10650
10651         New function gdk_font_xlfd_create(). On X11 will get the FONT
10652         property of the font (for GDK_FONT_FONTs), or call
10653         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
10654         builds a XLFD style name from the font information in the LOGFONT
10655         struct(s).
10656
10657         New function gdk_font_xlfd_free(), which correspondingly frees the
10658         string returned by gdk_font_xlfd_create().
10659
10660         Implement fontsets on Win32. Add a function that iterates over a
10661         wide char string and calls a callback function for each substring
10662         of wide chars from the same Unicode subrange (and thus probably
10663         available in the same real font).
10664
10665         Improve the XLFD emulation a bit.
10666
10667         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
10668
10669         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
10670         Beta3, WM_IME_CHAR messages don't seem to contain the composed
10671         multi-byte char as with the Active IMM on Win9x. Oh well, handle
10672         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
10673         ImmGetCompositionStringW() to get the composed Unicode chars.
10674
10675         * gdk/win32/gdkgc.c
10676         * gdk/win32/gdkdraw.c: Changes needed because of the font private
10677         struct changes.
10678
10679         * gdk/win32/gdk.def: Add the new functions.
10680
10681 1999-11-04  Tor Lillqvist  <tml@iki.fi>
10682
10683         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
10684         get the Platform SDK to get <dimm.h>.
10685
10686         * gdk/win32/gdkevents.c: More event handling fixes and
10687         simplification. Never generate motion events with is_hint true. We
10688         used to do that on bogus grounds earlier. Windows sends
10689         WM_MOUSEMOVE messages on button events even if the mouse hasn't
10690         moved, ignore these.
10691
10692         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
10693
10694         * gdk/win32/gdkglobals.c
10695         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
10696         the TrackMouseEvent function, and use it.
10697
10698         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
10699         char before calling WideCharToMultiByte in order to get a string
10700         for the window title.
10701
10702         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
10703
10704         * gdk/win32/gdk.def: Remove obsolete functions.
10705
10706         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
10707         /nodefaultlib and /defaultlib switches.
10708
10709         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
10710
10711 1999-10-31  Tor Lillqvist  <tml@iki.fi>
10712
10713         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
10714         EuroSign).
10715
10716         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
10717         same type as GdkWChar, especially on Win32.
10718
10719         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
10720
10721         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
10722         before passing to Windows GDI for drawing etc. Convert to the
10723         system default codepage before passing to Windows as window
10724         titles.
10725
10726         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
10727         support changing input locale on the fly.
10728
10729         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
10730         on-the-fly changes. Convert incoming characters from the current
10731         codepage to Unicode (and then to a UTF-8 multi-byte string) based
10732         on the current input language. Use keysym<->Unicode mapping tables
10733         and functions borrowed from xterm sources.
10734
10735         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
10736         editions of Win9x, use the ActiveX-based Active IMM (Input Method
10737         Manager) if available. IMEs and the Active IMM are available under
10738         the disguise of Chinese, Korean and Japanese support for IE and
10739         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
10740         support is present in all editions (as long as you install it).
10741
10742         Call DispatchMessage from gdk_events_queue() (and thus
10743         gdk_WindowProc()), instead of duplicating the code in
10744         gdk_WindowProc().
10745
10746         Reworked the grab handling and propagation code, factored out
10747         duplicated code snippets into separate functions. Other cleanups,
10748         too.
10749
10750         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
10751         the <dimm.h> header describing the Active IMM.
10752
10753         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
10754         just do the same as for "single" fonts.
10755
10756         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
10757         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
10758         the new keysyms from gdkkeysyms.h.
10759
10760         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
10761         fontset, so that gtkentry uses wide characters.
10762
10763         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
10764         GTk+'s system directory "gtk+", not "gtk".
10765
10766 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
10767
10768         * docs/gtkfaq.sgml: FAQ update
10769
10770 1999-10-21  Tor Lillqvist  <tml@iki.fi>
10771
10772         * gdk/win32/gdkprivate.h: Add more font private data.
10773
10774         * gdk/win32/gdkfont.c
10775         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
10776         fonts and strings. Now works much better. You still have to
10777         have a correct font selected, though. No fontset emulation yet.
10778
10779 1999-10-19  Tor Lillqvist  <tml@iki.fi>
10780
10781         * gtk/maketypes.awk: Use G_OS_WIN32.
10782
10783         * gtk/gtk.def: Add some missing entry points. Also some non-public
10784         ones, but PyGTK porter claims to need them.
10785
10786         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
10787         built-in type generation.
10788
10789 1999-10-14  Tor Lillqvist  <tml@iki.fi>
10790
10791         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
10792         GDK_FONT_FONT fonts (which is all we have for now, we don't
10793         emulate fontsets). The X11 version uses plain XDrawString in that
10794         case, too. The string passed to gdk_draw_text_wc seems to be in
10795         fact (at least, when used by gtkentry and gtktext) either in a
10796         single-byte charset, or a DBCS. Not Unicode.
10797
10798         This fixes the problem in gtkfontsel, where even if you had
10799         selected a font with a non-Latin1 charset (windows-greek, for
10800         instance), the preview still used Latin-1 glyphs.
10801
10802         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
10803         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
10804         (gdk_font_load): Recognize the demibold etc weights, even if we
10805         don't have the corresponding constants in the headers.
10806         (gdk_font_hash_insert): Use same hash mechanism as in the X11
10807         version. Should save font resources a bit, when we don't have
10808         multiple HFONTs for the same font.
10809
10810         * gdk/win32/gdkprivate.h: Add the names field as in the X11
10811         version.
10812
10813 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
10814
10815         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
10816         X values
10817
10818 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
10819
10820         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
10821         layout support (as mentioned on
10822         http://www.jcinteractive.com/gnome-ui/software/widgets/)
10823
10824 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
10825
10826         * gtk/fnmatch.c
10827         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
10828
10829 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
10830
10831         * configure.in (ALL_LINGUAS): Added Galician (gl)
10832
10833 1999-10-05  Tor Lillqvist  <tml@iki.fi>
10834
10835         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
10836
10837         * gdk/win32/gdkcompat.c: New file, actually provide an
10838         implementation for the deprecated functions. (Just temporarily.)
10839
10840         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
10841
10842         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
10843
10844         * gdk/win32/gdk.def gtk/gtk.def: Updates.
10845
10846 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
10847
10848         * configure.in: Added "uk" to ALL_LINGUAS.
10849         
10850 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
10851
10852         * configure.in: correct checking for BeOS check
10853
10854         * gdk/gdktypes.h
10855         * gtk/fnmatch.c
10856         * gtk/gtkfilesel.c
10857         * gtk/gtkitemfactory.c
10858         * gtk/gtkmain.[ch]
10859         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
10860
10861 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
10862
10863         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
10864         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
10865         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
10866         by Bulgarian). 
10867
10868 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
10869
10870         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
10871         Fix a reference to window_private->destroyed.   
10872
10873         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
10874         (ugly) setting of an internal GdkWindow member to use
10875         a _slightly_ cleaner macro.
10876
10877         * gdk/gdkprivate.h: Split GdkWindowPrivate into
10878         GdkDrawablePrivate and GdkWindowPrivate.
10879         Add extra macros for accessing GDK_DRAWABLE_ components.
10880
10881         * *.[ch]: Massive adjustments for the above, use the
10882         new macros in a lot of places.
10883
10884 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
10885
10886         * gdk/gdktypes.h: Make GdkDrawable the base type,
10887         not GdkWindow.
10888
10889 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
10890
10891         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
10892
10893 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
10896
10897 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
10898
10899         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
10900         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
10901
10902         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
10903
10904         * docs/gtk-config.1: Now autogenerated.
10905         * docs/Changes-1.4.txt: started
10906         
10907 1999-10-03  Tor Lillqvist  <tml@iki.fi>
10908
10909         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
10910         to #ifdef also here.
10911
10912         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
10913         Owen did to the X11 backend.
10914
10915         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
10916         ScrollWindowEx when blitting inside a window, it can't be correct
10917         in the general case.
10918
10919         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
10920         WM_GETMINMAXINFO is easier.
10921
10922         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
10923         depth equal to the bitspixel value, not the visual's depth.
10924
10925         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
10926         to 24 even if the bitspixel value is 32.
10927
10928         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
10929         need to check for depth==32 when bpp==32, depth will always be 24.
10930
10931 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
10932
10933         * docs/Changes-1.4.txt: Started
10934         
10935         * gtk/Makefile.am (gdk_headers): Include all the new headers.
10936
10937         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
10938         
10939         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
10940         into C file.
10941         
10942         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
10943         header to gdkinputprivate.h.
10944
10945         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
10946         unused since before 1.2.
10947
10948 1999-09-30  Tor Lillqvist  <tml@iki.fi>
10949
10950         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
10951         expand possible hex escapes in the font family (put there by
10952         logfont_to_xlfd if the font name isn't a legal XLFD font family,
10953         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
10954         On Win32, add hex escapes here, too.
10955
10956 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
10957
10958         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
10959         to #ifdef GDK_WINDOWING_X11.
10960
10961 [ Merges from gtk-1-2 ]
10962
10963 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
10964
10965         * configure.in: fixed "GNU Make" check to pass with new make version
10966         3.77.95.
10967
10968 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
10969
10970         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
10971         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
10972         AM_PATH_GTK() macros don't get confused by the -pre1.
10973
10974 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10975
10976         * configure.in (REBUILD): Change check for perl5
10977           to check explicitely for v >= 5.002. (5.001
10978           does not work with our scripts.)
10979
10980 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
10981
10982         * configure.in: evaluate $PERL for the perl version check. added
10983         --disable-rebuilds to give the user an option to completely disable
10984         any source autogeneration rules.
10985
10986 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
10987
10988         * configure.in: evaluate $ac_make when checking for GNU Make.
10989
10990 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10991
10992         * docs/Makefile.am: added generation.txt.
10993
10994         * Makefile.am: require automake 1.4, build README from README.in and
10995         INSTALL from INSTALL.in in dist-hook.
10996         
10997         * README.in:
10998         * INSTALL.in: new files to autogenerate README and INSTALL from.
10999
11000         * configure.in: figure whether we have GNU Make
11001
11002         * docs/generation.txt: minor additions/corrections.
11003
11004 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11005
11006         * docs/gtkfaq.sgml: FAQ Update
11007
11008 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11009         
11010         * configure.in: Fix autoconf warnings about cross compilation by
11011         trying to provide sane defaults for AC_TRY_RUN.
11012
11013 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
11014
11015         * ltconfig
11016         * ltmain.sh: upgrade to libtool 1.3.3
11017
11018 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
11019
11020         * INSTALL: Indicate that the --with-glib= configure
11021         time flag is unsupported.
11022
11023 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
11024
11025         * docs/generation.txt: Added a file that gives
11026         documenation about the autogeneration process for
11027         various autogenerated files.
11028         
11029 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11030
11031         * configure.in (LIBS): Look for libgmodule in the
11032         right location.
11033
11034 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
11035
11036         * docs/gtk_tut.sgml: Removed references to
11037         code examples in my directory on gtk.org as
11038         they should all be in the tutorial now.
11039
11040         * docs/gtk_tut.sgml: Added sources for dial-test
11041         and scribble-xinput programs that were previously
11042         missing.
11043
11044 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
11045
11046         * TODO: Added entry about menu keyboard navigation, removed
11047         some finished items.
11048
11049 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
11050
11051         * acinclude.m4: Standardize on func_dgettext
11052         not func_gettext, so that the checks for dgettext
11053         actually are paid attention to.
11054
11055 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
11056
11057         * configure.in (LIBS): Add $INTLLIBS into $LIBS
11058         directly, rather than repeating the checks for
11059         gettext.
11060
11061         * INSTALL: Added information about gettext and
11062         NLS support.
11063
11064         * acinclude.m4 (LIBM): Check for dgettext, not
11065         just gettext. This should hopefully fix things wrt
11066         systems with old versions of GNU gettext installed.
11067
11068 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11069
11070         * configure.in (LIBS): Look for libgmodule in the
11071         right location.
11072
11073 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11074
11075         * autogen.sh: add --enable-maintainer-mode
11076
11077         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
11078
11079 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
11080
11081         * docs/gtk-config.1.in:
11082           docs/Makefile.am:
11083           configure.in: gtk-config is now generated.
11084
11085         * docs/gtk-config.1: Removed, now generated.
11086
11087 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
11088
11089         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
11090         handle CreateNotify itself, still put out a debuging message for
11091         --gdk-debug=events. made the ReparentNotify debugging message more
11092         verbose.
11093         wrap xcoords translation for ConfigureEvents into an error trap,
11094         a destroy event may already be pending, and in that case, the
11095         actuall coordinate values are not at all critical.
11096
11097 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
11098
11099         * gdk/gdkcc.c: Stop leaking the color_hash all over
11100         the place. Simplify and improve the logic.
11101
11102 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11103
11104         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
11105         for prototypes and function implementations consistent (reported
11106         by Tomas Ogren).
11107
11108 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11109
11110         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
11111         send_event set in debugging output.
11112         (gdk_compress_exposures): default initialize the event so we don't
11113         operate on bogus values (namely send_event).
11114
11115 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11116
11117         * gdk/gdkwindow.c: When we receive an unexpected
11118         destroy notify on one of our windows, don't just
11119         warn about it, also mark our windows as destroyed.
11120
11121 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
11122
11123         * gdk/gdkfont.c (gdk_font_hash_insert): Add
11124           name => font and name => fontset hashes. The 
11125           name => fontset hash is a _big_ win since we
11126           weren't previously caching fontsets at all and loading
11127           fontsets is expensive. The name => font hash
11128           is less of a win, but it does save us from doing
11129           repeated XQueryFont calls on the same font.
11130
11131         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
11132           list so we can remove font/fontset from hash.
11133
11134 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11135
11136         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
11137           and slightly confusing test. [ XInternAtom (,,TRUE)
11138           will never return None ].
11139
11140 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
11141
11142         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
11143           gdk/gdkwindow.c (gdk_window_set_hints):
11144
11145         Don't omit setting the properties if flags == 0 -
11146         there may be an existing set of properties there
11147         already. (Very old bug. Would it be better to
11148         delete the property instead?)
11149
11150         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
11151           spelling error in comment.
11152
11153 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
11154
11155         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
11156           to avoid stomping over gdk_error_warnings.
11157
11158         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
11159           as (bits_per_pixel + 7) / 8. This gives the same
11160           result as before for multiples of 8, but actually
11161           a "reasonable" value for 1bit or 4bit displays.
11162
11163 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11164
11165         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
11166         GNU Make.
11167
11168 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11169
11170         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
11171         discarding configure events.
11172
11173 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11174
11175         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
11176         refcount is greater than zero.
11177
11178         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
11179
11180         * gdk/gdkfont.c (gdk_font_unref): Likewise.
11181
11182         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
11183
11184         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
11185
11186 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11187
11188         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
11189         that format 32 => sizeof(item) == 4. It really is
11190         sizeof(long).
11191
11192 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
11193
11194         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
11195         core dump at all on X IO errors, only core dump
11196         if --enable-debug for X errors.
11197
11198 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
11199
11200         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
11201         unknown window:" message. disabled ConfigureNotify discarding code,
11202         because it led to events being processed out of order.
11203
11204 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
11205
11206         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
11207
11208         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
11209         we export this function, supress error warnings and don't reset the
11210         error code in the first half of this function.
11211
11212         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
11213         code (instead of just -1) so gdk_error_trap_pop() reveals something
11214         actually informative about the error that happened.
11215
11216         * gdk/*.c:
11217         don't rely on gdk_error_code being -1 if an error occoured, but just
11218         gdk_error_code != 0.
11219
11220 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
11221
11222         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
11223         pointer *before* invoking the filter function, so we at least don't
11224         crash if a filter is removed that is currently executed. window filters
11225         *really* need to be made truely reentrant at some point.
11226
11227 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
11228
11229         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
11230         PropertyNotify debug messages.
11231
11232 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
11233         
11234         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
11235         
11236         * gdk/gdkim.c: Fix cut-and-paste errors for 
11237         x/y and PreeditAttributes/StatusAttributes.
11238
11239 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11240
11241         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
11242         G_MAXINT to 2^16 to alleviate overflow problems in
11243         various window managers.
11244
11245 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11246
11247         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11248         for fontsets.
11249
11250 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
11251
11252         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
11253         Initialize size_hints.x and size_hints.y because kwm
11254         brokenly pays attention to them.
11255         (Bug #1181 -  Lars Heete <hel@admin.de>)
11256
11257 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
11258
11259         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
11260         return value of gdk_list_visuals(). 
11261         (Bug #1193 - Morten Welinder <terra@diku.dk>)
11262
11263 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
11264
11265         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
11266         XSetIMValues to (void *) when comparing to NULL, to workaround
11267         the problem of some compilers barfing since older X headers don't
11268         have the prototype for it.
11269
11270 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
11271
11272         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
11273         for pseudocolor where colormap->colors was double
11274         allocated.
11275
11276         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
11277         color value in the hash table with the pixel filled
11278         in so when we do later hash table lookups, the color
11279         value is correct.
11280         
11281 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
11282
11283         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
11284         making the call
11285
11286 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
11287
11288         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
11289         pointed out by Morten Welinder <terra@diku.dk>.
11290
11291 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11292
11293         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11294           default filter from the list
11295
11296 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11297
11298         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11299           default filter from the list
11300
11301 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
11302
11303         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
11304
11305         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
11306         g_strdup_printf instead of calcing the length separately
11307
11308 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
11309
11310         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
11311         that we don't do in many other places. (Fixing duplicate 
11312         #include of config.h)
11313
11314         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
11315         Otherwise, #ifndef XINPUT_NONE check in the latter
11316         doesn't work. (Bug #546)
11317
11318 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
11319
11320         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
11321         "None" case insensitive.
11322
11323 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11324
11325         * gdk/gdkselection.c: 
11326         Add error traps so if the other end of the connection
11327         dies, we survive.
11328
11329 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11330
11331         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
11332         dest_xid field into two fields - one for the window
11333         to send in messages, one to indicate the last looked
11334         up window for caching purposes. This is needed, so
11335         that Leave messages get the correct window.
11336
11337 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
11338
11339         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
11340         Fix warning created by people mucking around
11341         with the gsource API.
11342
11343         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
11344         Change mapping between GIOCondition and GdkInputCondition
11345         to match the way the Linux kernel does it. This should
11346         fix problems where closed pipes were no longer signalling
11347         GDK_INPUT_READ on systems with a native poll().
11348
11349 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
11350
11351         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
11352         explicitly for the string "None" - it is in the XPM
11353         spec and some servers treat unknown colors in odd ways
11354         (like asking the user!)
11355
11356 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11357
11358         * gdk/gdkevents.c: made "->" into a "." of previous change so
11359         it compiles
11360
11361 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
11362
11363         * gdk/gdkevents.c (gdk_compress_exposures): Set the
11364         window field of the event structure before calling
11365         user filters.
11366
11367 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
11368
11369         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
11370         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
11371
11372 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
11373
11374         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
11375         intermediate text property - prevents major memory
11376         leak when gdk_use_mb.
11377         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
11378
11379 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11380
11381         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11382         gtk-a-higuti-990322-[0-3]
11383
11384         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
11385         sizeof(wchar_t) != sizeof (GdkWChar)
11386
11387         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11388         that was causing -DX_LOCALE not to work.
11389
11390         * gtk/gtkrc.c (gtk_rc_init):
11391         X_LOCALE will never have LC_MESSAGES defined
11392
11393         * gdk/gdk.c (gdk_init_check):
11394         Remove --xim-preedit and --xim-status from argv properly.
11395
11396         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
11397         that the client window is present on the X server
11398         before we pass it to the input method.
11399
11400 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
11401
11402         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
11403         if --display is specified on the command line, than
11404         the drag window will not be created on that display.
11405         
11406 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
11407
11408         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
11409         lookups with only_if_exists == TRUE were inserting
11410         bogus values into the atom cache.
11411
11412 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11413
11414         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
11415         then reset it to NULL.
11416
11417         * gdk/gdkcolor.c:
11418         (gdk_colors_free): 
11419         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
11420         key for g_hash_table_remove() in both functions, this prevents us
11421         from accessing possibly uninitialized portions of a GdkColor structure
11422         where we are only interested in its pixel value.
11423
11424 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
11425
11426         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11427         font hash table, if we have a GdkFontPrivate entry for this font
11428         already, simply increment its reference count, provided by Olaf Dietsche
11429         <olaf.dietsche+list.gtk@netcologne.de>.
11430
11431 1999-09-21  Tor Lillqvist  <tml@iki.fi>
11432
11433         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
11434         just to be sure.
11435
11436         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
11437         unused variables, leftovers from the X11 version.
11438
11439         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
11440
11441         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
11442         downcase fields on X11.
11443
11444 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
11445         
11446         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
11447         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
11448
11449 1999-09-17  Tor Lillqvist  <tml@iki.fi>
11450
11451         * gdk/win32/gdk.def: Add gdk_threads_mutex.
11452
11453         * gtk/makefile.msc: Correct path to libintl.
11454
11455         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
11456         use of gint vs. int, and gint vs. gboolean in headers and
11457         definitions. Use GtkType for the *_get_type functions. Note that
11458         these changes preserve binary compatibility.
11459
11460         * gdk/gdk.c
11461         * gdk/win32/gdk.c
11462         * gdk/gdk.h: Fix inconsistencies: gint vs int.
11463
11464         * gtk/gtkmain.c
11465         * gtk/gtkclist.c
11466         * gtk/gtkmenufactory.c
11467         * gtk/gtknotebook.c
11468         * gtk/gtkwidget.c: Fix inconsistencies, also gint
11469         vs. gboolean.
11470
11471         * gtk/gtkcolorsel.[ch]
11472         * gtk/gtkcombo.[ch]
11473         * gtk/gtkdrawingarea.[ch]
11474         * gtk/gtkgamma.[ch]
11475         * gtk/gtkhandlebox.[ch]
11476         * gtk/gtkhpaned.[ch]
11477         * gtk/gtkhruler.[ch]
11478         * gtk/gtkplug.[ch]
11479         * gtk/gtkpreview.[ch]
11480         * gtk/gtkruler.[ch]
11481         * gtk/gtksocket.[ch]
11482         * gtk/gtkstatusbar.[ch]
11483         * gtk/gtktoolbar.[ch]
11484         * gtk/gtkvbbox.[ch]
11485         * gtk/gtkvpaned.[ch]
11486         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
11487         functions.
11488
11489         * gtk/gtkgamma.h: Fix bug, missing () in call of
11490         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
11491
11492 1999-09-14  Tor Lillqvist  <tml@iki.fi>
11493
11494         * gdk/gdkcolor.c (gdk_colormap_new)
11495         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
11496         colormap->colors was allocated twice.
11497
11498         * gdk/win32/gdk.c: Remove some unused stuff.
11499
11500         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
11501         colormap.
11502
11503         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
11504         * gtk/gtklabel.h (gtk_label_get_type)
11505         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
11506         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
11507         in a couple of places, not guint.
11508
11509 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11510
11511         * configure.in,po/et.po: added Estonian language file
11512
11513 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11514
11515         * configure.in,po/da.po: added Danish file
11516
11517 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
11518
11519         * docs/gtkfaq.sgml: Minor FAQ Update
11520
11521 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
11522
11523         * docs/gtkfaq.sgml: FAQ update
11524
11525 1999-08-27  Tor Lillqvist  <tml@iki.fi>
11526
11527         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
11528         way to get window contents continually refreshed while resizing. I
11529         didn't like the effects myself, so it's not on by default.
11530
11531         * gdk/win32/gdkprivate.h: New flag variable
11532         gdk_event_func_from_window_proc, FALSE by default.
11533
11534         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
11535         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
11536         are passed --gdk-event-func-from-window-proc.
11537
11538         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
11539         and we have am event_func, call it instead of enqueing the event.
11540
11541 1999-08-23  Tor Lillqvist  <tml@iki.fi>
11542
11543         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
11544         Kelley: Set expose_count in GdkEventExposes correctly.
11545
11546         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
11547         MULTIPLE_WINDOW_CLASSES).
11548
11549         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
11550         for bug in NT, apparently NT *does* draw the end pixel, too, in
11551         LineTo with a one-pixel pen, so we don't have to do it ourselves.
11552
11553 1999-08-21  Tor Lillqvist  <tml@iki.fi>
11554
11555         Improvements by Hans Breuer: 
11556
11557         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
11558
11559         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
11560         CS_?REDRAW flags as they cause lots of (late) redraws when "show
11561         window contents while dragging" is turned on. Allocate at least
11562         one unique class for every GdkWindowType. If support for single
11563         window-specific icons is ever needed (eg. Dialog specific), every
11564         such window should get its own class.
11565
11566 1999-08-19  Tor Lillqvist  <tml@iki.fi>
11567
11568         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
11569         error that caused crashes.
11570
11571 1999-08-17  Tor Lillqvist  <tml@iki.fi>
11572
11573         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
11574         window, use ScrollWindowEx, and call UpdateWindow. This prevents
11575         bugs when for instance part of the window was outside the
11576         display. Thanks to Philippe Colantoni for finding and fixing this.
11577
11578 1999-08-16  Tor Lillqvist  <tml@iki.fi>
11579
11580         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
11581         endpoint calculations which were totally wrong. (A little RTFMing
11582         helps a lot ;-)
11583
11584         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
11585         from a separate directory, not from gettext, because of licensing
11586         issues (we want to use the LGPL version).
11587
11588         * README.win32: Mention the intl from glibc vs from gettext issue.
11589
11590 1999-08-13  Tor Lillqvist  <tml@iki.fi>
11591
11592         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
11593         in the key event handling: Now AltGr chars work again. Also,
11594         now Alt-digits are passed up as well as Control-digits.
11595         Pass keypad plus and minus as normal plus and minus.
11596
11597 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11598
11599         * docs/gtkfaq.sgml: FAQ Update
11600
11601 1999-07-25  Tor Lillqvist  <tml@iki.fi>
11602
11603         * README.win32
11604         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
11605         the Wintab SDK.
11606
11607         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
11608         OK, but getting closer. Guard against bogus tilt data from Wacom
11609         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
11610         enable easier building without Wintab.
11611
11612         * gdk/win32/gdkinput.h
11613         * gdk/win32/gdkevents.c 
11614         * gdk/win32/gdkwindow.c: Minor changes related related to above.
11615         
11616         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
11617         code. As we have just one visual on Win32, no sense to have it in a
11618         table, and no need for the hash table.
11619
11620         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
11621         better on white background.
11622
11623 1999-07-21  Tor Lillqvist  <tml@iki.fi>
11624
11625         * README.win32: Update gcc build instructions. Mention gettext is
11626         GPL.
11627
11628         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
11629         supported cursor size with GetSystemMetrics.
11630
11631         * gdk/win32/gdkfont.c
11632         * gtk/gtkfontsel.c: Guard against some font weight and charset
11633         symbols being undefined (in mingw32 headers).
11634
11635         * gdk/win32/makefile.cygwin
11636         * gtk/makefile.cygwin
11637         * gtk/gtkthemes.c: No longer need to have differently named
11638         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
11639
11640 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
11641
11642         * docs/gtkfaq.sgml: Long awaited FAQ update.
11643
11644 1999-07-15  Tor Lillqvist  <tml@iki.fi>
11645
11646         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
11647         it. Obscure bit manipulation needed.
11648
11649         * gdk/win32/gdkevents.c: Logging.
11650         
11651         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
11652         style (file name include compiler name) for theme engines.
11653
11654 1999-07-13  Tor Lillqvist  <tml@iki.fi>
11655
11656         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
11657
11658         * gdk/win32/gdkevents.c: Fix long-standing bug in key
11659         events. The key.string wasn't zero-terminated, still we strdup'ed
11660         it in gdk_event_copy(). Synthesize crossing events for button
11661         events before possible propagation.
11662
11663         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
11664
11665         * gdk/win32/makefile.cygwin
11666         * gtk/makefile.cygwin: Use new DLL naming style for the
11667         GCC-compiled ones.
11668
11669         * gdk/win32/makefile.msc
11670         * gtk/makefile.msc: Cosmetics mostly.
11671
11672         * gtk/gtk.def: Add missing entry points.
11673
11674         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
11675
11676 1999-07-09  Tor Lillqvist  <tml@iki.fi>
11677
11678         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
11679         or height is zero. Don't print a warning if Pie or Arc fails, they
11680         always fail (?) for very narrow ellipses.
11681
11682         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
11683         the part or the destination window corresponding to source area
11684         outside of the source drawable's boundary.
11685
11686         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
11687         anything if less than two points.
11688
11689         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
11690         return NULL. Gtk cut-and-paste inside a single program works
11691         better this way. (It always gets the clipboard contents from
11692         Windows, not from its own copy, which is cleared anyway. I can't
11693         say I fully understand what happens... Emulating the X selection
11694         and property stuff is a bit of a mess.)
11695
11696         * gdk/win32/gdkevents.c
11697         * gdk/win32/gdkproperty.c: A bit more verbose logging.
11698
11699         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
11700         that never got deleted). Revamp gdk_region_shrink.
11701
11702         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
11703         after use.
11704
11705         * gtk/gtk.def: Add some missing entry points.
11706
11707         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
11708         component.
11709
11710 1999-07-04  Tor Lillqvist  <tml@iki.fi>
11711
11712         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
11713         Control-digits specially.
11714
11715 1999-07-03  Tor Lillqvist  <tml@iki.fi>
11716
11717         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
11718
11719 1999-06-28  Tor Lillqvist  <tml@iki.fi>
11720
11721         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
11722         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
11723         finding this.)
11724
11725 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
11726
11727         * gtk+.spec.in: Corrected some typos in files section.
11728         
11729 1999-06-15  Tor Lillqvist  <tml@iki.fi>
11730
11731         * README.win32: Mention using GNU gettext.
11732         * config.h.win32: Enable NLS stuff.
11733         * gtk/makefile.msc: Use GNU gettext.
11734         * gdk/win32/gdkdnd.c: Minor header reorg.
11735         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
11736         cosmetics.
11737         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
11738         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
11739
11740 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
11741
11742         * acinclude.m4
11743         * config.guess
11744         * config.status
11745         * ltconfig
11746         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
11747
11748 1999-05-30  Tor Lillqvist  <tml@iki.fi>
11749
11750         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
11751         SafeAdjustWindowRectEx. Don't override all calls to
11752         AdjustWindowRectEx by it, but use it only in two places: When
11753         creating a new top-level window and when moving a top-level
11754         window.
11755
11756         Use screen coordinate rectangle, not client rectangle, in
11757         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
11758         when we try to place a window so that the decoration (mainly,
11759         title bar) isn't visible.
11760
11761         These changes fix the bug that showed up for instance as the
11762         GIMP's saved top-level windows moving right and down (by an amount
11763         equal to the window decoration) for each session. This bug showed
11764         up also in testgtk's "Saved Position".
11765
11766         gdk_window_resize also redone a bit.
11767
11768 1999-05-25  Tor Lillqvist  <tml@iki.fi>
11769
11770         * gtk/testgtkrc: Add (commented out) Windows-style theme
11771         include line.
11772
11773         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
11774
11775 1999-05-18  Tor Lillqvist  <tml@iki.fi>
11776
11777         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
11778         gdkx.h to a gdk subdirectory, so that applications can include
11779         these with <gdk/*.h> without trouble.
11780
11781         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
11782         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
11783         have their bitmap destroyed.
11784
11785         * gdk/win32/gdk.def: Add gdk_root_parent.
11786
11787 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
11788
11789         * configure.in
11790           gtk-config.in
11791           ltconfig
11792           ltmain.sh     
11793           gtk/Makefile.am: changes to compile nicely (with xlib) 
11794           on BeOS
11795
11796 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
11797
11798         * acinclude.m4
11799         * config.guess
11800         * config.sub
11801         * ltconfig
11802         * ltmain.sh: upgrade to libtool 1.3
11803
11804 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
11805
11806         * gtk/gtkclist.c:
11807         * gtk/gtkctree.c: merges from gtk-1-2
11808
11809 1999-04-25  Tor Lillqvist  <tml@iki.fi>
11810
11811         Support added for building using a GNU toolchain on Win32,
11812         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
11813
11814         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
11815         * config.h.win32: Changes for gcc.
11816         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
11817         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
11818         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
11819         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
11820         Protect shl stuff unavaiilable with mingw32 headers.
11821         * gdk/win32/gdkevents.c: Fix typo.
11822         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
11823         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
11824         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
11825         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
11826         the mingw32 headers.
11827         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
11828         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
11829         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
11830         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
11831         Test for NATIVE_WIN32, not _MSC_VER.
11832         * gtk/gtkmain.c: No use warning about developer version on Win32,
11833         there aren't any non-developer versions anyhow.
11834         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
11835         * gtk/makefile.msc: Use pthread from another directory. Minor other
11836         changes. 
11837
11838 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11839
11840         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11841           default filter from the list
11842
11843 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
11844
11845         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
11846          when gtk_widget_grab_default() is called for a widget that
11847          is not within a GtkWindow.
11848
11849 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
11850
11851         * docs/gtk_tut.sgml, examples/clist.c: use a
11852           scrolled window in the clist example. Minor
11853           tutorial fixes.
11854
11855 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
11856
11857         * docs/gtk_tut.sgml: Style check from David King
11858           <dking@youvegotmail.net>
11859
11860 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
11861
11862         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
11863         compile with unknown value of GDK_WINDOWING
11864
11865 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
11866
11867         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
11868         after the rule is fired.
11869         (install-exec-local): Install gdkconfig.h only if the contents are
11870         different from the currently installed gdkconfig.h.
11871
11872 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
11873
11874         * gdk/Makefile.am (configexecincludedir): Rename from 
11875         configincludedir so that gdkconfig.h will be installed 
11876         as part of `make install-exec'. 
11877
11878 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
11879
11880         * acinclude.m4
11881         * config.guess
11882         * config.sub
11883         * ltconfig
11884         * ltmain.sh: upgrade to libtool 1.2f
11885
11886         * autogen.sh: libtool is not required to autogen gtk+
11887
11888         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
11889         needed)
11890
11891 1999-03-18  Tor Lillqvist  <tml@iki.fi>
11892
11893         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
11894         declaring gdk variables exported/imported from the DLL. New image
11895         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
11896         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
11897         GDK_DRAG_PROTO_OLE2.
11898
11899         * gdk/gdk.h: Merge in Win32 version: Two new functions,
11900         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
11901         declared only for the Win32 version, but could be in the X11
11902         version as well. (Needed for a Xlib-less gdk_imlib.)
11903         gdk_color_hash should have only one parameter. Declare
11904         gdk_threads_mutex with GDKVAR.
11905         
11906         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
11907         just one parameter.
11908
11909         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
11910         per pixel, not bits.
11911
11912         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
11913         Fetch bpp (which means bits-per-pixel here) from another place on
11914         Win32. Accept also depth==32 (which we might get on Win32) with
11915         bpp==32.
11916
11917         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
11918         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
11919         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
11920         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
11921         in the backend-dependent directory, not in the common gdk
11922         directory.
11923
11924         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
11925         headers.
11926
11927 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
11928
11929         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
11930         want to use the Gtk+ devel version (which is true, and yes - even i am
11931         currently working with the 1.2.x branch). so everyone reading this, you
11932         probably want to issue
11933         cvs checkout -r glib-1-2 glib
11934         and
11935         cvs checkout -r gtk-1-2 gtk+
11936         as your next two comands.
11937
11938 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
11939
11940         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
11941         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
11942
11943         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
11944         file. strongly deprecated the GTK_HAVE_* macros, we provide
11945         GTK_CHECK_VERSION() for people that need to check for certain
11946         Gtk+ versions.
11947
11948         * gtk/gtkcompat.h: removed this from CVS.
11949         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
11950         idea right from the start, it just didn't seem like that back then.
11951
11952 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
11953
11954         * merges from gtk-1-2:
11955
11956 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
11957
11958         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
11959         item factory class has been created.
11960         (gtk_item_factory_parse_rc): likewise.
11961
11962         * gtk/gtkmenu.c:
11963         keep proper references for old_active_menu_item.
11964         (gtk_menu_reparent): unset the usize of the new parent,
11965         so the menu can sanely be size requested and we don't get nasty screen
11966         artefacts upon next reparentation.
11967         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
11968         enter notify. only synthesize enter notifies if the pointer really is
11969         inside the event window.
11970         (gtk_menu_popdown): use gtk_menu_shell_deselect().
11971         (gtk_menu_popup): move the background setting stuff into
11972         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
11973
11974         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
11975         gtk_menu_shell_select_item() to select the new item.
11976         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
11977         do the right thing for deselection as well.
11978
11979 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
11980
11981         * gtk/gtkwidget.[hc]:
11982         (gtk_widget_accelerators_locked): return whether a widget's accelerators
11983         are locked.
11984
11985         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
11986         existing accelerators if the widget's accelerators are locked.
11987
11988 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
11989
11990         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
11991
11992         * gtk/gtkmenu.c: truely forward key press and key release events to
11993         the menu widget from the toplevel or tearoff window. we can't simply
11994         connect to that, we need to stop further processing of the events as
11995         well.
11996
11997 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
11998
11999         * gtk/gtkmenu.c:
12000         (gtk_menu_key_press): pass event->keyval, event->state to
12001         gtk_accelerator_valid, instead of event->keyval twice.
12002         refuse to install single letter accelerators for menus that use
12003         single letter shortcuts.
12004
12005         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
12006         gtk_menu_ensure_uline_accel_group().
12007
12008         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
12009         which will always return an uline accel group, made
12010         gtk_menu_get_uline_accel_group() return NULL if the group isn't
12011         yet created.
12012
12013 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
12014
12015         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
12016
12017         * gtk/gtkclist.c (gtk_clist_column_title_passive):
12018         Leave button sensitive, trap  button_press, button_release,
12019         motion_notify, enter_notify and leave_notify events instead.
12020         (gtk_clist_column_title_active): disconnect event handler.
12021         (gtk_clist_drag_data_get): fixed memory leak. Reported by
12022         Guillaume Laurent <glaurent@worldnet.fr>
12023
12024 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
12025
12026         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
12027         width/height mixups.
12028
12029         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
12030         if needed.
12031
12032 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
12033
12034         * gtk/testgtk.c (create_item_factory): unref the item factory after
12035         window's destruction.
12036
12037         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
12038         count on the menu shell around the menu item's activation, since the
12039         signal emission may cause menu shell destruction.
12040
12041         * gtk/gtkitemfactory.c:
12042         the previous code leaked one accel group per menu. we use
12043         gtk_menu_get_uline_accel_group() now to fix that, and with that
12044         also create the underline accelerator group of the menus only if
12045         required (i.e. an underline accelerator has been specified).
12046         (gtk_item_factory_construct):
12047         (gtk_item_factory_create_item): removed code that would create an
12048         extra accel group for the menu (and leak references).
12049         (gtk_item_factory_create_item): adapted the underline accelerator
12050         installation code to properly feature gtk_menu_get_uline_accel_group().
12051
12052         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
12053         menu->accel_group, this may return NULL if the accelerator group
12054         hasn't been set yet.
12055         added gtk_menu_get_uline_accel_group() to retrive the underline
12056         accelerator group of the menu, this will be created on demand
12057         and proper care is taken about its reference count.
12058
12059         * gtk/gtkitemfactory.h:
12060         * gtk/gtkitemfactory.c:
12061         dumped the approach of keeping a widgets by action list on the
12062         factory since the factory<->widget destroy negotiation didn't work
12063         and would be hard to get going at all. instead we keep a list of
12064         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
12065         persistant throughout a program's life time).
12066         also, i removed the static const gchar *key_* variables, and made
12067         them inline strings (they weren't actually used anyways).
12068         (gtk_item_factory_add_item): update ifactory->items.
12069         (gtk_item_factory_destroy): destroy ifactory->items (and remove
12070         the item factory pointer from the remaining ifactory widgets).
12071         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
12072         list to find the widget.
12073         (gtk_item_factory_get_item): new function that works around
12074         gtk_item_factory_get_widget() limitations, this function will only
12075         return menu items, even for <Branch> entries.
12076
12077 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12078
12079         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12080         font hash table, if we have a GdkFontPrivate entry for this font
12081         already, simply increment its reference count, provided by Olaf Dietsche
12082         <olaf.dietsche+list.gtk@netcologne.de>.
12083
12084         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12085         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12086
12087 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
12088
12089         * gtk/gtkcontainer.c:
12090         (gtk_container_add_with_args):
12091         (gtk_container_addv):
12092         (gtk_container_add): before adding a child to a conatiner, make sure
12093         it is (default) constructed, this is neccessary because under certain
12094         circumstances the child will get relized and mapped immediatedly, in
12095         which case it has to be constructed already.
12096
12097 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
12098
12099         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
12100         values > 1 as TRUE also.
12101
12102 1999-03-16  Tor Lillqvist  <tml@iki.fi>
12103
12104         * README.win32: New file.
12105                 
12106         * configure.in: Check for lstat.
12107
12108         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
12109         completeness.
12110
12111         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
12112
12113         * gtk/gtk.def: Removed CRs.
12114
12115         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
12116         ..\gdk\win32).
12117
12118         * gdk/win32/makefile.msc: Correct upwards relative paths.
12119         
12120 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
12121
12122         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
12123           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
12124           it was connecting a void function to expose_event and the int
12125           returning function to the draw signal
12126
12127 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
12128
12129         * configure.in:
12130         Use correct path to libgmodule.la when ref'ing uninstalled copy
12131         of glib.  (Already in stable branch, Bug #417)
12132
12133 1999-03-15  Tor Lillqvist  <tml@iki.fi>
12134
12135         Win32 merge and general portability stuff:
12136                 
12137         * acconfig.h,configure.in: Check for <sys/time.h>.
12138
12139         * gdk/win32: New directory (actually, been there for a while).
12140         
12141         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
12142         NATIVE_WIN32, and use these. Always case fold on Win32. No
12143         backslashed escapes on native Win32.
12144
12145         * gtk/{gtk.def,makefile.msc}: New files.
12146
12147         * gtk/Makefile.am: Add above new files.
12148         
12149         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
12150         instead of <strings.h>.
12151
12152         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
12153         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
12154         <unistd.h> appropriately.
12155
12156         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
12157         Use ABS() (from <glib.h>) instead of abs().
12158         
12159         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
12160         of gtk (and thus glib) headers, so that WIN32 will be
12161         defined. With MS C, include <direct.h> for mkdir prototype.
12162
12163         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
12164         some casts, needed by MS C.
12165
12166         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
12167         implemented).
12168
12169         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
12170         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
12171         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
12172
12173         * gtk/gtkmain.h: Mark variables for export/import on Win32.
12174                 
12175         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
12176         the event is not a hint, or its window is not the slider. Needed
12177         on Win32, at least.
12178
12179         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
12180         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
12181         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
12182         a subdirectory of the Windows directory as gtk system
12183         configuration directory.
12184
12185         * gtk/gtkselection.c: No chunks on Win32.
12186
12187         * gtk/gtksocket.c: Not implemented on Win32.
12188
12189         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
12190
12191         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
12192
12193         * gtk/maketypes.awk: Declare variables with a macro that expands to
12194         necessary export/import magic in the case of Win32.
12195                 
12196         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
12197
12198 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
12199
12200         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
12201         since those were meant only for gdki18n.h.  
12202         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
12203         for widechar tests.
12204         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
12205
12206 1999-03-13  Tor Lillqvist  <tml@iki.fi>
12207
12208         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
12209         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
12210
12211         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
12212         installed) to CFLAGS.
12213
12214         * gdk/Makefile.am: Add rules for gdkconfig.h.
12215
12216         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
12217         APIs.
12218
12219         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
12220         gdkx.h anyway when compiling for X11.
12221         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
12222         general): Merge in Win32 version.
12223         
12224         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
12225         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
12226         expansion (if we don't have HAVE_PWD_H), allow for drive
12227         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
12228         included code from Craig Setera's port to Win32 (the one that uses
12229         X11, and the cygwin dll), even if it probably will be abandoned.
12230
12231         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
12232         the user entered one herself.  This way one can complete *.h and
12233         don't get matches on any .help files, for instance.
12234         
12235 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12236
12237         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12238         font hash table, if we have a GdkFontPrivate entry for this font
12239         already, simply increment its reference count, provided by Olaf Dietsche
12240         <olaf.dietsche+list.gtk@netcologne.de>.
12241
12242         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12243         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12244
12245 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12246
12247         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
12248         the number of calls to gdk_draw_point() (and thus to X) by
12249         clipping the points by hand.
12250
12251         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
12252         the clip parameter.
12253         (gtk_handle_box_paint): Only paint the handle if the expose area
12254         intersects it.
12255
12256 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
12257
12258         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
12259
12260 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
12261
12262         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
12263         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
12264
12265 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
12266
12267         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
12268          textmode (O_TEXT) for OS/2 version.
12269
12270 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
12271
12272         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
12273         GtkSpinButton, "input" and "output", to make the output more flexible.
12274         The user has to provide a mapping between adjustment->value and the
12275         output string (and vice versa, if the spin button is editable). 
12276         See testgtk for examples.
12277
12278 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
12279
12280         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
12281         new one.
12282         
12283         * configure.in: set gtk+ version to 1.3.0.