]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
Patch from John Margaglione to convert to new property API. Also, change
[~andy/gtk] / ChangeLog.pre-2-6
1 2001-03-12  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4         to convert to new property API. Also, change default_width and
5         default_height get_property to return 0 as the flag value for
6         "unset"; -1 is not a valid value for these fields.
7
8 2001-03-12  Havoc Pennington  <hp@redhat.com>
9
10         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
11         enum with registration for icon sizes, instead of strings.
12
13         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
14         gtkwidget.c: Fix to reflect GtkIconSize
15         
16 2001-03-12  Alexander Larsson  <alexl@redhat.com>
17
18         Make GtkFB compile and link.
19         
20         * gdk/linux-fb/gdkdrawable-fb2.c:
21         window->mapped to GDK_WINDOW_IS_MAPPED(). 
22         
23         * gdk/linux-fb/gdkwindow-fb.c:
24         window->mapped to GDK_WINDOW_IS_MAPPED(). 
25         Added gdk_window_shape_combine_region.
26         Added assorted placeholders for unimplemented new GdkWindow API calls.
27
28 2001-03-12  Alexander Larsson  <alexl@redhat.com>
29
30         * gtk/gtkfilesel.c:
31         Add more test when converting filenames from/to utf-8.
32         Don't allow entering text in the filename entry which isn't allowed in
33         a filename. Just beep instead.
34
35 2001-03-12  Alexander Larsson  <alexl@redhat.com>
36
37         * gtk/gtkclist.c:
38         Scroll using gdk_window_scroll(). Don't wait for exposes.
39         Move the column headers in an order that makes them flash less.
40
41 2001-03-10  Hans Breuer  <hans@breuer.org>
42
43         * gdk/gdk.def : updated
44
45         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
46         to offseting the clip_mask at the right place
47
48         * gdk/win32/gdkwindow-win32.c : don't create background brushes
49         for all the gdkClasses, especially not for the input_only case.
50         Otherwise flickering wont be avoidable, because we don't get
51         WM_ERASEBKGND message for these windows.
52
53         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
54         and fixed massive redraw problems apparently triggered by Alexanders 
55         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
56         but it seems to work quite well :-)
57
58         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
59         prototype
60
61 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
62
63         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
64         (gtk_list_store_set_cell): Fix a stupid typo.
65
66 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
67
68         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
69         select_all not work if you're in SINGLE mode (it doesn't make that
70         much sense, anyway.)
71
72         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
73         handle types more sanely.
74         (_gtk_tree_data_list_value_to_node): handle types more sanely.
75         (_gtk_tree_data_list_node_copy): handle types more sanely.
76
77         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
78         GValue better. Converts the type as well.
79
80         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
81         GValue better. Converts the type as well.
82
83 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
84
85         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
86         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
87         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
88         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
89
90         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
91         gdk_im/gdk_ic.
92
93 2001-03-09  Hans Breuer  <hans@breuer.org>
94
95         * gdk/gdk.def : updated
96
97         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
98         for their palette
99
100         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
101         removing
102
103         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
104         removing and implemented Havoc's GdkWindow state functions; 
105         stick/unstick only as no-op, cause I don't know how to emulate 
106         on win32 ...
107
108         * gtk/gtk.def : updated
109
110         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
111
112         * gtk/gtktypeutils.c : #include <string.h>
113
114         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
115
116 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
117
118         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
119         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
120         not a boxed.
121
122 2001-03-09  Alexander Larsson  <alexl@redhat.com>
123
124         * docs/Changes-2.0.txt:
125         Document expose event->region change and that gtk_widget_event
126         doesn't allow passing expose events.
127
128         * gdk/gdkevents.h:
129         Add region to expose event.
130         
131         * gdk/gdkevents.c:
132         Handle event->region in gdk_event_copy() and gdk_event_free().
133
134         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
135         Generate expose_event->region when creating expose events.
136
137         * gdk/x11/gdkevents-x11.c:
138         Generate expose events with regions when translating X events.
139
140         * gtk/gtkcontainer.[ch]:
141         Default expose handler that propagates expose events to NO_WINDOW
142         children. New function gtk_container_propagate_expose()
143
144         * gtk/gtkwidget.[ch]:
145         Moved gtk_widget_event implementation to gtk_widget_event_internal.
146         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
147         expose events. New function gtk_widget_send_expose() to send expose
148         events. New function gtk_widget_region_intersect() to calculate
149         window/region intersections.
150         
151         * gtk/gtkmain.c (gtk_main_do_event):
152         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
153         Use gtk_widget_send_expose() to send expose events.
154         
155         * gtk/gtkbin.c:
156         * gtk/gtkbox.c:
157         * gtk/gtkfixed.c:
158         * gtk/gtkimagemenuitem.c:
159         * gtk/gtklist.c:
160         * gtk/gtkpacker.c:
161         * gtk/gtktable.c:
162         * gtk/gtktree.c:
163         Remove expose handler, using the default container implementation
164         instead.
165         
166         * gtk/gtkbutton.c:
167         * gtk/gtkcheckbutton.c:
168         * gtk/gtkeventbox.c:
169         * gtk/gtkfixed.c:
170         * gtk/gtkhandlebox.c:
171         * gtk/gtklayout.c:
172         * gtk/gtklistitem.c:
173         * gtk/gtkmenu.c:
174         * gtk/gtkmenubar.c:
175         * gtk/gtkmenuitem.c:
176         * gtk/gtknotebook.c:
177         * gtk/gtkoptionmenu.c:
178         * gtk/gtkpaned.c:
179         * gtk/gtkscrolledwindow.c:
180         * gtk/gtktogglebutton.c:
181         * gtk/gtktoolbar.c:
182         * gtk/gtktreeitem.c:
183         * gtk/gtkviewport.c:
184         Chain expose handler to parent class handler. Use
185         gtk_container_propagate_expose() to propagate exposes.
186
187         * gtk/gtkclist.c (check_exposures):
188         * gtk/gtktext.c (process_exposes):
189         Use gtk_widget_send_expose instead of gtk_widget_event.
190
191 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
192
193         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
194
195 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
196
197         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
198         unref the nodes.   Fixes bug #50058.
199
200         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
201         "::ref_iter" to "::ref_node".
202         (gtk_tree_model_unref_node): change "::unref_iter" to
203         "::unref_node". Fixes bug #50064.
204
205 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
206
207         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
208         support for invisible cells.
209          (gtk_tree_view_bin_expose): ditto
210
211 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
212
213         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
214         on gobjects.
215
216         * tests/testtreefocus.c (main): New test file.
217
218         * tests/testtreeview.c: update to latest glib changes.
219
220         * tests/testtreecolumns.c: update to latest glib changes.
221
222 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
223
224         * gtk/testgtk.c: re-enabled event watcher emission hooks.
225
226 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
227
228         * *.c: added accumulator data argument to g_signal_newc()
229         functions.
230
231         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
232         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
233         * gtk/treestoretest.c (make_window):
234         s/g_signal_connect/g_signal_connectc/.
235
236         * gtk/gtktextbuffer.c: completed signal arg fixups,
237         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
238
239 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
240
241         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
242         G_CONST_RETURN.
243
244         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
245         ::hierarchy-changed signal when a widget changes
246         from anchored to unanchored or vice versa.
247         (anchored means 
248          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
249         Use a private flag to keep track of this efficiently.
250
251 2001-03-07  Havoc Pennington  <hp@redhat.com>
252
253         * gtk/testgtk.c (create_spins): uglify so that size request gets
254         tested.
255
256         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
257         request on values for upper/lower, completes #6152
258
259 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
260
261         * Makefile.am: Remove gtk-config-2.0 again.
262         (Grrrr, pkg-config. And stops make loops.)
263
264 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
265
266         * gtk/gtksignal.[hc]: removed old emission hook API.
267         
268         * docs/Changes-2.0.txt: fixed sections.
269         
270         * gtk/gtktextbuffer.c: signal arg fixups.
271
272 2001-03-07  Havoc Pennington  <hp@redhat.com>
273
274         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
275
276         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
277         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
278         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
279         validation and the redraw which is higher priority than the
280         validation.
281
282 2001-03-07  Havoc Pennington  <hp@redhat.com>
283
284         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
285         (gtk_entry_set_property): remove trailer
286
287         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
288         (gtk_entry_get_width_chars): new functions, to set size request to 
289         a given number of characters
290
291         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
292
293         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
294         (gtk_dialog_get_has_separator): new function
295         (run_delete_handler): fix to not emit "response" signal
296         because we already did in the delete event handler installed
297         at dialog creation time.
298         
299         * gtk/gtkdialog.h: add a has_separator property,
300         add GTK_DIALOG_NO_SEPARATOR flag
301
302 2001-03-07  Havoc Pennington  <hp@redhat.com>
303
304         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
305         off decorations for a window.
306
307         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
308         changes
309
310         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
311         to get location of PangoLayout inside the label, closes #51198
312
313         * gtk/testgtk.c (create_bbox): fix up button box usage
314
315         * gtk/testcalendar.c (create_calendar): fix up button box usage
316
317         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
318
319         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
320
321         * gtk/gtkhbbox.h: deprecations
322
323         * gtk/gtkvbbox.h: deprecations
324
325         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
326         emulate deprecated gtk_button_box_get_spacing
327
328         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
329         the "set global default" functions
330         (struct _GtkButtonBox): remove "spacing" field, use the one from 
331         GtkBox base class
332
333         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
334
335         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
336         render the icon, return the missing image icon.
337
338         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
339         image icon if the load fails.   
340
341         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
342         when no image is found; should be the Netscape "missing image"
343         icon eventually but for now is a random image
344
345         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
346         role for the session manager
347
348         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
349
350         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
351         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
352
353         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
354
355 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
356
357         * gtk/*.c: marshaller fixes.
358         
359         * gtk/gtkmarshal.list: extreme cleanup.
360
361         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
362         param spec for now.
363
364         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
365         where appliable.
366
367         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
368         special cased autogenerated boxed types from gtktypebuiltins_ids.c
369         which are not reference counted:
370         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
371         PangoFontDescription, GtkTreeIter and GtkTreePath.
372
373 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
374
375         * gtk/gtktreeselection.h: 
376         * gtk/gtktreemodel.c:
377         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
378         file should be included directly, and gobject/gmarshal.h
379         as well as gtk/gtkmarshal.h even can't be included directly.
380
381         * Makefile.am: grr, install gtk-config-2.0.
382
383         * gtk/testgtk.c:
384         * gtk/simple.c:
385         * gtk/gtkmenu.c:
386         * gtk/gtkitemfactory.c: use g_object_connect() instead of
387         passing "*signal*::*" args to gtk_widget_set().
388         
389         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
390         
391         * gtk/*.c: removed trailer arg from property setters and getters.
392         macro fixups.
393
394 2001-03-07  Alexander Larsson  <alexl@redhat.com>
395
396         * gtk/gtklabel.c (set_markup): Removed warning
397
398 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
399
400         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
401         field to allow you to hide cell renderers.
402
403         * gtk/gtkcellrenderer.c: Add support for invisible cells.
404
405         * gtk/gtktreeview.c: Add support for invisible cells.
406
407 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
408
409         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
410         Add "clicked" signal back to columns.
411
412         * ChangeLog: remove conflict markers.
413
414 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
415
416         * gtk/gtkbutton.c: Add animation of activation by, on 
417         activate, pressing the button, and adding a timeout that 
418         releases the button after 250ms or on key release and
419         emits ::clicked. (#51501)
420
421         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
422         action area, we connect to ::clicked instead of ::activate
423         so the dialog stays up through the animation.
424
425 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
426
427         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
428         check the ignore_enter flag for the menu shell that
429         the item is actually a child of, not for attached
430         submenus. (#51536)
431
432 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
433
434         * gtk/gtkmain.c (gtk_propagate_event): Only do special
435         special key-press grab handling for widgets within
436         GtkWindows. Otherwise, fall through to normal case.
437
438         This prevents key events being sent twice to GtkInvisible
439         widgets, which can cause all sorts of mischief.
440
441 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
442
443         * gtk/gtkmain.c (gtk_propagate_event): When a grab
444         widget is in effect, give the grab widget a first
445         crack at KEY_PRESS/RELEASE events. (#424)
446
447 2001-03-06  James Henstridge  <james@daa.com.au>
448
449         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
450         offset for the window_state_event to point at window_state_event
451         rather than no_expose_event.
452
453 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
454
455         * gtk/gtkimmodule.h: fix busted /* comment */
456
457 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
458
459         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
460         object properties.
461
462 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
463
464         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
465         add object properties.
466
467         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
468         to add object properties.
469
470         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
471         object properties.
472
473         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
474         add object properties.
475
476         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
477         object properties.
478
479 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
480
481         * gtk/gtktreemodel.c: renamed "child_toggled" to
482         "has_child_toggled".
483
484         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
485         handle new signal name.
486
487         * gtk/gtktreestore.c: Updated to handle new signal name.
488         * gtk/gtklisttore.c: Updated to handle new signal name.
489         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
490
491 2001-03-05  Alexander Larsson  <alexl@redhat.com>
492
493         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
494         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
495
496 2001-03-05  Michael Natterer  <mitch@gimp.org>
497
498         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
499         pixbuf-engine coincidentially also failed to make one of it's
500         parent_class pointers static, causing overwriting of GtkLabel's
501         parent_class pointer in pixbuf_style_class_init().
502         (Will commit the fix to the pixbuf-engine too).
503
504 2001-03-05  Alexander Larsson  <alexl@redhat.com>
505
506         * gdk/gdkwindow.h:
507         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
508         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
509         gdk_window_set_icon_list for net wmspec functionality.
510
511         * gdk/x11/gdkwindow-x11.c:
512         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
513         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
514         gdk_window_set_icon_list.
515         Added gdk_wmspec_change_state helper function and used it in the code.
516         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
517
518         * gtk/gtkdialog.c (gtk_dialog_init):
519         Set GDK_WINDOW_TYPE_HINT_DIALOG.
520
521         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
522         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
523
524         * gtk/gtkwindow.c:
525         new function gtk_window_set_type_hint.
526         On realize, set type hint and modal hint.
527
528         * gtk/gtkwindow.h:
529         Added type_hint field and gtk_window_set_type_hint.
530
531 2001-03-05  Alexander Larsson  <alexl@redhat.com>
532
533         * gtk/gtklabel.[ch]:
534         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
535         New function gtk_label_get_accel_keyval () to get the underline accelerator
536         of the label. Setting the label pattern overrides other attributes.
537
538 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
539
540         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
541         Added missing initializers to gtk_rc_style_init().
542
543 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
544
545         * gtk/gtktextview.c: fixed bug #51097 about setting 
546         gtk_text_view_set_border_window_size() if the widget is 
547         already realized.
548
549 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
550
551         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
552
553         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
554         comment. Won't do to have duplicated doc comments between
555         the platform subdirs.
556
557 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
558
559         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
560           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
561
562         Detectable auto-repeat - make a repeating key generate
563         press/press/press/release instead of press/release pairs.
564
565         If we have Xkb and XkbSetDectableAutoRepeat supports
566         that, we do it that way. Otherwise, when we get
567         a release event, we check ahead with XPending to see
568         if the next key is a KeyPress with the same keycode
569         and timestamp. (Not 100% reliable, but pretty close.)
570           
571 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
572         
573         * gtk/gtkmain.c (gtk_propagate_event): Only do special
574         special key-press grab handling for widgets within
575         GtkWindows. Otherwise, fall through to normal case.
576  
577         This prevents key events being sent twice to GtkInvisible
578         widgets, which can cause all sorts of mischief.
579  
580 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
581  
582         * gtk/gtkmain.c (gtk_propagate_event): When a grab
583         widget is in effect, give the grab widget a first
584         crack at KEY_PRESS/RELEASE events. (#424)
585  
586 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
587
588         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
589         to extend the selection. (Roughly based on patch
590         from Jay Cox, #50939)
591
592         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
593         to properly handle previous GDK_BUTTON_PRESS. 
594         (Patch from Jay Cox, #50938)
595
596         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
597         '\0' back along with the deleted text. (#51148)
598
599 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
600
601         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
602         the group when extracting it from the X keyboard event.
603
604         * modules/input/Makefile.am modules/input/imipa.c: 
605         Simple module for entering IPA. (Do we need a 
606         gtk-stupid-input-tricks CVS module?)
607
608 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
609
610         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
611         const.
612
613         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
614
615         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
616         is no focus widget for the dialog currently, grab the focus as well
617         as the default.
618
619         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
620         the action area's children to iterate through, not the
621         dialog's children.
622
623 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
626         Add plug-socket tests. (Won't work worth a darn until I commit
627         the rest of the plug-socket changes, but no reason these
628         can't go into CVS now.)
629
630 2001-03-02  Havoc Pennington  <hp@redhat.com>
631
632         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
633         _gdk_region_get_xrectangles()
634
635         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
636
637         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
638
639         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
640         function, contributed by Ron Steinke    
641
642         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
643         gdk_net_wm_supports
644
645         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
646         New function, contributed by Ron Steinke
647
648         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
649         used to line up the text in the entry when using the entry for
650         editable sheet cell hacks
651
652         * gtk/testgtk.c (create_entry): test the activate_default setting
653         on GtkEntry
654
655         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
656         cause the entry to activate the default button for a dialog when 
657         activated
658         (gtk_entry_get_activates_default): new function
659
660 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
661
662         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
663         Hwang to move call to sync_selection() up a few lines
664         to before the row list is modified, to fix crash when
665         removing rows in the undo_selection list.
666
667         (Test case provided by Daniel Elstner:
668
669         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
670
671 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
672
673         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
674         of tree->root_tree in parent_set rather than _map(), 
675         fixing #50892 in a bit better manner.
676
677 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
678
679         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
680
681 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
682
683         * gtk/gtkstyle.c : Remove duplicate fwd decl for
684         gtk_default_draw_shadow.
685
686 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
687
688         * gdk/gdkimage.c (gdk_image_new): Remove excess 
689         warning, make warnings more verbose, treat a error
690         in shmat as permanent, and don't try again.
691         (#51163, Ed Randall.)
692
693 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
694
695         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
696         delay for the first click before starting to scroll.
697         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
698
699         * gtk/gtktext.c: GtkText should have I-beam cursor. 
700         (based on gtk-enf-990513-1.patch, Eric Fisher.)
701
702 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
703
704         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
705         cleanup to remove some references to unused
706         ->xoffset, ->yoffset.
707
708 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
709
710         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
711         mask. (#51039, fix from Martin Maierhofer)
712
713 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
714
715         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
716         for unshifted + and shifted = for non-us keyboards.
717         Make <Control>+ and <Control>- work as well as 
718         <Control>KP_Plus, <Control>KP_Minus for recursive
719         open/close.  (#2682, René Seindal)
720
721 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
722
723         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
724         the active menu item before deactivating the menu,
725         so gtk_menu_popdown doesn't change the history. (#50964)
726         
727 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
728
729         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
730         draw lines with text_gc rather than black_gc.
731         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
732
733 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
734
735         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
736         Move handling of buttons fully in gtktreeviewcolumn.  This code is
737         less interrelated then it was, but it still requires the
738         GtkTreeView to map it.
739
740         * test/testtreecolumn.c: Now I can add a column to one view,
741         remove it, add it to the another view, remove it, then re-add it
742         to the first.  Nifty.
743
744 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
745
746         * docs/tutorial/gtk-tut.sgml: Minor corrections
747
748 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
749
750         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
751         GtkRowReference.
752
753 2001-02-28  Havoc Pennington  <hp@redhat.com>
754
755         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
756         draw_default
757         (gtk_widget_draw_focus): remove this function; we could instead
758         make it just gtk_widget_draw(), but in most cases I think the
759         result would be broken user code, so think it's better to have
760         that code not compile and get fixed
761         (gtk_widget_draw_default): ditto
762
763         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
764         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
765         
766         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
767         widgets lose/get the default, instead of calling draw_default
768         
769         * docs/Changes-2.0.txt: note about all this
770
771         Then fixed every widget in GTK, I won't list all the filenames.
772
773 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
774
775         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
776         _gtk_tree_row_reference_deleted.
777         (inserted_callback): Proxy out to
778         _gtk_tree_row_reference_inserted.
779         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
780         get around signal emission ordering problem.
781
782         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
783         fix to work with SINGLE 
784         (_gtk_tree_selection_internal_select_node): Major sanitization on
785         selections.  SINGLE now seems to work.
786
787         * tests/Makefile.am: add testtreecolumn.c:
788
789         * tests/testtreecolumn.c: New test.  Mostly points out selection
790         bugs currently, but will test columns later.
791
792         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
793         selection bug.  I hate touching this code -- it's scary.
794
795 2001-02-26  Havoc Pennington  <hp@redhat.com>
796
797         * gtk/testgtk.c: test the window state stuff
798
799         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
800         window come to the user's attention as if it were just created
801         (gtk_window_iconify): new function
802         (gtk_window_deiconify): new function
803         (gtk_window_stick): new function
804         (gtk_window_unstick): new function
805         (gtk_window_maximize): new function
806         (gtk_window_unmaximize): new function
807
808         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
809
810         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
811
812         * gdk/x11/gdkevents-x11.c: create window state events when
813         appropriate
814         (gdk_wmspec_supported): new function
815
816         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
817         iconification before showing the window
818         (gdk_window_deiconify): new function
819         (gdk_window_stick): new function
820         (gdk_window_unstick): new function
821         (gdk_window_maximize): new function
822         (gdk_window_unmaximize): new function
823
824         * gdk/gdkwindow.c: store the window state in the window; 
825         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
826         window->mapped.
827         (gdk_window_get_state): return the current window state
828
829         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
830         (gdk_event_get_state): handle GDK_WINDOW_STATE
831         (gdk_synthesize_window_state): function to create the window state
832         events
833
834         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
835         event, for changes to "window state" such as maximized, sticky, 
836         etc.
837         
838         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
839         focuses a window
840
841         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
842         finds out if we support a given WM spec hint
843
844 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
845
846         * docs/faq/gtk-faq.sgml: New question re memory leaks.
847
848 2001-02-25  Hans Breuer  <hans@breuer.org>
849
850         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
851         cause we want to loose those prototypes only in the latter case
852
853         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
854         GdkPixmapImplWin32 because it itsn't derived from it. Use the
855         impl member variable instead
856
857         * gtk/gtk.def : updated
858
859         * gtk/gtklist.c : 
860         * gtk/gtkmenus.c : include <string.h> for memset ()
861
862         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
863         for everthing built here, but for gtk-x.x.dll only. This solves
864         problem of indifferent gtk type definitions
865
866 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
867
868         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
869
870 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
871
872         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
873         column that is exposed.
874
875         (_gtk_tree_view_update_size): Changed name from set_size, and
876         changed function to do more work, and not force people calling it
877         to figure out the size.  Simplifies a lot of code elsewhere.
878
879 2001-02-23  Alexander Larsson  <alexl@redhat.com>
880
881         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
882         return solid masks for xpms that have no transparent color.
883         This makes the ..._create_from_xpm... API backwards
884         compatible.
885
886 2001-02-23  Tor Lillqvist  <tml@iki.fi>
887
888         * README.win32: Update. Mention the gtk-1-3-win32-production
889         branch.
890
891         * gdk/win32/bdfcursor.c: New file. A program that generates
892         xcursors.h. Thanks to Stefan Ondrejicka.
893
894         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
895         compact format.
896
897         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
898
899         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
900         function, uses xcursors.h.
901         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
902         cursor from inline data instead of using LoadCursor() to generate
903         it from a resource.
904
905         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
906         event, must check the Windows message for mouse button state, as
907         the GDK event state might not have been built if it is
908         undelivered. Remove one goto.
909
910         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
911         SetCursor() if the current cursor as returned by GetCursor() is
912         the window's previous cursor. The ChildWindowFromPoint() test
913         apparently didn't work correctly.
914
915         * gdk/win32/rc/*.cur: Remove.
916
917         * gdk/win32/rc/gdk.rc.in: Remove cursors.
918
919         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
920
921         * gtk/makefile.{mingw,msc}.in: Updates.
922
923 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
924
925         * gtk/gtktreemodel.h: add functions for signal emission.
926
927         * gtk/gtktreestore.c: move to use above functions instead of
928         g_signal_emit.
929
930         * gtk/gtkliststore.c: ditto
931
932 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
933
934         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
935         GObject instead of GtkObject.
936
937         * gtk/gtkliststore.c: ditto.
938
939         * gtk/gtktreemodelsort.c: ditto.
940
941         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
942         GtkTreeModelIface, instead of in each model.
943
944 2001-02-21  Havoc Pennington  <hp@redhat.com>
945
946         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
947         unbreak this function
948
949         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
950         properties
951
952         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
953         properties
954
955         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
956         properties
957
958         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
959         mean unset the max length
960
961 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
962
963         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
964         Changed name to be set_cell_data_func to make it clear what
965         the functino does.  Close bug #51069.
966
967 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
968
969         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
970         have memory actually freed.  Keeps box running longer.
971
972 2001-02-21  Alexander Larsson  <alexl@redhat.com>
973         
974         * gtk/gtkseparatormenuitem.[ch]:
975         Added new menu separator item. The drawing and size handling
976         is still done in GtkMenuItem, but the API is a bit more sane.
977         
978         * gtk/Makefile.am:
979         Add gtkseparatormenuitem.[ch].
980
981         * gtk/gtk.h:
982         Add gtkseparatormenuitem.h.
983         
984         * gtk/gtkentry.c:
985         * gtk/gtkmenufactory.c:
986         * gtk/gtktextview.c:
987         Use the new API for menu separators.
988         
989         * demos/gtk-demo/menus.c (create_menu):
990         Add some GtkSeparatorMenuItem demo code.
991
992 2001-02-20  Havoc Pennington  <hp@redhat.com>
993
994         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
995         Lee Mallabone
996
997         * gtk/gtkarrow.c: Convert to new property API, patch from 
998         Lee Mallabone
999
1000 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
1001
1002         * tests/testtreeview.c (toggled_callback): fix to reflect change
1003         in GtkTreeModelStore.
1004
1005 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
1006
1007         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
1008         function to create an icon set from a pixbuf.
1009
1010 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1011
1012         * gtk/gtkcellrenderertext.[ch]:
1013         Add a "markup" property.
1014
1015         * gtk/treestoretest.c:
1016         Use the markup property, remove some leftover stuff from
1017         GtkTreeModelMapping.
1018
1019 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1020
1021         * gtk/gtklabel.c (gtk_label_set_selectable):
1022         Queue a redraw if the selectable setting was changed.
1023
1024 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1025
1026         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1027         Actually copy the whole gc, not just the public parts.
1028         
1029         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1030         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
1031         labels.
1032
1033 2001-02-19  Havoc Pennington  <hp@pobox.com>
1034
1035         * gdk/gdkwindow.c: docs
1036
1037         * gdk/gdkrgb.c: docs
1038
1039         * gdk/gdkregion-generic.c: docs
1040
1041         * gdk/gdkgc.c (gdk_gc_set_values): docs
1042
1043         * gdk/gdkdraw.c: docs
1044
1045         * gdk/gdkdrawable.h: deprecate drawable get/set data
1046
1047 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
1048
1049         * demos/gtk-demo/dialog.c: Add simple new demo.
1050
1051 2001-02-19  Havoc Pennington  <hp@redhat.com>
1052
1053         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
1054         insert_child_anchor signal, bug #50245
1055
1056         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
1057         from create_child_anchor, so the anchor is passed in
1058
1059         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
1060         (_gtk_widget_segment_new): have the child anchor object passed in, 
1061         instead of creating it.
1062
1063         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
1064         to gtk_text_buffer_get_modified
1065
1066 2001-02-19  Havoc Pennington  <hp@redhat.com>
1067
1068         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
1069         changed GLib without fixing GTK
1070
1071         * gtk/gtkrange.h: Rename all the stupid implementation detail 
1072         functions to have an underscore in front. Most of them should 
1073         probably just go away, but for starters don't export them.
1074         Bug #50482
1075
1076 2001-02-19  Havoc Pennington  <hp@redhat.com>
1077
1078         * gdk/gdkcolor.h: test was backward, so deprecated functions were
1079         excluded by default
1080
1081         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
1082         clean up the old code a bit
1083
1084         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
1085         inconsistent state
1086
1087         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
1088         draw inconsistent state
1089
1090         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
1091         (create_menu): add inconsistent test
1092
1093         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
1094         new function
1095         (gtk_check_menu_item_get_inconsistent): new function
1096         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
1097         state (using etched in for now)
1098
1099         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
1100         draw inconsistent state
1101
1102         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
1103         function, used when the user has selected a range of stuff in
1104         different states
1105         (gtk_toggle_button_get_inconsistent): accessor for that
1106         (gtk_toggle_button_paint): draw inconsistent state (etched in?
1107         don't know what else to do)
1108
1109 2001-02-19  Hans Breuer <hans@breuer.org>
1110
1111         * gtk/gtk.def : updated exported symbols
1112
1113         * gtk/makefile.msc.in : updated
1114
1115         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
1116         a colormap, when invoked from testgtk::entry. I'm not sure where
1117         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
1118         avoids immediate crashing ...
1119
1120         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
1121         any objections ?
1122
1123         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
1124         0 parameter. At least msvc doesn't like macros with var args. 
1125         I simply removed the extra 0, was it a feature or a typo ?
1126
1127         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
1128         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
1129         because the value assignment to the internal struct wasn't working.
1130         I'm not absolutely sure. The problem could have been resolved by
1131         changing the "func" declartion in the struct, but was the pointer
1132         to the function pointer intended ?
1133
1134         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
1135
1136         * gdk/gdk.def : updated exported symbols
1137
1138         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
1139         only use SetDIBitsToDevice if there is a palette at the drawable
1140         and the image is GDK_VISUAL_PSEUDO_COLOR
1141
1142         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
1143
1144         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
1145
1146         * gdk/*/makefile.msc : updated
1147
1148 2001-02-19  Havoc Pennington  <hp@redhat.com>
1149
1150         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
1151         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
1152
1153         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
1154         (gdk_key_repeat_restore): nuke
1155
1156         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
1157         (gdk_init_check): no atexit func
1158
1159         * gdk/gdkrgb.h: mark some stuff deprecated
1160
1161         * gdk/gdkcolor.h: mark some stuff deprecated
1162         
1163         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
1164
1165         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
1166
1167 2001-02-16  Havoc Pennington  <hp@redhat.com>
1168
1169         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
1170         scroll steps.
1171
1172         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
1173         steps, and add Ctrl-arrow shortcuts for paging visually as with
1174         HScale, since Page Up and Page Down move logically.
1175
1176         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
1177         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
1178         
1179         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
1180         steps
1181         (gtk_range_scroll): handle the visual steps
1182
1183         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
1184         scroll steps
1185
1186         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
1187         steps, not the logical ones.
1188
1189         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
1190         (scroll_vertical): handle up/down steps
1191
1192 2001-02-19 Alexander Larsson  <alexl@redhat.com>
1193
1194         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
1195         Copy data and free data with free().
1196
1197         * gdk-pixbuf/gdk-pixbuf.c:
1198         * gdk-pixbuf/io-jpeg.c:
1199         * gdk-pixbuf/io-png.c:
1200         Use g_try_malloc/g_free instead malloc/free.
1201         
1202         * gdk-pixbuf/test-gdk-pixbuf.c:
1203         Must... initialize... gobject...
1204         
1205         * gdk-pixbuf/pixops/timescale.c:
1206         * gtk/gtkcalendar.c:
1207         Use g_malloc instead of malloc.
1208         
1209 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
1210
1211         * gtk/testgtkrc:
1212         Comment out property assignments, these don't work yet.
1213
1214 2001-02-17  Havoc Pennington  <hp@pobox.com>
1215
1216         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
1217         bit.
1218
1219 2001-02-17  Havoc Pennington  <hp@pobox.com>
1220
1221         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
1222         shadowed variables that had broken size request in some cases,
1223         leading to bogus tooltips (#50996)
1224
1225 2001-02-06  Jon K Hellan  <hellan@acm.org>
1226
1227         Implement fast browsing of tooltips, bug #50619
1228         
1229         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
1230         and last_popdown
1231         
1232         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
1233         use_sticky_delay and last_popdown.
1234         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
1235         time of popdown.
1236         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
1237         is NULL.
1238         (gtk_tooltips_recently_shown): New static function.  Return true
1239         if < sticky_delay has elapsed since last popdown.
1240         (gtk_tooltips_event_handler): Display window after sticky_delay
1241         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
1242         since last popdown.
1243         
1244 2001-02-17  Havoc Pennington  <hp@pobox.com>
1245
1246         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
1247         instead of (). #6394
1248
1249         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
1250         G_CONST_RETURN, make it return by reference, #50473
1251         
1252 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
1253
1254         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
1255         generated ENTER_NOTIFY event with 0, otherwise not explicitely
1256         setup fields contain garbage (e.g. subwindow, breaking
1257         gdk_drawable_ref() upon event copy).
1258         (gtk_menu_stop_navigating_submenu_cb): same here.
1259
1260         * gtk/gtklist.c (gtk_list_vertical_timeout): 
1261         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
1262         * gtk/gtkclist.c (vertical_timeout): 
1263         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
1264         default-zero-intialization for unions to memset(,0,), as unions are
1265         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
1266         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
1267
1268         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
1269         g_closure_sink() warning.
1270
1271         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
1272         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
1273         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
1274         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
1275         
1276 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
1277
1278         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
1279         gtk_*_store_get, and moved to GtkTreeModel.
1280
1281         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
1282
1283         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
1284
1285         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
1286
1287         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
1288         set the func.
1289
1290         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1291         freeze/thaw notify between setting all the properties for a cell.
1292
1293         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
1294
1295 2001-02-15  Havoc Pennington  <hp@redhat.com>
1296
1297         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
1298         the X coordinates so they're with respect to the line, rather than 
1299         with respect to the layout.
1300
1301         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
1302         Mallabone
1303
1304         * gtk/testgtk.c (create_range_controls): add vscale tests, 
1305         and inverted test
1306
1307         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
1308         #50806
1309
1310         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
1311
1312         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
1313         gtk_text_iter_is_end
1314
1315         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
1316         rename gtk_text_buffer_get_end_iter
1317
1318         * gtk/testgtk.c (create_labels): Add test for selectable
1319
1320         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
1321         the selection stuff. This code is kind of broken since it doesn't 
1322         use the theme engine.
1323
1324         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
1325         fix infinite loop and y offset problem
1326         (gdk_draw_layout_line_with_colors): fix foreground color handling
1327
1328         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
1329         that makes the label selectable.
1330         
1331         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
1332         layout when the style is set, since fonts etc. could have changed.      
1333
1334 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
1335
1336         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
1337
1338         * gtk/gtktreemodelsimple.[ch]: removed.
1339
1340 2001-02-16  Alexander Larsson  <alexl@redhat.com>
1341
1342         * gtk/gtktreemodelmapping.[ch]:
1343         New files. Implement GtkTreeModelMapping.
1344         
1345         * gtk/Makefile.am:
1346         Add gtktreemodelmapping.[ch].
1347         
1348         * gtk/gtk.h:
1349         Add gtktreemodelmapping.h
1350
1351         * gtk/treestoretest.c:
1352         Test the GtkTreeModelMapping
1353
1354 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
1355
1356         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
1357         have a demo, we might as well pass in real values.  Thanks to
1358         clahey for pointing this out.
1359
1360 2001-02-14  Havoc Pennington  <hp@pobox.com>
1361
1362         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
1363         "static" to a private function
1364         (gtk_image_menu_item_class_init): remove destroy handler,
1365         add "image" object property
1366
1367 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
1368
1369         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
1370         Add a shortcut if the window and the current clip_region doesn't
1371         overlap. This is needed when there are a lot of windows in a
1372         window. The layout test in testgtk is a good test.
1373
1374         * gdk/linux-fb/gdkwindow-fb.c:
1375         Whitespace fix.
1376
1377 2001-02-13  Sven Neumann  <sven@convergence.de>
1378
1379         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
1380
1381 2001-02-13  Alexander Larsson  <alexl@redhat.com>
1382
1383         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
1384         Don't reference last_cursor if it is null. Fixes crash when rotating
1385         the screen before having moved the mouse.
1386
1387         * gdk/linux-fb/gdkcc-fb.c: Zapp!
1388
1389         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
1390
1391         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
1392         when using 90 or 270 degrees rotation.
1393
1394 2001-02-12  Havoc Pennington  <hp@pobox.com>
1395
1396         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
1397         it always set the foreground, even if we were only using
1398         a stipple.
1399         (gdk_draw_layout_line_with_colors): new function, allow
1400         override colors
1401         (gdk_draw_layout_with_colors): new function, allow override
1402         colors
1403         (gdk_pango_layout_line_get_clip_region): function to get the clip
1404         region for a logical text range
1405         (gdk_pango_layout_get_clip_region): get the clip region for a
1406         logical text range
1407
1408         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
1409         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
1410         the right number of arguments.
1411
1412         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
1413         enhance the function to check that node data corresponds to a 
1414         view still belonging to the tree.
1415
1416         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
1417         GtkTreePath
1418         (gtk_tree_view_inserted): ditto
1419         (gtk_tree_view_child_toggled): ditto
1420
1421         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
1422         simplify this code.
1423
1424         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
1425         a PangoAttrList
1426
1427         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
1428
1429         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
1430
1431         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
1432         size in the size request 
1433         (gtk_menu_bar_size_allocate): consider toggle size here
1434
1435         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
1436         that displays a widget in the toggle slot
1437
1438         * gtk/testgtk.c: test GtkImageMenuItem
1439
1440         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
1441         
1442         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
1443         request and allocation
1444
1445         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
1446
1447         * gtk/gtkcheckmenuitem.c
1448         (gtk_check_menu_item_toggle_size_request): ditto
1449         
1450 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
1451
1452         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
1453         reference.
1454
1455         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
1456         and refuse to initialize GTK+ if they fail.
1457
1458 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
1459
1460         * configure.in: Add check for gtk-doc version.
1461
1462 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1463
1464         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
1465         where the xpad/ypad was only being used on one side!
1466
1467 2001-02-11  Tor Lillqvist  <tml@iki.fi>
1468
1469         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
1470         function, copied from X11 version.
1471
1472         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
1473         DestroyCursor failures. The reason for the problem (despite the
1474         inconsistent messages from GetLastError()) was that
1475         DestroyCursor() cannot be called while a cursor is set in a
1476         window. Set the new cursor first and then destroy the old one.
1477         Thanks to jpe@archaeopteryx.com.
1478
1479         * gdk/win32/gdkcc-win32.c: Remove.
1480
1481         * gdk/win32/Makefile.am: Remove from here, too.
1482         
1483         * gdk/gdk.def
1484         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
1485
1486         * gtk/gtk.def
1487         * gtk/makefile.mingw.in: Updates.
1488
1489 2001-02-08  Havoc Pennington  <hp@redhat.com>
1490
1491         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
1492         add a widget to a bin that already has a child.
1493
1494         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
1495
1496         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
1497         
1498         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
1499
1500         * gdk/gdk.h: remove gdkcc.h
1501
1502         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
1503
1504         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
1505         GdkPixbuf, since the previous implementation was GdkColorContext
1506         dependent.
1507
1508         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
1509         
1510 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
1511
1512         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
1513         a sane value!
1514
1515 2001-02-08  Havoc Pennington  <hp@redhat.com>
1516
1517         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
1518         lighten them.
1519
1520 2001-02-08  Havoc Pennington  <hp@redhat.com>
1521
1522         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
1523         validation idle
1524
1525         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
1526         cell renderer
1527
1528         * demos/pixbuf-demo.c (timeout): remove deprecated
1529         gtk_widget_draw
1530
1531         * demos/testpixbuf-save.c (main): remove deprecated
1532         gtk_drawing_area_size
1533
1534         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
1535         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
1536         at the start of the allocation.
1537         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
1538         unsetup or NULL model.
1539
1540         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
1541         even/odd/sorted cells in the tree view.
1542
1543         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1544         bugfixes
1545
1546         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
1547         backgrounds with draw_flat_box using different detail for even/odd
1548         rows.
1549
1550         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
1551         row, so we can draw the alternating colors thing
1552
1553         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
1554         property from a synonym property, notify for the synonym.
1555         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
1556         (gtk_text_tag_get_property): Always return the font, even if
1557         all its fields aren't set
1558
1559         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
1560         store the attr list; it leaves us with no way to change attributes
1561         in _render according to the render flags, and no way to implement
1562         get_property. Instead store all the specific text attributes. 
1563         Separate whether an attribute is enabled from its value. Sync all
1564         properties with GtkTextTag, make them all consistent, etc.
1565
1566         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
1567         renderers can highlight the sort row/column     
1568
1569         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
1570         accessor functions to get values; this has the side effect of
1571         showing up which accessor functions were missing. Added those.
1572
1573         * gtk/gtktreeviewcolumn.h: Replace set_justification with
1574         set_alignment, to be consistent with GtkLabel, GtkMisc
1575
1576         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
1577         arrow.
1578
1579         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
1580
1581         * gtk/gtktreesortable.h: updates in here
1582
1583 2001-02-07  Sven Neumann  <sven@convergence.de>
1584
1585         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
1586         pango dimensions after painting the background. We used to draw
1587         gigantic flat boxes here.
1588
1589 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
1590
1591         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
1592         error introduced with earlier commit) (pointed out by
1593         Ollie Lho)
1594
1595 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
1596
1597         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
1598         which are no longer necessary.
1599
1600 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
1601
1602         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
1603
1604 2001-02-04  Tor Lillqvist  <tml@iki.fi>
1605
1606         * gdk/gdk.def
1607         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1608         Provide dummy implementations.
1609
1610 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1611
1612         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1613
1614         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1615         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1616         deprecated this function.
1617
1618         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1619         argument.
1620
1621 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1622
1623         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1624
1625 2001-02-03  Havoc Pennington  <hp@pobox.com>
1626
1627         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1628         Mikael Hermansson with patch from Mikael (if there was a toggle
1629         start one after the first character in the range, this function
1630         was broken). Bug #50380
1631
1632 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1633
1634         * configure.in: Remove confusing comment about X11.
1635
1636 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
1637
1638         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1639         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1640         
1641 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
1642
1643         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1644         it breaks things on BSD. If you want to compile GTK+ with
1645         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
1646         when configuring, since GTK+ simply can't be "pure ANSI" 
1647         in the header files it uses. (#8170, Greg Hudson)
1648
1649 2001-02-02  Havoc Pennington  <hp@redhat.com>
1650
1651         * gtk/gtkwindow.c: docs
1652
1653         * gtk/gtkwidget.c: docs
1654         (gtk_widget_set_colormap): add a reference to the colormap
1655         (gtk_widget_get_default_colormap): add a reference to the colormap
1656
1657         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1658
1659         * gtk/gtktextiter.c: docs
1660
1661         * gtk/gtkmain.c (gtk_propagate_event): docs
1662
1663         * gtk/gtkpaned.c (gtk_paned_get_position): docs
1664         (gtk_paned_set_position): docs
1665
1666         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1667         sort interface, no implementation yet.
1668
1669         * demos/testpixbuf.c (new_testrgb_window): replace
1670         gtk_drawing_area_size() with gtk_widget_set_usize()
1671
1672         * demos/testpixbuf-drawable.c (main): ditto
1673         
1674         * gtk/testgtk.c: remove use of GtkStatusbarMsg
1675
1676         * gtk/gtktextbuffer.c: docs
1677
1678         * gtk/gtkstock.c: docs
1679
1680         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
1681
1682         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
1683
1684         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
1685         
1686         * gtk/gtkimage.c: add some docs in here
1687         (gtk_image_size_request): change name of
1688         gtk_widget_render_stock_icon
1689         (gtk_image_get_icon_set): don't dup returned string
1690         (gtk_image_get_icon_set): don't dup returned string
1691
1692         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
1693         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
1694         and gtkiconfactory.h functions
1695
1696         * gtk/gtkiconfactory.c: add some docs in here
1697
1698         * gtk/gtkmain.c (gtk_get_default_language): document
1699         (gtk_get_current_event): document
1700         (gtk_get_current_event_state): document
1701         (gtk_get_event_widget): document
1702
1703         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
1704
1705         * gtk/gtkcontainer.c: Add some documentation
1706         (gtk_container_add): give a more explanatory warning on adding an
1707         already-parented widget, this is kind of a FAQ and also a common
1708         typo that's easier to debug with a nice warning 
1709
1710         * gtk/gtkcellrenderertoggle.c
1711         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
1712         adding this, it's useless
1713         (gtk_cell_renderer_toggle_set_active): remove
1714         (gtk_cell_renderer_toggle_get_radio): add
1715
1716         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
1717         the NULL cell renderer, that doesn't make any sense to me. 
1718
1719         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
1720         demo code should never use deprecated features.
1721
1722         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
1723         code should never use deprecated features.
1724
1725         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
1726         gtk_widget_queue_clear_area deprecated
1727
1728         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
1729         deprecated
1730
1731         * gtk/gtklabel.h: mark gtk_label_get() deprecated
1732
1733         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
1734         a GdkImage deprecated, replaced by new consistently-named
1735         functions       
1736
1737         * gtk/gtkmain.h: Mark gtk_exit() deprecated
1738
1739         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
1740
1741         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
1742         deprecated
1743
1744         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
1745         so it won't appear in docs and confuse people.
1746
1747         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
1748
1749         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
1750         macros deprecated. (can't mark the type itself deprecated, since
1751         GtkProgressBar is not deprecated and we need the type decl to use
1752         GtkProgressBar)
1753
1754         * gtk/gtkpixmap.h: Mark deprecated
1755
1756         * gtk/gtkoldeditable.h: Mark deprecated
1757
1758         * gtk/gtklist.h: Mark deprecated
1759
1760         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
1761         for anything anymore.
1762
1763         * gtk/gtkctree.h: Mark deprecated
1764
1765         * gtk/gtkclist.h: Mark deprecated
1766
1767         * gtk/gtkpreview.h: Mark deprecated
1768
1769         * gtk/gtkpacker.h: Mark deprecated
1770
1771         * gtk/gtktipsquery.h: Mark deprecated
1772
1773         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1774
1775         * gtk/gtkvruler.h: Add comment that it will move out of GTK
1776
1777         * gtk/gtkhruler.h: Add comment that it will move out of GTK
1778
1779         * gtk/gtkruler.h: Add comment that it will move out of GTK
1780
1781         * gtk/gtkgamma.h: Add comment that it will move out of GTK
1782
1783         * gtk/gtkcurve.h: Add comment that it will move out of GTK
1784
1785 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
1786
1787         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1788         gdk_colormap_sync private since it was never exported
1789         in a header file.
1790
1791         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1792         colormap->colors[] for StaticGray, StaticColor colormaps.
1793
1794         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1795         was being used as if it was image->bits_per_pixel.
1796
1797         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1798         for the image in the GdkImage structure since it isn't
1799         reconstructable, and we need it to handle packed types
1800
1801         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1802         the assumption that on Win32 image->bits_per_pixel == image->depth,
1803         always.
1804
1805         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1806
1807         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1808         warning message if no converter can be found. 
1809
1810 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
1811
1812         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1813         chars to isupper() / tolower(). (#567)
1814
1815         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1816         to clear up 64-bit warnings. (#567)
1817
1818 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1821         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1822
1823         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1824         since some people set $(libdir) separately. (#1290, David Kaelbling)
1825
1826 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
1827
1828         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1829         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1830         MAXPATHLEN, but the code here depends on a fixed value.)
1831         (#4524)
1832
1833 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
1834
1835         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1836         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1837
1838 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
1839
1840         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1841         viewable there is no way that moving the node will cause the 
1842         focus row to become not viewable, so omit check on the visibility
1843         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1844
1845 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
1846
1847         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1848         selection before inserting new text.
1849
1850 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
1851
1852         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1853         Make the sensitivity of the reparented child track that of
1854         the original parent menu item. (#34218, David Hodson)
1855
1856         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1857         the case where the current item is destroyed properly.
1858
1859         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1860         some edge cases with child-less menuitems.
1861         
1862 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
1863
1864         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1865         key pop down window. (#12074, Jon K Hellan)
1866
1867 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
1868
1869         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1870         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
1871         The solution here isn't perfect - you get an extraneous
1872         emission of "toggle", which could conceivably confuse an app,
1873         but better than the current situation. LXR search seems to
1874         indicate that no apps in GNOME CVS connect to "toggle".
1875
1876 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
1877
1878         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1879         gtk_public_h_sources to directly here to avoid warning when
1880         building srcdir != builddir. (#9656)
1881
1882 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
1883
1884         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1885         handlers in gtkrange.c return the proper values (TRUE == handled)
1886         (#10316).
1887
1888         This is just the tip of the iceberg, but gtkrange.c is the
1889         most common place where the propagation is problematical,
1890         and also a place where it is almost certainly safe to change
1891         this in the stable branch.
1892
1893         (You don't want right click popups on a range control or anything...)
1894
1895 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
1896
1897         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1898         area on focus out, even if a background pixmap isn't set.
1899         (#13941)
1900         
1901 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
1902
1903         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1904         to deal with setting the shape properly when scrolling arrows are
1905         turned on, but not visible because there is sufficient space.
1906         (#13432)
1907
1908 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
1909
1910         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1911         items with submenus, destroy the item along with the submenu.
1912         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
1913         properly.
1914
1915         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1916         later.
1917
1918 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
1919
1920         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1921         the focus widget sometimes wasn't drawn with the default if there
1922         was no default widget.
1923
1924         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1925         unreference pixmaps. 
1926
1927         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1928         for some extra safety.
1929
1930 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
1931
1932         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1933         the text of a cell to the old pointer value better, by
1934         copying the new text before freeing the old text. Some code
1935         cleanup. (#8079, Karl Nelson)
1936
1937 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
1938
1939         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1940         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1941
1942 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
1943
1944         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1945         item from a menu, check to see if it matches 
1946         menu->old_active_menu_item, and if so, unref and clear
1947         old_active_menu_item (Patch from Pavel Cisler)
1948
1949         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
1950         menu_shell->active_menu_item, if it is the child being
1951         removed. (Patch based on that of Gene Ragan, #50337)
1952
1953 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
1954
1955         * gdk/linux-fb/gdkselection-fb.c: 
1956         * gdk/linux-fb/gdkcolor-fb.c: 
1957         * gdk/linux-fb/gdkdrawable-fb2.c: 
1958         * gdk/linux-fb/gdkfont-fb.c: 
1959         * gdk/linux-fb/gdkim-fb.c: 
1960         * gdk/linux-fb/gdkinput.c: 
1961         * gdk/linux-fb/gdkkeyboard-fb.c: 
1962         * gdk/linux-fb/gdkmain-fb.c: 
1963         * gdk/linux-fb/gdkrender-fb.c: 
1964         A bunch of whitespace cleanup.
1965         
1966 2001-01-30  Havoc Pennington  <hp@pobox.com>
1967
1968         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
1969         #ifdef GTK_ENABLE_BROKEN.
1970
1971         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1972         GTK_ENABLE_BROKEN just before including the broken headers.
1973         
1974         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1975         deprecated types registered.
1976
1977         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1978         we have to test the broken stuff.
1979
1980         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1981         
1982 2001-01-30  Havoc Pennington  <hp@redhat.com>
1983
1984         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1985         here where prev pointer was set to the wrong thing
1986
1987         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1988         (gtk_tree_path_is_descendant): new function
1989
1990         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1991         cached length
1992         (gtk_list_store_get_iter): don't modify iter if we can't get the
1993         path.
1994
1995         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1996         
1997         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1998         GtkTreeDragDest
1999
2000         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
2001         was causing segfault
2002
2003         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
2004         pointer to NULL
2005
2006         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
2007
2008         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
2009         on returning FALSE
2010         (gtk_list_store_iter_children): ditto
2011         (gtk_list_store_iter_nth_child): ditto
2012         (gtk_list_store_iter_nth_child): ditto
2013         (gtk_list_store_iter_parent): ditto
2014
2015         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
2016         on iter->user_data != NULL instead of silently accepting it.
2017         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
2018         we are returning TRUE.
2019         (gtk_tree_store_iter_children): ditto
2020         (gtk_tree_store_iter_nth_child): ditto
2021         (gtk_tree_store_iter_parent): ditto
2022         (gtk_tree_store_insert): remove handling of parent->user_data ==
2023         NULL, replace with parent == NULL       
2024
2025         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
2026         and a comment explaining things
2027
2028         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
2029         interface support to GtkTreeStore.
2030
2031         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
2032         FALSE if no prev, fix
2033
2034         * gtk/gtktreeview.c (set_source_row): use a row reference
2035         (set_dest_row): use a row reference
2036
2037 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
2038
2039         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
2040         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
2041         (gtk_tree_selection_select_iter): The same as above.
2042
2043 2001-01-26  Havoc Pennington  <hp@redhat.com>
2044
2045         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
2046         which holds a handle to a specific row (particular set of values
2047         in the model, i.e. pointer-identity row).
2048
2049         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
2050         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
2051         Still need to use it for the src/dest row saved on the drag context.
2052
2053 2001-01-26  Havoc Pennington  <hp@redhat.com>
2054
2055         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
2056
2057         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
2058         not offset by TREE_VIEW_HEADER_HEIGHT
2059         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
2060         TREE_VIEW_HEADER_HEIGHT
2061
2062         * configure.in (included_loaders): for me, --with-included-loaders
2063         generates the error "the specified loader yes does not exist",
2064         i.e. the arg defaults to "yes", so change test for value ""
2065         to test for value "yes", and include all loaders in that case.
2066
2067         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
2068
2069         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
2070         handle TREE_VIEW_VERTICAL_SEPARATOR
2071         (gtk_tree_view_bin_expose): fix to consider the row offset as
2072         pointing halfway into vertical separator.       
2073         (gtk_tree_view_draw_node_focus_rect): ditto
2074
2075         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
2076         --gtk-debug=updates, which causes gdk_window_set_debug_updates
2077         (TRUE) to be called.
2078
2079         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
2080         debug mode where the invalid region is colored in on invalidate,
2081         so you can see the flicker and know whether your redraw code is 
2082         doing a good job.
2083
2084         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
2085         tree window coordinates (clip rect is in tree window coords)
2086
2087         * gtk/Makefile.am: add gtktreednd.[hc]
2088
2089         * gtk/gtkliststore.c: implement gtktreednd interfaces.
2090
2091         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
2092         drag-and-drop data operations on a model (so we can set up tree
2093         drag-and-drop automatically)
2094
2095         * gtk/testgtk.c: Add a window to change sensitivity in the
2096         GtkLabel test; add a way to change the entry frame in GtkEntry
2097         test
2098
2099         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
2100         (gtk_entry_get_has_frame): new functions to remove the frame
2101         around an entry
2102         (gtk_entry_size_request): shrink requisition if no frame
2103         (gtk_entry_draw_focus): don't draw frame if no frame
2104
2105         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
2106         checks inside a cell renderer
2107         (gtk_default_draw_option): ditto for options
2108
2109         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
2110         children from the alignment, not the button
2111         (gtk_tree_view_column_init): ref/sink the column, to emulate
2112         GObject refcounting.
2113
2114         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
2115         
2116         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2117         Use theme functions to draw the toggles 
2118
2119         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
2120
2121         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
2122         GdkPangoAttrEmbossed to use in rendering insensitive text
2123
2124         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
2125
2126         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
2127         using new GDK features
2128         
2129 2001-01-24  Alexander Larsson  <alexl@redhat.com>
2130
2131         * gtk/gtkimage.c:
2132         Splitted gtk_image_clear into gtk_image_clear() and
2133         gtk_image_reset(). Call gtk_image_clear() in ::destroy
2134         to avoid leaks.
2135
2136         * gtk/gtklabel.c (set_markup):
2137         Don't leak text.
2138
2139         * gtk/gtktextlayout.c:
2140         Always free display->shaped_objects.
2141
2142         * gtk/testgtk.c (create_clist):
2143         Don't leak custom style.
2144
2145 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2146
2147         * gtk/gtkcolorsel.c (grab_color_at_mouse):
2148         Don't leak image. Simplify using gdk_colormap_query_color().
2149         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
2150
2151         * linux-fb/gdkcolor-fb.c:
2152         Implemented gdk_colormap_query_color.
2153
2154 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2155
2156         * linux-fb/gdkcursor-fb.c:
2157         Don't leak built-in cursors.
2158
2159         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
2160         Don't leak tmp_points.
2161
2162         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
2163         Don't modify desc. Don't leak font if the PangoFont
2164         isn't found.
2165         
2166         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
2167         Free dash_list.
2168
2169         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
2170         Don't leak string.
2171         
2172 2001-01-20  Havoc Pennington  <hp@pobox.com>
2173
2174         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
2175         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
2176         me, matches Pango
2177
2178 2001-01-22  Havoc Pennington  <hp@redhat.com>
2179
2180         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
2181
2182         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
2183
2184         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
2185         Remove, move back to gdk-pixbuf
2186
2187         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
2188         to all the word functions
2189
2190         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
2191         before doing anything on NULL layout or if we don't have the focus
2192
2193         * gtk/testtext.c (fill_example_buffer): "justification"
2194
2195         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
2196         to be called "justification" not "justify"
2197
2198         * demos/gtk-demo/textview.c (create_tags): "justification"
2199         
2200         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
2201
2202 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2203
2204         * gdk/gdkwindow.c (gdk_window_invalidate_region):
2205         Don't leak visible_region. Use visible_region instead of region.
2206         
2207         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2208         Don't do extra gdk_drawable_ref(). This is not X.
2209         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
2210         gdk_fb_focused_window is ref:ed.
2211         (gdk_fb_window_send_crossing_events): Watch out for destroyed
2212         windows.
2213
2214 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2215
2216         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
2217         Don't leak the PangoFontDescriptor.
2218
2219 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
2220
2221         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
2222         when not realized.
2223         (gtk_tree_view_scroll_to_cell): Make work when not realized.
2224         (gtk_tree_view_realize): add scroll_to support
2225         (gtk_tree_view_finalize): add a finalize method.  Populate.
2226         (gtk_tree_view_insert_column): ref and sink the column.
2227         (gtk_tree_view_append_column): ref and sink the column.
2228         (gtk_tree_view_queue_draw_node): New function to handle redrawing
2229         individual nodes.  Should make the code much more efficient, if
2230         actually used.
2231
2232 2001-01-19  Havoc Pennington  <hp@redhat.com>
2233
2234         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2235         byte_offset variable was being used to mean both "offset into
2236         layout" and "offset into buffer line" which was no longer true
2237         with addition of preedit string; fix
2238
2239 2001-01-19  Havoc Pennington  <hp@redhat.com>
2240
2241         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
2242
2243         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
2244         function
2245
2246         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
2247         implement
2248
2249         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
2250         scroll_to_cell, matches TextView scroll functions better
2251         (gtk_tree_view_tree_to_widget_coords): new function
2252         (gtk_tree_view_widget_to_tree_coords): new function
2253         (gtk_tree_view_get_visible_rect): new function
2254         (gtk_tree_view_get_path_at_pos): accept negative coordinates
2255         (gtk_tree_view_draw_node_focus_rect): new function moved from
2256         draw_focus, also, use width of bin_window as width of the focus
2257         rect
2258         (gtk_tree_view_expand_row): fix bug where it didn't recognize
2259         already-expanded rows
2260         (gtk_tree_view_get_cell_rect): new function
2261         (gtk_tree_view_get_path_at_pos): return the click position
2262         relative to the passed-in cell
2263         (gtk_tree_view_set_expander_column): new function
2264
2265         * configure.in: remove gtk-config-2.0 chmod
2266
2267         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
2268         and properly handle drags with targets we don't understand
2269         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
2270         scrolling anyway
2271         (gtk_text_view_drag_drop): stop scrolling here though, and set the
2272         mark invisible
2273
2274         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
2275         function
2276         (gtk_drag_dest_get_target_list): new function
2277         (gtk_drag_dest_set_target_list): new function
2278         
2279         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
2280
2281         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
2282         related to drag-and-drop
2283
2284 2001-01-19  Alexander Larsson  <alexl@redhat.com>
2285
2286         * gdk/linux-fb/gdkprivate-fb.h:
2287         Define EMULATE_GDKFONT.
2288         Add extra pango_font stuff to GfkFontPrivate.
2289         
2290         * gdk/linux-fb/gdkdrawable-fb2.c:
2291         * gdk/linux-fb/gdkfont-fb.c:
2292         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
2293         emulation using PangoFont.
2294
2295 2001-01-17  Havoc Pennington  <hp@pobox.com>
2296
2297         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
2298         all the non-deprecated set_foo functions. Added missing object
2299         properties, and added g_object_notify() to setters. 
2300         Wrote docs.
2301         
2302 2001-01-18  Tor Lillqvist  <tml@iki.fi>
2303
2304         * gtk/gtkmain.c
2305         * gtk/gtkrc.c: (Win32) Use the new
2306         g_win32_get_package_installation_(sub)directory() functions.
2307
2308         * config.h.win32.in: New file.
2309         
2310         * config.h.win32: Removed.
2311
2312         * configure.in: Output config.h.win32.
2313
2314         * Makefile.am: Add it to EXTRA_DIST.
2315
2316         * gtk/gtk.def: Update.
2317
2318 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
2319
2320         * gtk/gtklabel.c (gtk_label_size_request): Set the
2321         attributes onto the PangoLayout even if they are newly
2322         created from label->pattern.
2323
2324 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
2325
2326         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
2327
2328         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
2329         structures in functions. Fixes bug where gtk_dataset_*
2330         was accidentally still being used in one place, causing
2331         every dest side event to be treated independently.
2332
2333         * gtk/gtkdnd.c: Remove last vestages of handling
2334         ::draw (fixes warning)
2335         
2336         * gtk/gtkentry.[ch]: Add drag and drop support.
2337
2338         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
2339         new function gtk_check_drag_threshhold() for checking
2340         to check if (dx,dy) has exceeded the threshhold for starting
2341         a drag and use it everywhere.
2342
2343 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
2344
2345         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
2346         add -I{includedir}/gtk-2.0.
2347
2348         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
2349         gdk/gdk-pixbuf.h: Doc fixups.
2350         
2351         * gtk/gtkobject.h: Remove trailing , from enum
2352
2353 2001-01-17 Alexander Larsson <alexl@redhat.com> 
2354
2355         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
2356         Doh! Mixed up x and y.
2357
2358         * gdk/linux-fb/gdkglobals-fb.c:
2359         Removed gdk_fb_pointer_grab_window_events,
2360         added _gdk_fb_pointer_grab_owner_events and
2361         _gdk_fb_keyboard_grab_owner_events.
2362
2363         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
2364         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
2365         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
2366         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
2367         Send crossing events after ungrab finished.
2368         (gdk_keyboard_grab): Set ..._owner_events
2369         (type_masks): Move out of function.
2370         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
2371         gdk_fb_keyboard_event_window): New functions, return the
2372         window an event should be targeted at. Handles grabs and
2373         event propagation. Can return NULL.
2374         (gdk_event_make): Remove event_mask checking. Now always
2375         returns an event.
2376                 
2377         * gdk/linux-fb/gdkkeyboard-fb.c:
2378         * gdk/linux-fb/gdkproperty-fb.c:
2379         * gdk/linux-fb/gdkselection-fb.c:
2380         Use new event_window/gdk_event_make() behaviour.
2381         
2382         * gdk/linux-fb/gdkmouse-fb.c:
2383         Use new event_window/gdk_event_make() behaviour.
2384         Only send motion events if in the same window.
2385         If grabbed, use cursor from window if sibling of grabbed
2386         window, and cursor from grabbed window otherwise.
2387
2388         * gdk/linux-fb/gdkprivate-fb.h:
2389         Update gdk_fb_window_send_crossing_events, gdk_event_make
2390         and grab varaible declarations. Add gdk_fb_*_event_window().
2391
2392         * gdk/linux-fb/gdkwindow-fb.c:
2393         Use new event_window/gdk_event_make() behaviour.
2394         Keep correct track of focus window.
2395         (gdk_window_set_events): Set all specific button motion masks
2396         if GDK_BUTTON_MOTION_MASK set.
2397
2398         * gtk/gtkdnd.c (gtk_drag_update):
2399         Free info->last_event if gdk_drag_motion returned FALSE.
2400
2401 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2402
2403         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
2404         Eliminate redraws when input-only windows are shown or
2405         hidden. Thanks to jpe@archaeopteryx.com.
2406
2407 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
2408
2409         * docs/faq/gtk-faq.sgml: FAQ update:
2410           - Update to bugzilla
2411           - Add GTK+ and security/SUID/SGID
2412           - Add DnD question
2413
2414 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
2415
2416         * gdk/linux-fb/gdkdnd-fb.c:
2417         Some cleanups.
2418         
2419 2001-01-15  Havoc Pennington  <hp@pobox.com>
2420
2421         * tests/testtreeview.c: add test stuff for CellRendererToggle
2422
2423         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
2424         accessor
2425
2426         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
2427         only toggle on button press (would do release like GtkButton, but
2428         we'd need implicit grab code for treeview cells)
2429
2430 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2431
2432         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
2433
2434         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
2435         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
2436
2437         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
2438         to g_{locale,filename}_{to,from}_utf8 to match current API.
2439
2440         * gtk/makefile.msc.in (gtk_OBJECTS)
2441         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
2442
2443         * gtk/gtk.def: Update.
2444
2445 2001-01-15  Tor Lillqvist  <tml@iki.fi>
2446
2447         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
2448         implementaion that more closely mimics the events that an X server
2449         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
2450         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
2451         with nested preview widgets, for instance, more responsive when
2452         you move the mouse quickly into them.
2453         (find_window_for_pointer_event): Make it actually compile.
2454         (gdk_event_translate): Set send_event to the value of
2455         InSendMessage (). This doesn't really mean the same as X11's
2456         send_event flag, but is close enough, says jpe@archaeopteryx.com
2457
2458 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2459
2460         * gdk/linux-fb/gdkdnd-fb.c:
2461         Implemented drag and drop.
2462         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
2463         when it tries to free and then copy the same event (info->last_event).
2464         I am not sure about why this happens, but will continue looking.
2465
2466 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2467
2468         * gdk/linux-fb/gdkwindow-fb.c:
2469         Use gdk_window_invalidate_rect instead of
2470         gdk_window_invalidate_rect_clear to minimise flashing.
2471         When hiding windows you need to clear the root window though.
2472
2473 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2474
2475         * gdk/linux-fb/gdkdrawable-fb2.c:
2476         For optization, add an full_shapes argument to gdk_fb_clip_region.
2477         If this is false, only the cliprects of the shapes are used.
2478
2479         * gdk/linux-fb/gdkprivate-fb.h:
2480         Export gdk_fb_window_peek_shape.
2481         Add full_shapes to gdk_fb_clip_region.
2482
2483         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2484         When moving a window, don't clear everything under the it, just the
2485         root window. Makes stuff faster and flash less.
2486         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
2487         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
2488         offset of the shape.
2489         
2490
2491 2001-01-12  Havoc Pennington  <hp@redhat.com>
2492
2493         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
2494         current invalid region, fixes redraw bug while scrolling the 
2495         text widget
2496
2497         * gtk/gtktextview.c, gtk/gtktextview.h:
2498         Rearrange the scrolling/validation/etc. code in a major way, 
2499         so it seems to make sense to me. Probably isn't genuinely that
2500         much better, but...
2501
2502         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
2503         notifies
2504
2505         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2506
2507 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
2508
2509         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
2510         Hide mouse pointer while rotation. Show it afterwards.
2511
2512 2001-01-12  Alexander Larsson  <alexl@redhat.com>
2513
2514         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
2515         windows in consideration when generating clip region.
2516
2517         * gdk/linux-fb/gdkfb.h:
2518         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
2519
2520         * gdk/linux-fb/gdkprivate-fb.h:
2521         Add shape to GdkWindowFBDatat.
2522         exported gdk_fb_window_get_abs_shape().
2523         removed gdk_fb_draw_lines declaration.
2524
2525         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
2526         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
2527         send focus changes when there is a grabbed window.
2528         (gdk_window_get_pointer): Handle shaped windows.
2529         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
2530         (gdk_fb_window_peek_shape): Returns the shape for a window,
2531         handles GDK_FB_USE_CHILD_SHAPE.
2532         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
2533         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
2534         (gdk_window_shape_combine_mask): Implement.
2535
2536         * gtk/gtkwindow-decorate.c:
2537         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
2538         setting the shape of a window makes the window transparent.
2539
2540 2001-01-11  Havoc Pennington  <hp@redhat.com>
2541
2542         * gtk/gtktreemodelsimple.h: Oops, broke some macros
2543
2544 2001-01-10  Havoc Pennington  <hp@redhat.com>
2545
2546         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
2547         add this function, bug 40251
2548
2549         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
2550         of type macro   
2551
2552 2001-01-11  Alexander Larsson  <alexl@redhat.com>
2553
2554         * acconfig.h:
2555         Added ENABLE_SHADOW_FB
2556
2557         * configure.in:
2558         Added --disable-shadowfb
2559
2560         * gdk/linux-fb/gdkcursor-fb.c:
2561         Update shadowfb when updating cursor
2562
2563         * gdk/linux-fb/gdkdrawable-fb2.c:
2564         Added wrappers for shadowfb that calls  the normal drawable
2565         methods, but calls gdk_shadow_fb_update(bounding box) when
2566         GdkWindows are drawed to.
2567         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
2568         which also returns the bounding box.
2569
2570         * gdk/linux-fb/gdkfb.h:
2571         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
2572
2573         * gdk/linux-fb/gdkgeometry-fb.c:
2574         Update shadowfb when scrolling window.
2575
2576         * gdk/linux-fb/gdkglobals-fb.c:
2577         Add _gdk_fb_screen_angle.
2578         
2579         * gdk/linux-fb/gdkkeyboard-fb.c:
2580         Test code for screen rotation. Shift-F2 in the xlate driver
2581         rotates the screen.
2582
2583         * gdk/linux-fb/gdkmain-fb.c:
2584         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
2585
2586         * gdk/linux-fb/gdkmouse-fb.c:
2587         Use fb_width/height instead of modeinfo.xres/yres.
2588
2589         * gdk/linux-fb/gdkprivate-fb.h:
2590         Added fb_men, fb_width, fb_height & fb_stride. When using
2591         shadow fb these can differ from the framebuffer stuff.
2592         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
2593         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
2594         _gdk_fb_screen_angle. Removed CM, RP.
2595
2596         * gdk/linux-fb/gdkrender-fb.c:
2597         Added code for shadowfb handling and screen rotation using
2598         shadowfb.
2599
2600         * gdk/linux-fb/gdkwindow-fb.c:
2601         Use fb_mem, fb_stride, fb_width, fb_height.
2602         Added recompute_rowstride to reset the rowstride of all windows.
2603         Added gdk_fb_recompute_all() which recomputes rootwindow size,
2604         window abs positions and window rowstrides. Usefull when the
2605         rotation has changed.
2606
2607 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2608
2609         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2610
2611 2001-01-10  Havoc Pennington  <hp@redhat.com>
2612
2613         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2614         where sibling == iter
2615         (gtk_tree_store_insert_after): handle sibling == iter
2616         (gtk_tree_store_prepend): remove stamp checks
2617         (gtk_tree_store_insert_before): ditto
2618         (gtk_tree_store_append): ditto
2619         (gtk_tree_store_get_path): ditto
2620         (gtk_tree_store_get_value): ditto
2621         (gtk_tree_store_iter_has_child): ditto
2622         (gtk_tree_store_iter_n_children): ditto
2623         (gtk_tree_store_iter_nth_child): ditto
2624         (gtk_tree_store_insert_after): ditto
2625         (gtk_tree_store_is_ancestor): ditto
2626         (gtk_tree_store_iter_depth): ditto
2627         (gtk_tree_store_insert_before): assert that sibling's parent is
2628         the same as the passed-in parent
2629         (gtk_tree_store_insert_after): assert that sibling's parent is
2630         the same as the passed-in parent
2631
2632         
2633         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2634         function to get the first iterator in a model
2635         
2636         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2637         conventionally the "root" in this sense is just NULL afaict.
2638
2639         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2640         where sibling == iter
2641         (gtk_list_store_insert_after): handle case where sibling == iter
2642
2643         * tests/testtreeview.c (run_automated_tests): fairly lame basic
2644         automated tests for ListStore, TreeStore
2645
2646         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2647         (gtk_list_store_insert): update tail pointer, and fix it to work
2648         (gtk_list_store_insert_before): update tail pointer, and fix it to work
2649         (gtk_list_store_append): use tail to be faster
2650         (gtk_list_store_prepend): fix it, update tail pointer
2651         (gtk_list_store_insert_after): fix it, update tail pointer
2652
2653         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
2654         the list
2655
2656 2001-01-09  Havoc Pennington  <hp@redhat.com>
2657
2658         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2659         is NULL due to a pending resize
2660
2661         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2662         column width to values less than 1
2663
2664         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2665         width to be between min/max width, and still set the width 
2666         even if autosize is turned on, so the tree view can use this 
2667         function in order to autosize.
2668         (gtk_tree_view_column_init): set initial width to 1 not 0
2669
2670         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
2671         setter function to modify column width, so we get notification
2672         (gtk_tree_view_insert_iter_height): ditto
2673         (gtk_tree_view_calc_size): ditto
2674         (gtk_tree_view_check_dirty): ditto
2675
2676         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
2677         properties to change all the interesting attributes of the tree
2678         view column.
2679         (gtk_tree_view_column_set_header_clickable): rename set_clickable
2680         (gtk_tree_view_column_get_clickable): add
2681         (gtk_tree_view_column_set_cell_renderer): don't unset the current
2682         attributes; assume a cell renderer with equivalent object
2683         properties has been swapped in. Do g_object_notify().
2684         (gtk_tree_view_column_set_visible): g_object_notify
2685         (gtk_tree_view_column_get_sizing): rename from get_col_type
2686         (gtk_tree_view_column_set_sizing): g_object_notify
2687         (gtk_tree_view_column_set_width): add g_object_notify
2688         (gtk_tree_view_column_set_min_width): ditto
2689         (gtk_tree_view_column_set_max_width): ditto
2690         (gtk_tree_view_column_set_title): ditto
2691         (gtk_tree_view_column_set_clickable): ditto
2692         (gtk_tree_view_column_set_widget): ditto
2693         (gtk_tree_view_column_set_justification): ditto
2694
2695 2001-01-09  Havoc Pennington  <hp@redhat.com>
2696
2697         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
2698         there are no rows in the model
2699
2700         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
2701         NULL, then return the start of the list
2702
2703         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
2704         if we can't get any rows from an empty model 
2705
2706         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
2707         extraneous * after function pointer typedef usage
2708
2709         * Makefile.am: don't specify full path to cp and rm
2710
2711         * gtk/gtkcellrenderertextpixbuf.c
2712         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
2713         NULL before dereferencing, fixes a segfault that happened from
2714         time to time
2715
2716         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
2717         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
2718         and reindent the function
2719         (gtk_cell_renderer_pixbuf_get_size): indentation
2720
2721         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
2722         we quit it
2723         (gtk_dialog_add_buttons_valist): add g_return_if_fail
2724         (gtk_dialog_set_default_response): New function, to set default
2725         button
2726         (gtk_dialog_set_response_sensitive): New function, to set 
2727         sensitivity of buttons
2728
2729         * gtk/gtkcellrendererpixbuf.c
2730         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
2731         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
2732
2733         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2734         handle any G_TYPE_OBJECT subclass, not just the base class, and 
2735         also boxed types.
2736         (_gtk_tree_data_list_value_to_node): ditto
2737
2738         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
2739         --gtk-debug=tree
2740
2741         * gtk/gtkmain.c: add GTK_DEBUG_TREE
2742
2743         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
2744
2745 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2746
2747         * gdk/win32/gdkevents-win32.c: Implement better mouse
2748         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
2749         (find_window_for_pointer_event): New function.
2750         (gdk_event_translate): Use it when handling mouse events.
2751
2752 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
2753
2754         * configure.in:
2755         Added --with-included-loaders option
2756
2757         * gdk-pixbuf/Makefile.am:
2758         * gdk-pixbuf/gdk-pixbuf-io.c:
2759         Add support for including selected gdk-pixbuf loaders only.
2760
2761         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2762         gtk_window_set_has_frame):
2763         Added inline documentation.
2764
2765         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2766         * docs/reference/gdk/tmpl/windows.sgml:
2767         Added inline documentation.
2768
2769 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
2770
2771         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2772         realizing buttons that have already been realized.
2773
2774 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
2775
2776         * tests/testtreeview.c (main): Show menu items before adding to
2777         option menu.
2778
2779         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2780         around if we kill them.
2781
2782         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2783         Return if we pass in a NULL model.
2784
2785 2001-01-08  Havoc Pennington  <hp@redhat.com>
2786
2787         * tests/testtreeview.c: hack on this some
2788
2789         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2790         gtk_tree_store_set_valist, v is for arrays, valist for varargs
2791         list
2792         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2793
2794         * gtk/gtkliststore.h: Add varargs set() and get() convenience
2795         functions
2796
2797 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2798
2799         * gtk/gtkwindow-decorate.[hc]:
2800         * gtk/Makefile.am:
2801         New files. Contains an implementation of a minimal WM for
2802         linux-fb.
2803
2804         * gtk/gtkwindow.h:
2805         Add the possibility for GtkWindows to specify a frame. This
2806         is used for the window decoration code, but could concievably
2807         be used for X programs too (xmms style windows).
2808         GtkWindow->frame is the toplevel window if the window is framed.
2809         The signal frame_event gets all events that are targeted to
2810         GtkWindow->frame.
2811         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2812         
2813         * gtk/gtkwindow.c:
2814         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2815         Call out to gtkwindow-decorate.c for WM support in linx-fb.
2816
2817 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2818
2819         * docs/README.linux-fb:
2820         Correct filename ~/.pangoft2_aliases
2821
2822         * gdk/gdkwindow.h:
2823         Added new function gdk_window_get_decorations.
2824
2825         * gdk/linux-fb/gdkfb.h:
2826         Removed _gdk_window_get_decorations declaration.
2827         Renamed _gdk_window_set_child_handler to
2828         gdk_fb_window_set_child_handler.
2829
2830         * gdk/linux-fb/gdkwindow-fb.c:
2831         Renamed _gdk_window_set_child_handler to
2832         gdk_fb_window_set_child_handler.
2833
2834         * gdk/x11/gdkwindow-x11.c:
2835         New function gdk_window_get_mwm_hints().
2836         Implemented gdk_window_get_decorations.
2837
2838         * docs/reference/gdk/tmpl/windows.sgml:
2839         * docs/reference/gdk/gdk-sections.txt:
2840         Added gdk_window_get_decorations docs.
2841         
2842 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
2843
2844         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2845         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2846         gdk_fb_window_send_crossing_events):
2847         Possibly send focus events when the mouse moves from one
2848         window to another.
2849
2850 2001-01-07  Tor Lillqvist  <tml@iki.fi>
2851
2852         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2853         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2854         to match current API.
2855
2856         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2857         environment variable is set, don't call g_error when on a
2858         palettized (PseudoColor) display. Some people want to use GTK+ 
2859         in 256-colour mode even though works only partially.
2860
2861         * gdk/gdk.def
2862         * gtk/gtk.def
2863         * gtk/makefile.mingw.in: Update.
2864
2865 2001-01-05  Havoc Pennington  <hp@redhat.com>
2866
2867         * tests/testtreeview.c: hack on this a bit
2868
2869         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2870         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2871
2872         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
2873         was spelled incorrectly
2874         (GTK_IS_TREE_MODEL_SIMPLE): ditto
2875
2876         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2877         from gtk_tree_view_set_headers_active   
2878
2879         * gtk/gtktexttag.c:
2880         (gtk_text_tag_get_property): handle PROP_DIRECTION
2881         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2882         properties, bug 40235
2883
2884         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2885         forward_to_line_end
2886
2887 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
2888
2889         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2890         modules/input/gtkimcontextxim.c: Adapt to new prototypes
2891         for unicode,locale,filename conversion functions.
2892
2893 2001-01-05  Havoc Pennington  <hp@redhat.com>
2894
2895         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2896         broken if called on the first position in the buffer.
2897
2898         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2899         forward_to_delimiters to be called only if we aren't already at
2900         the delimiters.
2901
2902 2001-01-05  Havoc Pennington  <hp@redhat.com>
2903
2904         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2905
2906 2001-01-05  Alexander Larsson  <alexl@redhat.com>
2907
2908         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2909         colormap in here. Sync from X port.
2910         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2911         Sync from X port.
2912         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2913         This happens now and then, and i don't think it is a bug.
2914         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2915         != endpoint.
2916         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2917         GDK_LINE_SOLID.
2918
2919         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2920         some of the fields filled in at least.
2921
2922         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2923         miLineArcD is no more, remove it from the function definition.
2924
2925 2001-01-04  Havoc Pennington  <hp@redhat.com>
2926
2927         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2928         this
2929
2930         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2931         user_data instead of tree_node
2932
2933         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2934         TREE_VIEW_COLUMN_SIZE
2935
2936         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2937         "size" field to "width" finishes bug 40061
2938
2939         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2940         for bitfields, bug 40268
2941
2942 2001-01-04  Havoc Pennington  <hp@redhat.com>
2943
2944         Rename some stuff:
2945         
2946         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2947
2948         s/GtkModelSimple/GtkTreeModelSimple/g;
2949         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2950         s/gtk_model_simple/gtk_tree_model_simple/g;
2951         s/gtkmodelsimple/gtktreemodelsimple/g;
2952
2953         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2954
2955         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2956         s/column_set_col_type/column_set_sizing/g;
2957
2958         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2959         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2960
2961         s/GtkCellRendererType/GtkCellRendererState/g;
2962         
2963         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2964         (gtk_cell_renderer_toggle_class_init): change "state" property to
2965         "active", to match GtkToggleButton
2966         (gtk_cell_renderer_toggle_get_active): new function, bug
2967         40269
2968         (gtk_cell_renderer_toggle_set_active): new function
2969         (gtk_cell_renderer_toggle_set_property): route changes to toggle
2970         state through gtk_cell_renderer_set_active
2971
2972 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
2973
2974         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2975         temporarily until they work again.  Brought up to date with
2976         changes in the model.
2977         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2978         model.
2979
2980 2001-01-04  Havoc Pennington  <hp@redhat.com>
2981
2982         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2983         equal to the line length, then position iterator before paragraph 
2984         separators. Fixes crash reported by Mikael Hermansson when
2985         pressing left arrow from the start of a line.   
2986
2987         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2988         about byte indexes off the end
2989         (iter_set_from_char_offset): add g_error about char offsets
2990         off the end
2991
2992 2001-01-03  Havoc Pennington  <hp@redhat.com>
2993
2994         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2995
2996         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
2997         of private functions; remove inclusion of private headers.
2998
2999         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
3000         function, so we don't need private functions in gtktextdisplay.c
3001
3002         * gtk/gtktextiterprivate.h: underscore-ification
3003
3004         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
3005         to instead say "only useful to implement widgets"
3006
3007         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
3008         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
3009         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
3010
3011         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
3012         This function was completely broken
3013
3014         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
3015
3016         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
3017
3018         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
3019
3020         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
3021
3022         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
3023
3024         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
3025
3026         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
3027         gtk_paint_layout
3028
3029         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
3030         gtk_paint_layout
3031
3032         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
3033         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
3034         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
3035         which were not implemented.     
3036
3037         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
3038         insert_pixbuf signal. Rename delete_text to delete_range since it
3039         also deletes pixbufs and child anchors. This almost closes bug
3040         40245 (still need to deal with child anchors)
3041
3042         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
3043         insert_pixbuf, change signal names as appropriate, change types of
3044         signals taking marks/tags to have the specific type, not just
3045         G_TYPE_OBJECT
3046         
3047         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
3048         closes bug 40051
3049
3050         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
3051         unnecessary remove_contents() call
3052         (gtk_option_menu_class_init): add a "changed" signal, closes
3053         bug 40039
3054         (gtk_option_menu_update_contents): emit "changed" if the 
3055         active menu item changes
3056
3057         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
3058         cast to GtkObject, reported by Jonas Borgstrom
3059         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
3060         we can't do stuff with side effects in finalize. Instead, spew a
3061         warning if the loader isn't closed.
3062
3063         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
3064         colormap in here, non-X ports probably need to sync to this change
3065
3066         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
3067         assertion that colormap != NULL, you can set the colormap to NULL
3068         if you like.
3069         
3070         * Makefile.am: remove gtk-config-2.0
3071
3072         * configure.in: Use pkg-config to locate GLib. Remove
3073         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
3074         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
3075         Use pkg-config to locate Pango. Output correct Pango libs to
3076         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
3077
3078         * Makefile.am (pkgconfig_DATA): install only target-specific pc
3079         files
3080         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
3081         X11 pc files
3082
3083         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
3084         unref from here
3085
3086 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
3087
3088         * configure.in:
3089         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
3090
3091 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3092
3093         * gtk/gtktextlayout.c
3094         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
3095         variable when moving back onto a single line.
3096
3097 2001-01-01  Havoc Pennington  <hp@redhat.com>
3098
3099         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3100
3101         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3102
3103         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
3104         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
3105
3106 2001-01-01  Havoc Pennington  <hp@redhat.com>
3107
3108         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
3109
3110         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
3111         GtkTextAttributes
3112
3113         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
3114         #40246
3115         (gtk_text_attributes_copy_values): rename from 
3116         gtk_text_attributes_copy
3117         (gtk_text_attributes_copy): a more standard GTK copy function, 
3118         which returns a new object
3119
3120 2001-01-01  Havoc Pennington  <hp@redhat.com>
3121
3122         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
3123         
3124         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
3125         don't fill in tree_view->priv->selection, kind of an unexpected
3126         side effect
3127
3128         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
3129         gtkintl.h
3130         
3131         * gtk/gtkcellrenderer.c: Remove definition of _ and include
3132         gtkintl.h
3133         (gtk_cell_renderer_get_property): remove calls to g_value_init
3134
3135         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
3136         gtkintl.h
3137
3138         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
3139         and include gtkintl.h
3140         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
3141         property names
3142
3143         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
3144         GtkTreeSelection
3145         (_gtk_tree_selection_new_from_with_view): rename, return
3146         GtkTreeSelection
3147         (_gtk_tree_selection_set_tree_view): rename with uscore
3148         (gtk_tree_selection_get_selected): fill in the "model" out param
3149         first, so it gets filled in even if we return at the top of the 
3150         function
3151         (gtk_tree_selection_real_select_all): add a comment and an else{}
3152         to clarify this a bit
3153         (gtk_tree_selection_real_unselect_all): add the same else{}
3154
3155         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
3156         set_tree_view to have underscore prefixes, move them to the
3157         private header, fix return type of new_with_tree_view
3158         (struct _GtkTreeSelection): mark struct
3159         fields private  
3160
3161         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
3162         GtkTreeModelFlags, not a guint
3163         (gtk_tree_path_prev): return gboolean not gint
3164         (gtk_tree_path_up): return gboolean not gint
3165
3166         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
3167         return GtkTreeModelFlags, not a guint
3168
3169         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
3170         that child model is non-null before unrefing it
3171         (g_value_int_compare_func): make this a qsort compare func, not 
3172         a boolean predicate
3173
3174         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
3175         (add -umn to the end), and mark it unimplemented
3176         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
3177         I don't see what it's for - doesn't the model always sort itself?
3178         (gtk_tree_model_sort_set_compare): this had the wrong signature
3179
3180         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
3181         Fix the docs to say that it destructively replaces existing
3182         attributes (previously said that it added attributes).
3183         (gtk_tree_view_column_set_visible): canonicalize bool before
3184         equality testing. Also, check for realization before
3185         hiding/showing the tree_column->window; if this window could exist
3186         before realization, then it's busted and needs fixing, we can't 
3187         create GDK resources pre-realization. Also, remove
3188         superfluous queue_resize(), since set_size() does that for us.
3189         (gtk_tree_view_column_set_col_type): check realization before 
3190         using tree_column->window
3191
3192         * gtk/gtktreedatalist.c: fix filename in copyright notice
3193
3194 2000-12-31  Havoc Pennington  <hp@pobox.com>
3195
3196         * gtk/gtktextview.c: Rearrange all the
3197         scroll-while-dragging-or-selecting code to be different, not
3198         necessarily better. ;-)
3199         (gtk_text_view_scroll_to_mark): Change this
3200         function to take within_margin as a fraction instead of a pixel
3201         value, and to take alignment arguments (indicating where to align 
3202         the mark inside the visible area)
3203         
3204         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
3205         to GtkObject
3206
3207         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
3208         behavior so that offsets past the end of the line are not 
3209         allowed, and an offset equal to the line length moves the iterator
3210         to the next line
3211         (gtk_text_iter_set_line_index): make parallel change
3212         (gtk_text_iter_get_bytes_in_line): add this function
3213         
3214         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
3215         of byte indexes off the end of the line; byte index at the end of
3216         the line now returns FALSE and doesn't fill in the requested
3217         values, byte index past the end of the line is an error.  Also,
3218         don't allow -1 offset anymore, since its meaning is unclear.
3219
3220         This change exposes some bug in visual cursor motion, where we
3221         end up with a huge invalid byte index; needs fixing. Symptom of 
3222         bug is a crash when you hit up arrow.
3223         
3224         (_gtk_text_line_char_locate): match the change to byte_locate
3225
3226         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
3227         from start of line properly. fixes bug reported by Mikael
3228         Hermansson where backspace would delete all text before the
3229         cursor.
3230
3231 2000-12-30  Tor Lillqvist  <tml@iki.fi>
3232
3233         * gdk/win32/gdkwindow-win32.c
3234         (gdk_window_impl_win32_get_visible_region): New function, as in
3235         the X11 backend.
3236         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
3237         instead of duplicating the same code here.
3238
3239         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
3240         GDK_COLORMAP macro.
3241
3242         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
3243         destroy function.
3244         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
3245         access that.
3246
3247         * gtk/gtk.def: Update.
3248
3249         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
3250
3251 2000-12-30  Havoc Pennington  <hp@pobox.com>
3252
3253         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
3254         colormap on input only windows, to avoid special cases all over
3255         the code for these windows.
3256
3257 2000-12-26  Tor Lillqvist  <tml@iki.fi>
3258
3259         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
3260         we are on a palettized display ("PseudoColor" in X11), as the code
3261         for that doesn't work anyway, and never has.
3262
3263 2000-12-22  Alexander Larsson  <alexl@redhat.com>
3264
3265         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
3266         Don't use isprint() for chars > 255.
3267
3268 2000-12-21  Havoc Pennington  <hp@redhat.com>
3269
3270         * tests/testtreeview.c: more work
3271
3272 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3273
3274         * docs/README.linux-fb:
3275         Update the docs to the new pangoft2 way.
3276
3277 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3278
3279         * configure.in:
3280         For linux-fb get the pangoft2 cflags and libs. This needs a recent
3281         pango version.
3282         Remove modules/linux-fb/Makefile.
3283
3284         * gdk/linux-fb/gdkdrawable-fb2.c:
3285         Render glyphs using freetype.
3286
3287         * gdk/linux-fb/gdkfb.h:
3288         Add new fb-specific functions needed for managing windows.
3289
3290         * gdk/linux-fb/gdkmain-fb.c:
3291         Remove gdk_font_init/fini() calls.
3292
3293         * gdk/linux-fb/gdkpango-fb.c:
3294         Remove old implementation. Use pangoft2 instead.
3295
3296         * gdk/linux-fb/gdkprivate-fb.h:
3297         Remove PangoFBFont and related stuff.
3298
3299         * gdk/linux-fb/gdkwindow-fb.c:
3300         Implement drawable->get_visible_region.
3301         Implement support for _gdk_window_set_child_handler () and
3302         _gdk_window_get_decorations().
3303
3304         * modules/Makefile.am:
3305         Remove linux-fb subdir.
3306
3307         * modules/linux-fb/*:
3308         Removed all.
3309         
3310 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
3311
3312         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
3313         calls, as they are no longer needed.
3314
3315         * gtk/gtktreemodelsort.c: Fix up the comparison code.
3316         
3317         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
3318         figure out how to emit a signal on an interface.
3319
3320 2000-12-20  Havoc Pennington  <hp@redhat.com>
3321
3322         * tests: new directory to contain tests, gtk/test* should move
3323         here sometime (with appropriate on-cvs-server hackery)
3324
3325         * tests/testtreeview.c, tests/Makefile.am: a test
3326         
3327         * configure.in (AC_OUTPUT): add tests/Makefile
3328
3329         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
3330         and "invisible_set" which were missing
3331
3332         * gtk/gtkrbtree.h: some cheesy indentation fix
3333         
3334 2000-12-20  Alexander Larsson  <alexl@redhat.com>
3335
3336         * gtk/gtkinvisible.c (gtk_invisible_realize):
3337         Attach the style to the window so that the style it is not
3338         leaked when unrealizing the window.
3339
3340 2000-12-18  Havoc Pennington  <hp@redhat.com>
3341
3342         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
3343         begin/end user action where appropriate
3344         (gtk_text_view_commit_handler): add begin/end user action
3345
3346         * gtk/gtktextbuffer.c: add begin/end user action signals, and
3347         bracket interactive operations with begin/end user action pair.
3348         
3349         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
3350         "interactive" arg from insert_text and delete_text signals.
3351         Add begin_user_action, end_user_action signals
3352         (gtk_text_buffer_begin_user_action): 
3353         (gtk_text_buffer_end_user_action): New functions to delimit 
3354         a user-visible action
3355
3356         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
3357         signals.
3358         
3359 2000-12-18  Havoc Pennington  <hp@redhat.com>
3360
3361         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
3362         was pretty non-working.
3363
3364         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
3365         by passing the length to g_utf8_validate().
3366
3367 2000-12-16  Havoc Pennington  <hp@pobox.com>
3368
3369         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
3370         Port to GObject, can go back in gdk-pixbuf after setting up 
3371         a gdk-pixbuf-marshal.h header over there.
3372
3373         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
3374         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
3375         args
3376         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
3377         set
3378         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
3379         here, do it when we create the buttons later
3380         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
3381         (gtk_tree_view_map): paranoia checks that column->button is shown 
3382         and unmapped
3383         (gtk_tree_view_size_request): only request visible children.
3384         Move header size calculation in here, for cleanliness, and 
3385         to maintain invariants for child widgets if we eventually 
3386         let users set different children inside the buttons
3387         (gtk_tree_view_map_buttons): factor out code to map buttons,
3388         since it was being called several times
3389         (gtk_tree_view_size_allocate_buttons): move_resize the drag
3390         windows instead of just moving them; their height may change 
3391         if we allow random widgets in there, or the theme changes.
3392         (gtk_tree_view_size_allocate): move button size allocation 
3393         above emitting the scroll signals, to ensure a sane state when we
3394         hit user code
3395         (gtk_tree_view_button_release): remove queue_resize after
3396         tree_view_set_size(), set_size() will handle any resize queuing
3397         that's needed
3398         (gtk_tree_view_focus_in): just queue a draw, don't fool with
3399         draw_focus goo
3400         (gtk_tree_view_focus): use gtk_get_current_event() and
3401         gdk_event_get_state()
3402         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
3403         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
3404         semicolon
3405         (gtk_tree_view_create_button): show the button here
3406         (gtk_tree_view_button_clicked): actually emit the clicked signal
3407         on the column
3408         (_gtk_tree_view_set_size): return right away if the size is
3409         unchanged, as a cheesy optimization
3410         (gtk_tree_view_setup_model): rename set_model_realized to 
3411         setup_model to match the flag that indicates whether we've 
3412         called it
3413         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
3414         exist, because set_scroll_adjustment does that and it shouldn't
3415         matter what order you call these in
3416         (gtk_tree_view_get_vadjustment): ditto
3417         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
3418         for paranoia
3419         (gtk_tree_view_set_headers_visible): call
3420         gtk_tree_view_map_buttons() instead of using cut-and-paste code
3421         (gtk_tree_view_append_column): clarify whether the return value
3422         is the count of columns before or after, and do the increment 
3423         separately from the return statement so you can tell from the code.
3424         (gtk_tree_view_remove_column): ditto
3425         (gtk_tree_view_insert_column): ditto
3426         (gtk_tree_view_get_column): remove g_return_if_fail for columns
3427         outside the existing range, the docs say that outside-range
3428         columns are allowed, so we handle them as documented. (Presumably
3429         this allows a nice loop with column != NULL as test.)
3430         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
3431         mean (left/right/center etc.).
3432         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
3433         (gtk_tree_view_expand_row): add docs
3434         (gtk_tree_view_collapse_row): add docs
3435
3436         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
3437         function to emit the clicked signal on a column
3438         
3439         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
3440         state of an event
3441         (gdk_event_get_time): don't treat GDK_SCROLL 
3442         as a button event, remove default case from switch so gcc 
3443         will whine if we don't explicitly handle all event types
3444
3445         * gtk/gtktreeselection.h: added some FIXME 
3446         
3447         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
3448         "columns" to "n_columns" and "column" to "columns" for clarity
3449
3450 2000-12-16  Havoc Pennington  <hp@pobox.com>
3451         
3452         * gtk/gtktextiter.c: General cleanup of the log attr iteration
3453         stuff. This should make e.g. the delete key work again in the
3454         text widget...
3455         (gtk_text_iter_forward_cursor_positions): handle negative count
3456         (gtk_text_iter_backward_cursor_positions): handle negative count
3457         (gtk_text_iter_forward_word_ends): handle negative count
3458         (gtk_text_iter_backward_word_starts): handle negative count
3459
3460         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
3461         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
3462         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
3463         GObject. No doubt will cause breakage.
3464
3465         * demos/gtk-demo/textview.c: remove hacks around
3466         non-GObject-ification of the text objects
3467
3468         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
3469         the text tag
3470         
3471 2000-12-14  Havoc Pennington  <hp@pobox.com>
3472
3473         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
3474         that we have Xrender
3475
3476 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
3477
3478         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
3479         Add two virtualized functions gdk_drawable_get_clip_region - to
3480         get the clip region when drawing.
3481         
3482         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
3483         use invalidate_region.
3484
3485         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
3486         region.
3487
3488         * acconfig.h configure.in: Check for Xft. For now, assume
3489         that if Xft is found, Pango was compiled with Xft support
3490         as well.
3491
3492         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
3493         gdk_colormap_query_color().
3494         
3495         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
3496         with Xft if appropriate.
3497
3498         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
3499         a pangoxft context if we have XFT and the environment
3500         variable GD_USE_XFT is set.
3501         
3502         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
3503         and also possibly an XftDraw structure.
3504
3505         * gtk/gtkfontsel.c: Handle the case where the font from the
3506         style doesn't match any of the fonts a bit better.
3507         
3508         * gtk/testgtk.c: Add tabs between directional segments for
3509         hebrew/arabic test. (Not really necessary, just a little
3510         prettier.)
3511
3512 2000-12-14  Havoc Pennington  <hp@redhat.com>
3513
3514         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
3515         reading a file
3516
3517 2000-12-14  Havoc Pennington  <hp@redhat.com>
3518
3519         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
3520         unused call to get_last_line()
3521
3522         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
3523         here until boxed is working (and maybe after that - we should
3524         really not gratuitously break old code)
3525
3526         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
3527         specific types for font_desc and tabs args, move them to
3528         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
3529         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
3530
3531         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
3532         use GTK_TYPE_POINTER for signal signatures as a hack-around
3533
3534         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
3535         PangoTabArray
3536
3537         * gtk/gtktextlayout.c (line_display_iter_to_index): 
3538         make static
3539         (line_display_index_to_iter): make static
3540
3541         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3542         to marshal a string not a boxed
3543
3544         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
3545
3546         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
3547         since the UTF-8 isn't validated yet
3548
3549         * gtk/gtktextsegment.c (char_segment_check_func): don't require
3550         lines to end in '\n'
3551         
3552         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
3553         forward_to_delimiters, and grapheme boundaries
3554         (gtk_text_view_delete_from_cursor): properly handle non-newline
3555         delimiters, and grapheme boundaries
3556
3557         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
3558         to gtk_text_iter_forward_to_delimiters, and make it work properly
3559         if empty lines end with a character other than '\n'
3560
3561         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
3562         position
3563
3564 2000-12-15  Tor Lillqvist  <tml@iki.fi>
3565
3566         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
3567
3568         * gtk/gtk.def
3569         * gdk/gdk.def: Update.
3570
3571         * gdk/win32/gdkmain-win32.c
3572         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
3573         gdkmain-win32.c here.
3574
3575         * gdk/win32/makefile.mingw.in (all): No need to make
3576         gdk-win32res.o here, the makefile one step up will call us to make
3577         it.
3578
3579         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
3580         gdkkeys-win32.
3581
3582         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
3583
3584         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
3585         call to g_source_add().
3586
3587         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
3588         leak. Thanks to Andreas Kemnade.
3589
3590 2000-12-13  Havoc Pennington  <hp@pobox.com>
3591
3592         * gtk/gtktextbtree.h: Remove double _ in front of some functions
3593
3594         * gtk/gtktext*.[hc]: update accordingly
3595         
3596 2000-12-13  Havoc Pennington  <hp@pobox.com>
3597
3598         * gtk/gtktextbtree.h: Put _ in front of every function in this 
3599         header file
3600
3601         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
3602
3603 2000-12-13  Alex Larsson  <alexl@redhat.com>
3604
3605         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
3606         Add support for ps2 intellimouse.
3607
3608         * gdkkeyboard-fb.c:
3609         Move shift-F1 repaint handling to xlate handler only.
3610         
3611         * docs/README.linux-fb:
3612         Add imps2 to docs.
3613         Document the new refresh keys.
3614         
3615 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3616
3617         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3618
3619         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3620         ::position and ::padding.
3621
3622         * gtk/gtkcontainer.c: make ::border_width an INT property.
3623
3624         * gtk/gtkpacker.c: make ::position an INT property.
3625
3626         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3627         guard against NULL h/v scrollbars, since this is used at construction
3628         time.
3629
3630         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3631         internal gtk_clist_constructor().
3632
3633         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3634         gtk_ctree_constructor().
3635
3636         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3637         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3638
3639         * docs/reference/Makefile.am: fun stuff, disabled docs generation
3640         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3641
3642         * gtk/gtkwidget.[hc]:
3643         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3644         and gtk_widget_get().
3645         (gtk_widget_new): use g_object_new_valist().
3646         (gtk_widget_set): use g_object_set_valist().
3647
3648         * gtk/gtkobject.[hc]:
3649         removed gtk_object_arg_get_info(), gtk_object_getv(),
3650         gtk_object_query_args(), gtk_object_newv(),
3651         gtk_object_class_add_signals(),
3652         gtk_object_class_user_signal_new(),
3653         gtk_object_class_user_signal_newv(),
3654         gtk_object_arg_set(), gtk_object_arg_get(),
3655         gtk_object_args_collect(),
3656         gtk_object_default_construct(),
3657         gtk_object_constructed(),
3658         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3659         removed nsignals, signals and n_args members from GtkObjectClass.
3660         (gtk_object_new): use g_object_new_valist().
3661         (gtk_object_set): use g_object_set_valist().
3662         (gtk_object_get): use g_object_get_valist().
3663         
3664         * gtk/gtkcompat.h: define gtk_object_default_construct().
3665         
3666         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3667         g_object_new().
3668
3669         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3670         fucntions, cleaned up method assignments (make sure your structures
3671         are setup properly before calling out). removed all GTK_CONSTRUCTED
3672         hacks ;)
3673
3674 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
3675
3676         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
3677         off-by-one error in checks. (Dave Lambert)
3678
3679 2000-12-12  Alexander Larsson  <alexl@redhat.com>
3680
3681         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
3682         Don't free gdk_fb_keyboard twice.
3683
3684 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
3685
3686         * gtk/testgtk.c:
3687         (create_tooltips): 
3688         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
3689         use GObject swapped_signal:: properties instead.
3690
3691         * gtk/gtkcellrenderertoggle.c: 
3692         * gtk/gtkcellrenderertextpixbuf.c: 
3693         * gtk/gtkcellrenderertext.c: 
3694         * gtk/gtkcellrendererpixbuf.c: 
3695         * gtk/gtkcellrenderer.c:
3696         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
3697         missing warnings for invalid property ids, install properties
3698         with g_object_class_install_property() now.
3699         
3700         * gtk/gtksignal.c:
3701         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
3702         
3703 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
3704         
3705         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
3706         to determine if a window is the focus widget within
3707         its toplevel.
3708
3709         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
3710         to be boolean.
3711
3712         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
3713         of the case where the container CAN_FOCUS to here instead
3714         of having it in each individual move-the-focus place.
3715
3716         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
3717         focusing to be geometric in a much more obvious sense. Arrowing
3718         around is still non-intuitive because it isn't perfect and
3719         because entries, etc, grab the arrow keys, but it at least
3720         usually will do what you expect now.
3721         
3722         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
3723         file.
3724
3725         * gtk/gtknotebook.c: Change tabs to be a single item in
3726         the focus chain. Make movement of focus on tabs with arrow
3727         keys wrap around.
3728         
3729         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
3730         CHECK_FIND_CHILD macro to give informative error messages
3731         instead of silent returns.
3732
3733         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
3734         flag since we handle GdkReturn on the tabs.
3735
3736         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
3737         windows rather than sending expose events directly.
3738
3739         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
3740         definition for GtkNotebookPage into .c file, since it is private.
3741
3742         * gtk/testgtk.c (create_notebook): Add option for 
3743         testing borderless notebook.
3744
3745         * gtk/testgtk.c (page_switch): Removed egregious poking
3746         around in GTK+ internals.
3747
3748         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
3749
3750         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
3751         properly through gtk_clist_focus. Make the title headers a
3752         single item in the tab-focus chain, and make left-right wrap
3753         around.
3754
3755         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3756         focus method so that wrapping around works properly.
3757
3758         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
3759         that is handled for the widget now. 
3760
3761 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
3762
3763         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3764         widgets as TOPLEVEL.
3765
3766         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3767         TOPLEVEL widgets are containers.
3768
3769         * gtk/gtkinvisible.h: Remove useless include.
3770
3771 2000-12-11  Havoc Pennington  <hp@redhat.com>
3772
3773         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
3774         Handle chopping off \r\n and 0x2029 in addition to \n before
3775         passing to PangoLayout
3776
3777         * gtk/gtkimcontextsimple.c
3778         (gtk_im_context_simple_get_preedit_string): 
3779         return an empty string if no match is pending
3780
3781         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3782         assertion that the returned preedit string was sane
3783
3784         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3785         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3786         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3787
3788 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
3789
3790         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
3791         Fix up finalizer to chain to its parent.
3792
3793 2000-12-11  Alexander Larsson  <alexl@redhat.com>
3794
3795         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3796         Clearified the difference between the keyboard types. Wrote a note
3797         about the magic sysrq key to get out of raw mode.
3798
3799 2000-12-09  James Henstridge  <james@daa.com.au>
3800
3801         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3802         member to hold masks for detecting the start of a protocol packet.
3803         (mouse_devs): add packet start masks for ps2 and ms device types.
3804         Left the mask for fidmour blank, as I have no idea what it should
3805         be.
3806         (handle_mouse_io): skip bytes until we get to the start of a
3807         packet.  My Logitech mouse seems to be passing an extra NULL pad
3808         byte, and GPM does a similar thing here.
3809         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3810         this is the ms mouse driver.
3811         (gdk_fb_mouse_ms_packet): fix up button handling, which was
3812         completely broken except for button1.  It was checking the wrong
3813         bit in the packet for the status of the right mouse button, and
3814         wrongly assuming right == button2 rather than 3.  I fixed that and
3815         also added support for middle button (button2).
3816
3817 2000-12-08  Havoc Pennington  <hp@redhat.com>
3818
3819         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3820         that cause a segfault on text insertion
3821
3822         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
3823         warning
3824
3825         * gtk/gtktextiter.c (test_log_attrs): use
3826         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3827
3828         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
3829         Get log attrs for a line, using a cache stored on the buffer
3830         
3831         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3832         reported by Jeff Franks
3833
3834 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3835
3836         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3837         /dev/ttyS0 -> /dev/mouse
3838
3839 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3840
3841         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3842         Added dummy gdk_fontset_load.
3843
3844 2000-12-08  Alexander Larsson  <alexl@redhat.com>
3845
3846         * docs/README.linux-fb:
3847         * docs/Makefile.am:
3848         Initial GtkFB docs.
3849         
3850         * gdk/linux-fb/Makefile.am:
3851         Define GDK_DATA_PREFIX.
3852
3853         * gdk/linux-fb/gdkmain-fb.c:
3854         Fix typo.
3855         Change default display to /dev/fb0.
3856
3857         * gdk/linux-fb/gdkpango-fb.c:
3858         Add $(prefix)/share/fonts/ to font path.
3859         
3860 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3861
3862         * gdk/linux-fb/gdkkeyboard-fb.c:
3863         New file containing the abstracted keyboard driver. Most code
3864         taken from gdkinput-ps2.c
3865
3866         * gdk/linux-fb/gdkinput-ps2.c:
3867         Removed file.
3868         
3869         * gdk/linux-fb/Makefile.am:
3870         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3871
3872         * gdk/linux-fb/gdkcolor-fb.c:
3873         display->fb was renamed to display->fb_fd.
3874
3875         * gdk/linux-fb/gdkcursor-fb.c:
3876         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3877
3878         * gdk/linux-fb/gdkinput.c:
3879         Moved gdk_input_init here from gdkinput-ps2.c
3880
3881         * gdk/linux-fb/gdkmain-fb.c:
3882         display->fb was renamed to display->fb_fd.
3883         Now the tty and the console is opened here instead
3884         of in the keyboard driver. Also check GDK_VT to see what
3885         tty to open.
3886         Move gdk_beep () here from gdkinput-ps2.c
3887         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3888
3889         * gdk/linux-fb/gdkmouse-fb.c:
3890         Add header.
3891         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3892         Return correct keyboard modifiers.
3893         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3894
3895         * gdk/linux-fb/gdkprivate-fb.h:
3896         Add tty and vt info to display.
3897         Add orignal modeinfo storage to display
3898         Update global functions
3899
3900         * gdk/linux-fb/gdkwindow-fb.c:
3901         Added gdk_fb_window_find_focus().
3902         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3903
3904 2000-12-07  Havoc Pennington  <hp@pobox.com>
3905
3906         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
3907         function, noticed by Alex
3908
3909 2000-12-06  Elliot Lee  <sopwith@redhat.com>
3910
3911         * configure.in: Detect freetype properly
3912
3913         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3914         above.
3915
3916 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3917
3918         * gdk/linux-fb/Makefile.am:
3919         Add gdkmouse-fb.c
3920         
3921         * gdk/linux-fb/gdkmouse-fb.c:
3922         New file. Abstracted the mouse drivers a bit.
3923
3924         * gdk/linux-fb/gdkcursor-fb.c:
3925         The cursor hide/show functions was moved here from gdkinput-ps2.c.
3926
3927         * gdk/linux-fb/gdkinput-ps2.c:
3928         Removed old mouse handling code. Moved cursor handling code
3929         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3930         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3931         gdk_mouse_get_info.
3932
3933         * gdk/linux-fb/gdkmain-fb.c:
3934         Pass NULL pointers for x,y in gdk_mouse_get_info call.
3935
3936         * gdk/linux-fb/gdkprivate-fb.h:
3937         Removed public gdk_fb_find_common_ancestor, added and renamed
3938         functions for the new mouse handling code.
3939
3940         * gdk/linux-fb/gdkwindow-fb.c:
3941         Moved gdk_fb_window_send_crossing_events here. added global
3942         variable gdk_fb_window_containing_pointer. made
3943         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3944         renamed to gdk_mouse_get_info.
3945
3946 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3947
3948         * gdk/linux-fb/gdkevents-fb.c:
3949         Update to match latest gmain/gsource changes.
3950
3951         * gdk/linux-fb/gdkinput-ps2.c:
3952         Bogus gdk_keymap_get_entries_for_keycode implementation so that
3953         it links. Will be implemented later.
3954
3955 2000-12-03  Havoc Pennington  <hp@pobox.com>
3956
3957         * gdk/Makefile.am: add gdkkeys.[hc]
3958
3959         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3960         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3961
3962         * acconfig.h, configure.in: add checks and command line options
3963         for XKB
3964
3965         * gdk/x11/gdkkeys-x11.c: Implement the above functions
3966         
3967         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3968         and group in the key event
3969
3970         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3971         field with the low-level hardware key code, and a group
3972         field with the keyboard group
3973
3974         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3975         and declare a couple globals used for keymap handling
3976         
3977         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3978         hold down Shift-Control and type a hex number to get a Unicode 
3979         character corresponding to the hex number
3980         (gtk_im_context_simple_get_preedit_string): Fix cursor position
3981         (return bytes not chars)
3982
3983 2000-12-05  Elliot Lee  <sopwith@redhat.com>
3984
3985         * gdk/gdkcolor.h: Make GdkColor specify element sizes
3986         to avoid waste on 64-bit platforms.
3987
3988 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
3989
3990         * INSTALL: Fix link to PNG home, remove reference
3991         to fribidi.
3992
3993         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3994         
3995         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3996         tested.)
3997
3998         * gtk/gtkcheckmenuitem.c: Permanently turn on
3999         always_show_toggle.
4000
4001         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
4002         be NULL. (Vladimir Klebanov, #26545)
4003
4004         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
4005         some signed/unsigned comparison problems. (#6510,
4006         David Kaelbling)
4007
4008         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
4009         return type to boolean (Oskar Liljeblad, #18648)
4010
4011 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4012
4013         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
4014         Remove bogus colormap setting.
4015
4016 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4017
4018         * gdk/linux-fb/gdkcolor-fb.c:
4019         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
4020
4021         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
4022         Must set colormap.
4023         
4024 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
4025
4026         * docs/tutorial/gtk-tut.sgml: DND updates
4027
4028 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
4029
4030         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4031         Remove old debug g_warning().
4032         (gdk_fb_draw_drawable): The src argument can be either a wrapper
4033         or an implementation, just pass the implementation to draw_drawable_2.
4034         
4035         * gdk/linux-fb/gdkprivate-fb.h:
4036         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
4037
4038         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4039         clear and invalidate area when window is destroyed.
4040         (send_map_events): Remove old commented out code.
4041
4042 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4043
4044         * gdk/linux-fb/gdkpango-fb.c:
4045         Use italic instead of oblique in font aliases.
4046         
4047         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
4048         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
4049         other unsupported functions.
4050
4051 2000-12-04  Havoc Pennington  <hp@redhat.com>
4052
4053         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
4054
4055         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
4056
4057         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
4058
4059         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
4060         hack to avoid infinite loops (synthetic expose event) - 
4061         Owen has more appropriate fixes in a branch he'll check in later.
4062
4063         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
4064         separator, CR, and CRLF as line ends
4065
4066         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
4067         into lines using pango_find_paragraph_boundary(); other bits of
4068         the widget are still going to be broken if the boundary isn't '\n'
4069         though
4070
4071 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4072
4073         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
4074         multiply.
4075
4076         * gdk/linux-fb/gdkpango-fb.c:
4077         Copied some 26.6 scaling macros from pango to clean up the rounding.
4078         (pango_fb_font_get_glyph_info): Correct sign on x value.
4079
4080         * gdk/linux-fb/gdkprivate-fb.h:
4081         Removed unreferenced external functions.
4082
4083         * modules/linux-fb/Makefile.am: Use ` instead of '.
4084
4085         * modules/linux-fb/basic.c:
4086         Remove dead code. In particular the dummy lang engine which broke all
4087         pango layouts in GtkFB. Don't include tables-big.i anymore.
4088
4089         * modules/linux-fb/tables-big.i:
4090         Upgrade to latest version from pango. Left for reference, basic_ranges
4091         moved to basic.c.
4092         
4093 2000-12-04  Havoc Pennington  <hp@redhat.com>
4094
4095         Fix bugs Alex found:
4096         
4097         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
4098         to "draw"
4099
4100         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
4101
4102         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
4103
4104         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
4105         implementation in here, apparently the expose() implementation was
4106         dead code.
4107
4108 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4109
4110         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4111         Return positive descent.
4112
4113 2000-12-02  Havoc Pennington  <hp@pobox.com>
4114
4115         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
4116         method and signal
4117         
4118         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
4119         calls gdk_window_process_updates() to push the exposes through
4120         (gtk_widget_class_init): No more draw signal, no
4121         gtk_widget_real_draw()  
4122         
4123         * gtk/gtkbin.c (gtk_bin_draw): remove
4124
4125         * gtk/gtkbox.c (gtk_box_draw): remove
4126
4127         * gtk/gtkbutton.c (gtk_button_draw): remove
4128
4129         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
4130
4131         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
4132
4133         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
4134
4135         * gtk/gtkclist.c (gtk_clist_draw): remove
4136
4137         * gtk/gtkentry.c (gtk_entry_draw): remove
4138
4139         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
4140
4141         * gtk/gtkfixed.c (gtk_fixed_draw): remove
4142
4143         * gtk/gtkframe.c (gtk_frame_draw): remove
4144
4145         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
4146
4147         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
4148
4149         * gtk/gtklayout.c (gtk_layout_draw): remove
4150
4151         * gtk/gtklist.c (gtk_list_draw): remove
4152
4153         * gtk/gtklistitem.c (gtk_list_item_draw): remove
4154
4155         * gtk/gtkmenu.c (gtk_menu_draw): remove
4156
4157         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
4158
4159         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
4160
4161         * gtk/gtknotebook.c (gtk_notebook_draw): remove
4162
4163         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
4164
4165         * gtk/gtkpacker.c (gtk_packer_draw): remove
4166
4167         * gtk/gtkrange.c (gtk_range_draw): remove
4168
4169         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
4170
4171         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
4172
4173         * gtk/gtktable.c (gtk_table_draw): remove
4174
4175         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
4176
4177         * gtk/gtktext.c (gtk_text_draw): remove
4178
4179         * gtk/gtktextview.c (gtk_text_view_draw): remove
4180
4181         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
4182
4183         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
4184
4185         * gtk/gtktree.c (gtk_tree_draw): remove
4186
4187         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
4188
4189         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
4190
4191         * gtk/gtkviewport.c (gtk_viewport_draw): remove
4192
4193         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
4194
4195         * gtk/gtkvscale.c (gtk_vscale_draw): remove
4196
4197         * gtk/gtkwindow.c (gtk_window_draw): remove
4198
4199 2000-20-01  Anders Carlsson  <andersca@gnu.org>
4200
4201         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
4202         a GtkToggleButton is both insensitive and active, it was being
4203         drawn by the GtkButton draw handler which doesn't check the
4204         state. Now it's calling gtk_toggle_button_paint instead.
4205         
4206 2000-12-01  Havoc Pennington  <hp@redhat.com>
4207
4208         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
4209         dangling pointers to the appearance attributes from the 
4210         line display
4211
4212         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
4213         width/height to mean "full width/height of drawable"
4214
4215         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
4216         click to select word/line
4217         
4218         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
4219         when getting log attrs. Get a slice, so that pixmaps and stuff
4220         are properly handled.
4221
4222         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
4223         paste into the selection (replaces selection now, previously
4224         crashed or added to selection). Reveals longstanding btree bug -
4225         select multiple lines, middle-click on the selection, boom. This
4226         isn't related to my changes though.
4227
4228         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
4229         PangoLogAttrs changes
4230         (gtk_entry_move_backward_word): ditto
4231
4232         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
4233         functions return bool whether the iter moved onto a
4234         dereferenceable position.
4235  
4236         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
4237         functions for motion in terms of display lines.
4238
4239         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
4240         get the buffer a mark is inside
4241         
4242 2000-12-01  Alexander Larsson  <alexl@redhat.com>
4243
4244         * gdk/linux-fb/Makefile.am:
4245         * modules/linux-fb/Makefile.am:
4246         Freetype 2 final uses freetype-config
4247
4248         * gdk/linux-fb/gdkpango-fb.c:
4249         Upgrade to use Freetype 2 final.
4250         More flexible support for font aliases, this also fixes a bug with
4251         GtkFontSelector, as the aliases must be visible in the font/family list,
4252         or GtkFontSelector reads uninitialized memory.
4253
4254 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
4255
4256         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
4257         XGetIMValues to properly terminate variable argument list, and do
4258         NULL return check for ic_values and xim_styles.
4259
4260         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
4261         Restore preedit state after XmbResetIC().
4262         
4263         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
4264         XvaCreateNestedList() should take XvaNestedList, but not
4265         XvaNestedList*.
4266
4267         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
4268         preedit_draw_callback, preedit_caret_callback): Match
4269         "preedit-changed" signal name to "preedit_changed" to be
4270         consistent to the spec.
4271
4272         * gtk/gtkimcontextsimple.c (check_table):
4273         Match "preedit-changed" to "preedit_changed" to be consistent
4274         to the spec.
4275
4276 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
4277
4278         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
4279         gc->clip_region == NULL>
4280
4281 2000-11-30  Tor Lillqvist  <tml@iki.fi>
4282
4283         Changes by Hans Breuer:
4284         
4285         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
4286         Dont't use negative width and height as max_hints. This fixes
4287         Owen's recent testgtk changes for win32.
4288
4289         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
4290         gdk_win32_hdc_release): These are exported and may be called with
4291         other drawable types than our GdkDrawableImplWin32 (?).
4292
4293         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
4294         so always #define USE_BACKING_STORE.
4295
4296         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
4297         of printf for debugging output.
4298
4299         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
4300         
4301         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
4302
4303         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
4304         declaration.
4305
4306         * gtk/gtktexttypes.h: Ditto.
4307
4308         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
4309         (GDK_VoidSymbol) also if in case of arg check failure.
4310
4311         * gtk/gtkimcontextsimple.c
4312         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
4313         position to the pointer, but to the variable it points to.
4314
4315         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
4316
4317         * gtk/gtk.def: Updates.
4318
4319 2000-11-29  Elliot Lee  <sopwith@redhat.com>
4320
4321         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
4322         GTK_TYPE_TREE_MODEL.
4323
4324 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4325
4326         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
4327         Set the size of the font from the description.
4328         (gdk_text_width): Gross hack that calculates the width
4329         of text by text_length * size/2. This is necessary because
4330         GtkLabel does some ugly gtk_string_width call to calculate
4331         an good size.
4332         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
4333
4334 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
4335
4336         * docs/tutorial/gtk-tut.sgml: DND updates
4337
4338 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4339
4340         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4341         If you pass width or height == 0 to gdk_window_clear_area they
4342         should be calculated from the window size.
4343
4344 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4345
4346         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
4347         a grab, but no grab-cursor, use the cursor from the grabbed
4348         window. (gdk_fb_window_send_crossing_events): Send normal
4349         enter/leave notifications if grab and owner_events == TRUE.
4350
4351 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4352
4353         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4354         Do implicit button grabs, even if the window doesn't
4355         want the event.
4356         (gdk_fb_window_send_crossing_events): If there is a
4357         grab, only the grabbed window gets normal enter/leave
4358         notifications. On ungrab go from grabbed window to current.
4359         Don't send any notification to b when propagating from c -> b.
4360         If setting a grab on window, don't set prev_window.
4361         (handle_mouse_input): Send enter/leave events to the window the
4362         mouse is over, not the grabbed one.
4363         
4364 2000-11-28  Elliot Lee  <sopwith@redhat.com>
4365
4366         * gdk/gdkregion-generic.c: Zap warning.
4367         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
4368         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
4369
4370 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
4371
4372         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4373         The cursor should be hidden if it is part of either the
4374         source or destination region. Not only if it is in both.
4375         (gdk_window_set_transient_for): Silence warnings.
4376
4377 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4378
4379         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
4380         The default mode in X is Pie Arcs, therefore that is
4381         what Gtk+ uses.
4382
4383 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4384
4385         * gdk/linux-fb/gdkinput-ps2.c:
4386         Implement correct EnterNotify/LeaveNotify:
4387         (gdk_fb_window_send_crossing_events): New function that sends
4388         all GdkCrossingEvents from the last mouse-window to the specified
4389         destination.
4390         (gdk_fb_window_visibility_crossing): Removed function.
4391         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
4392         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
4393         instead of gdk_window_get_pointer() for better readability.
4394
4395         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
4396         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
4397
4398         * gdk/linux-fb/gdkprivate-fb.h:
4399         removed gdk_fb_window_visibility_crossing, added
4400         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
4401
4402         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
4403         New function that finds the least common ancestor of two windows.
4404         (gdk_window_show, gdk_window_hide):
4405         Use gdk_fb_window_send_crossing_events.
4406         (gdk_fb_window_move_resize): Send configure events to toplevel
4407         windows. Use gdk_fb_window_send_crossing_events.
4408
4409 2000-11-27  Havoc Pennington  <hp@redhat.com>
4410
4411         * gtk/gtkprivate.h (enum): Remove a trailing comma
4412
4413 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
4414
4415         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
4416         the "changed" callback of the adjustment.  We need to redraw the
4417         spin button's arrows when the adjustment's range changes.
4418         (adjustment_changed_cb): Draw the arrows.
4419         (gtk_spin_button_value_changed): Draw the arrows.
4420
4421 2000-11-23  Alexander Larsson  <alexl@redhat.com>
4422
4423         * gdk/linux-fb/gdkselection-fb.c:
4424         Initial selection implementation.
4425
4426         * gtk/gtkselection.c:
4427         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
4428         requestor in gtk_selection_request.
4429         
4430         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
4431         Added gdk_selection_property atom.
4432
4433         * gdk/linux-fb/gdkprivate-fb.h:
4434         Export _gdk_selection_window_destroyed.
4435         Removed mask_off_x/y from GdkCursorPrivateFB.
4436         Removed hbearing, added top, left to PangoFBGlyphInfo.
4437
4438         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4439         Call _gdk_selection_window_destroyed
4440         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
4441         the root window has been created.
4442         (static_dx_hack, static_dy_hack, compare_draw_rects,
4443         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
4444         in region. They are already sorted. Instead just traverse them in
4445         reverse if draw_direction < 0.
4446         
4447         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4448         Double-clicks must be sent after the normal button_press.
4449         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
4450         
4451         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
4452         Pass _gdk_fb_screen_gc instead of NULL.
4453
4454         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4455         Initialize gdk_selection_property.
4456         (gdk_event_make): Remove unused code.
4457
4458         * gdk/linux-fb/gdkcursor-fb.c:
4459         Make the pixmap for the cursor the same size as the mask. Also remove
4460         the mask_off_x/y fields in GdkCursorPrivateFB and combine
4461         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
4462         Now the whole cursor is visible.
4463
4464         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4465         Fix bug where xdest+height instead of ydest+height was used
4466         to calculate if the source and dest overlapped. This fixes the
4467         redraw bug when the main window in testgtk was scrolled when
4468         partially covered by a tall window.
4469         Copy rectangles in region in order depending on draw_direction.
4470         Also moved the draw_direction flipping of start_y and end_y into
4471         the gc functions, as this might not be what all of them want.
4472         (gdk_fb_draw_lines): Support dashed lines.
4473         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
4474         so that the text is positioned correctly (was 1 pixel high).
4475
4476         gdk/linux-fb/gdkgc-fb.c:
4477         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
4478         all lines were drawn a pixel to short. Also checked the default of
4479         the rest of the values, and they're the same as X now.
4480
4481         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
4482         Clean up pixel positioning of the glyphs. Just use bgy->top and
4483         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
4484         to all divisions to get correct rounding behaviour.
4485
4486         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
4487         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
4488         Moved start_y/end_y flip into draw_drawable implementations.
4489         Flip also x rendering when draw_direction < 0.
4490         Remove unneccesary multiply with draw_direction.
4491
4492 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
4493
4494         * docs/tutorial/gtk-tut.sgml:
4495           - get rid of gtk_toggle_button_toggled FUD
4496           - start DND section - needs work - based on:
4497                 http://wolfpack.twu.net/docs/gtkdnd/
4498
4499 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4500
4501         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4502         Correct calculation of font metrics. Now GtkEntrys have sane
4503         size.
4504
4505 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4506
4507         * gdk/gdktypes.h:
4508         Add new type GdkSpan
4509         
4510         * docs/reference/gdk/gdk-sections.txt,
4511         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
4512         gdk/gdkregion.h:
4513         Implement and document gdk_region_spans_intersect_foreach.
4514
4515         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
4516         Add new file gdkrender-fb.c which contains all core
4517         rendering code.
4518         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
4519         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
4520         (optimized rectangle fillers).
4521
4522         * gdk/linux-fb/gdkdrawable-fb2.c:
4523         Move all rendering code to gdkrender-fb.c.
4524         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
4525         Use the new span intersection functions in gdk_fb_fill_spans.
4526         gdk_fb_draw_rectangle() clips filled rectangles and calls
4527         gc->fill_rectangle with the result.
4528         gdk_fb_fill_spans() gets extra argument "sorted".
4529
4530         * gdk/linux-fb/gdkevents-fb.c:
4531         Remove unused includes and defines.
4532         New function gdk_fb_get_time() to get correct time for events.
4533
4534         * gdk/linux-fb/gdkinput-ps2.c:
4535         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
4536         Make sure to set the time of all events.
4537
4538         * gdk/linux-fb/gdkmain-fb.c:
4539         Use gdk_fb_get_time ().
4540
4541         * gdk/linux-fb/gdkprivate-fb.h:
4542         New virtual GC calls: fill_span & fill_rectangle.
4543         Export gdk_fb_get_time().
4544         gdk_fb_fill_spans() gets extra argument "sorted".
4545
4546         * gdk/linux-fb/mi*.c:
4547         Use GdkSpan instead of GdkRectangle.
4548         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
4549         from XFree 4 source)
4550         
4551 2000-11-22    <jrb@redhat.com>
4552
4553         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
4554         reversing the order in an if statement will do.  Doing so managed
4555         to make the treemodelsort half work.  Other half will follow after
4556         I get the insert function fully fixed.
4557
4558 2000-11-21  Elliot Lee  <sopwith@redhat.com>
4559         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
4560         more than 2 bits. Besides, I need to implement an evil hack. :)
4561
4562 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
4563
4564         * docs/tutorial/gtk-tut.sgml: minor corrections
4565
4566 2000-11-20  Jonathan Blandford <jrb@redhat.com>
4567         * gtk/gtktreemodelsort.h: Add convertion functions to let you
4568           convert to and from relative path's and iters.
4569
4570         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
4571           testing sorting functions a bit better.  Currently broken -- will
4572           fix in morning.
4573
4574 2000-11-20  Havoc Pennington  <hp@redhat.com>
4575
4576         * gtk/gtkwidget.c: Documented a bunch of functions in here
4577         (gtk_widget_realize): Warn if you try to realize
4578         a widget with no parent that isn't a toplevel
4579         (gtk_widget_intersect): return a gboolean
4580
4581 2000-11-20  Havoc Pennington  <hp@redhat.com>
4582
4583         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
4584         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
4585         scrolling to be implemented in GDK to finish. Also, right now
4586         we just size_allocate all children on every layout change,
4587         which is pretty lame. Test commented out of testtext.c, 
4588         until it works better.
4589
4590 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
4591
4592         * gdk/linux-fb/gdkdrawable-fb2.c:
4593         Removed unused arguments from gdk_fb_drawable_get_pixel().
4594
4595         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
4596         Renamed fidur specific mouse packet data in MouseDevice to
4597         generic. Used it in ps2 mouse handling code to avoid blocking
4598         reads.
4599
4600 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
4601
4602         * demos/gtk-demo/main.c: Changed to have the list become
4603         non-italic when the demo window is destroyed through an external
4604         event (like a close button).  Doing so found three bugs in the
4605         widget.
4606
4607         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4608
4609         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4610         we actually set the cell.
4611
4612         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4613
4614         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4615         free a leaked path.  Thanks memprof.
4616
4617 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4618
4619         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4620         off-by-one error when destroying allocated segments
4621         on failure. (Elliot)
4622
4623 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4624
4625         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4626         memleaks found by Evan Martin.
4627
4628 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4629
4630         * Released 1.3.2
4631         
4632         * NEWS: Updates for 1.3.2
4633
4634 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4635
4636         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4637         but in general for window system specific events.
4638
4639         * gtk/gtk.def
4640         * gtk/makefile.mingw.in
4641         * gtk/makefile.msc.in: Update.
4642         
4643         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4644
4645 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
4646
4647         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4648         distribute gtk.immodules.
4649
4650         * gtk/Makefile.am (install-data-local): Don't install the
4651         gtk.immodules file created for the uninstalled modules;
4652         instead run gtk-query-immodules after install
4653
4654 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4655
4656         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4657         -rpath to the right install location.
4658
4659         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4660         -export-dynamic.
4661
4662         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4663         properly.
4664
4665 2000-11-15  Havoc Pennington  <hp@pobox.com>
4666
4667         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4668         patch from Mikael Hermansson to temporarily stop blinking while
4669         the user is using the keyboard to type or navigate. 
4670
4671         Also, when blinking, stay on for longer than we stay off. Also,
4672         return from start_cursor_blink if !cursor_visible, to save
4673         checking that flag all over the place before we call
4674         start_cursor_blink.
4675
4676 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
4677
4678         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
4679         only contain a "fontset" line, which is now ignored.
4680
4681         * gtk/gtkentry.c (gtk_entry_button_release): Make 
4682         double-click-to-select-word work.
4683         
4684 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
4685
4686         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
4687         Don't move back one char when we are actually at the end of the 
4688         paragraph.
4689
4690 2000-11-15  Robert Brady  <robert@suse.co.uk>
4691
4692         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
4693         'o' < 'p'.
4694         
4695         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
4696         bind_textdomain_codeset.
4697
4698         (gtk_init_check): Make the warning about translating default:LTR
4699         sterner.
4700         
4701 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
4702
4703         * **/Makefile.am : remove unecessary rules for win32-specific
4704         config-substituted targets. If you want these rules, use
4705         --enable-maintainer-mode (called automatically by autogen.sh).
4706         Stops a lot of unneccessary make-time warnings.
4707
4708         * gtk/gtktext{layout,display}.c: Factor in total width as
4709         well as screen when figuring alignment for word-wrap as well as
4710         no wrap; this is necessary to handle lines that cannot be wrapped
4711         at all.
4712
4713 2000-11-15  Havoc Pennington  <hp@redhat.com>
4714
4715         * gtk/testtext.c: Implement essential color cycling feature
4716
4717 2000-11-15  Havoc Pennington  <hp@redhat.com>
4718
4719         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
4720         when we invalidate the main window.
4721
4722         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
4723         GtkTextView will now invalidate the side windows for us when text
4724         changes.
4725
4726 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
4727
4728         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
4729         unconditionally, since we may need to update the horizontal
4730         scrollbars even if the height didn't change.
4731
4732         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
4733         the extra attrs, since some of them affect size.
4734
4735         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
4736         x_offset correctly.
4737
4738 2000-11-15  Havoc Pennington  <hp@redhat.com>
4739
4740         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
4741         don't move the first line out into the margin, instead move the
4742         whole paragraph in order to make space for the first line within 
4743         the margin
4744
4745 2000-11-15  Havoc Pennington  <hp@redhat.com>
4746
4747         * gtk/gtktextview.c (changed_handler): offset redraw rect by
4748         xoffset in addition to yoffset, so horizontal scrolling doesn't
4749         break redraws
4750
4751 2000-11-15  Havoc Pennington  <hp@redhat.com>
4752
4753         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4754         from the cursor
4755         (render_layout_line): fix reversed test that caused weird
4756         underlines to get drawn
4757
4758 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4759
4760         * gdk/linux-fb/gdkprivate-fb.h:
4761         Fix debug macros.
4762         
4763 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4764
4765         * gdk/linux-fb/gdkprivate-fb.h:
4766         Added virtual functions set_pixel, get_color,
4767         fill_span and draw_drawable to the GC.
4768         Added global _gdk_fb_screen_gc to use instead of
4769         NULL when drawing to the screen.
4770         Added _gdk_fb_gc_calc_state() prototype.
4771
4772         * gdk/linux-fb/gdkgc-fb.c:
4773         Call _gdk_fb_gc_calc_state() on any gc state change.
4774
4775         * gdk/linux-fb/gdkglobals-fb.c:
4776         Add _gdk_fb_screen_gc
4777                 
4778         * gdk/linux-fb/gdkdrawable-fb2.c:
4779         _gdk_fb_gc_calc_state() calculates best functions
4780         for the GC state and depth.
4781         Moved bpp specialized code to separate functions.
4782         Added optimized 24 bpp AA draw_drawable.
4783
4784         * gdk/linux-fb/gdkevents-fb.c:
4785         Silence gcc warning.
4786
4787         * gdk/linux-fb/gdkimage-fb.c:
4788         Use _gdk_fb_screen_gc
4789
4790         * gdk/linux-fb/gdkwindow-fb.c:
4791         Init and use _gdk_fb_screen_gc
4792
4793         * gdk/linux-fb/mitypes.h:
4794         Remove unused types.
4795
4796 2000-11-14  Havoc Pennington  <hp@pobox.com>
4797
4798         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4799         to pixels
4800
4801 2000-11-14  Havoc Pennington  <hp@pobox.com>
4802
4803         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4804
4805         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4806         unknown char, no real reason we were using a variable. 
4807         Remove gtk_text_unknown_char variable. Fix all the text widget
4808         files accordingly.
4809
4810         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
4811         since the Unicode spec seems to prefer that character for our
4812         purposes.
4813
4814 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
4815
4816         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
4817         value of g_getenv() isn't freeable, so g_strdup it.
4818
4819         * modules/input/inuktitut.c: Inuktitut input method.
4820
4821         * modules/input/Makefile.am: Build this.
4822         
4823 2000-11-14  Elliot Lee  <sopwith@redhat.com>
4824
4825         * gtk/Makefile.am: Install gtk.immodules, needed for operation
4826         of gtk programs.
4827
4828 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
4829
4830         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4831         reversed > that was causing Home to go to end of previous line.
4832
4833         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4834         modified-keypresses (leave for bindings.)
4835
4836         * modules/input/Makefile.am: Remove useless -export-dynamic
4837         from module LDFLAGS.
4838
4839 2000-11-14  Havoc Pennington  <hp@redhat.com>
4840
4841         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4842         higher.
4843
4844         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4845         account. Also, render rise, underline, background, etc. for
4846         pixbufs as well as text. Also, draw underlines one pixel higher.
4847
4848         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4849         PangoAttribute for the rise, so it gets drawn properly. Also,
4850         add the GtkTextAppearance attribute for pixbuf/widget segments
4851         as well; we should go ahead and have rise, underline, background,
4852         stipple work for those
4853
4854         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4855         Pango
4856
4857 2000-11-15  Tor Lillqvist  <tml@iki.fi>
4858
4859         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4860
4861         * gtk/gtk.def: Update.
4862
4863         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4864         included.
4865         (gtk_rc_get_im_module_file): Use run-time installation directory
4866         on Win32.
4867
4868         * gdk/win32/rc/gdk.rc: Remove.
4869         * gdk/win32/rc/gdk.rc.in: New file.
4870         * gdk/win32/rc/Makefile.am: New file
4871         * gdk/win32/Makefile.am: Corresponding changes.
4872
4873         * gtk/gtk.rc: Remove.
4874         * gtk/gtk-win32.rc.in: New file.
4875         * gtk/Makefile.am: Corresponding changes.
4876
4877         * configure.in: Corresponding changes.
4878
4879         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4880         has a built gtkcompat.h. Developers using CVS code on Win32 can
4881         hand-edit it from gtkcompat.h.in.
4882
4883         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4884         gtkcompat.h from gtkcompat.h.win32.
4885
4886 2000-11-14  Havoc Pennington  <hp@redhat.com>
4887
4888         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4889         to default to GDK_ACTION_MOVE if the drag is within a single
4890         widget. Defaults to GDK_ACTION_COPY between widgets.
4891
4892 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
4893
4894         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4895
4896         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4897
4898         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4899         srcdir != builddir
4900
4901         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4902
4903         * configure.in (GTK_VERSION): Up to 1.3.2
4904
4905         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
4906         gtkimcontextxim.h
4907
4908         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4909         missing doc comment.
4910
4911 2000-11-14  Alexander Larsson  <alexl@redhat.com>
4912
4913         * modules/linux-fb/basic.c:
4914         Use the glib iconv wrappers.
4915
4916 2000-11-13  Havoc Pennington  <hp@pobox.com>
4917
4918         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4919         still more bugs.
4920
4921         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4922         scroll the GdkWindows before realization.
4923
4924 2000-11-13  Havoc Pennington  <hp@redhat.com>
4925
4926         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
4927         where GC didn't always get updated properly
4928
4929         * demos/gtk-demo/textview.c (create_tags): Use subattributes
4930         of fonts instead of setting the entire font
4931
4932         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4933         setting entire font
4934
4935         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4936
4937         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
4938         a bunch of individually-settable font attributes. You can still 
4939         use the "font" and "font_desc" args, they just set all the font
4940         attributes at once.
4941
4942 2000-11-13 Elliot Lee <sopwith@redhat.com>
4943
4944         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4945
4946 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
4947
4948         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4949         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4950
4951         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4952         work better.
4953
4954 2000-11-13  Havoc Pennington  <hp@redhat.com>
4955
4956         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
4957         the module file.
4958
4959         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4960         dest->language
4961
4962         * gtk/testtext.c: Test pixels above/below/inside paragraphs
4963         settings
4964
4965         * gtk/gtktextview.c: Implement object args and setters/getters for
4966         all the aspects of the GtkTextAttributes that are not set from
4967         GtkWidget attributes. This is spacing, justification, margins,
4968         etc.
4969
4970         (gtk_text_view_set_arg)
4971         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4972         args
4973         (gtk_text_view_class_init): Add args for justify, left_margin,
4974         right_margin, indent, and tabs
4975         
4976
4977         * gtk/gtktextlayout.c (set_para_values): fix to display indent
4978         attribute properly
4979
4980         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
4981         replace with indent attribute
4982
4983         * gtk/gtktextlayout.c (set_para_values): multiply indent by
4984         PANGO_SCALE
4985
4986         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4987         rearranging code to do that
4988         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4989         i.e. don't subtract the top_margin first, just to keep
4990         all margin-futzing in one place.
4991
4992         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4993
4994         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4995         special case of last line, Pango now handles this itself.
4996         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
4997         Y coordinate
4998         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4999         (find_display_line_above): wasn't moving the byte index as it
5000         iterated over lines, so always returned byte 0. Also, port to use
5001         PangoLayoutIter.
5002         (find_display_line_below): same problem as
5003         find_display_line_above. Also, port to use PangoLayoutIter.
5004
5005 2000-11-13  Alexander Larsson  <alexl@redhat.com>
5006
5007         * gdk/linux-fb/*.[ch]:
5008         Massive reindent to gtk+ standard. My hands hurt.
5009
5010         * gdk/linux-fb/gdkcolor-fb.c:
5011         Move GdkColorPrivateFB from inherited to windowing_data
5012
5013         * gdk/linux-fb/gdkcursor-fb.c:
5014         _gdk_cursor_new_from_pixmap made static
5015
5016         * gdk/linux-fb/gdkdnd-fb.c:
5017         GdkDragContextPrivate moved to windowing_data
5018
5019         * gdk/linux-fb/gdkdrawable-fb2.c:
5020         Removed endian.h, use glib endianness macros instead
5021         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
5022         and GDK_DRAWABLE_IMPL_FBDATA
5023
5024         * gdk/linux-fb/gdkfont-fb.c:
5025         Add empty gdk_font_load(). Needed for linking of Gtk+.
5026
5027         * gdk/linux-fb/gdkimage-fb.c:
5028         Removed endian.h, use glib endianness macros instead
5029         Moved GdkImagePrivateFB to windowing_data
5030         gdk_image_new_bitmap didn't always allocate enough
5031         memory.
5032
5033         * gdk/linux-fb/gdkinput-ps2.c:
5034         Added semi-working support for MS serial mice.
5035
5036         * gdk/linux-fb/gdkprivate-fb.h:
5037         s/GdkWindowPrivate/GdkWindowObject/
5038         Removed GdkWindowPrivate typedef
5039         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
5040         Removed GDK_DRAWABLE_P
5041         Move GdkColorPrivateFB from inherited to windowing_data
5042         Moved GdkImagePrivateFB to windowing_data
5043
5044         * gdk/linux-fb/gdkvisual-fb.c:
5045         Removed some unused debug code.
5046
5047         * gdk/linux-fb/gdkwindow-fb.c:
5048         Use stock cursors instead of including X headers.
5049         s/GdkWindowPrivate/GdkWindowObject/
5050
5051         * gdk/linux-fb/mitypes.h:
5052         Removed unused types.
5053
5054         * modules/linux-fb/basic.c:
5055         Use the pango fribidi wrappers.
5056
5057 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5058
5059         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
5060         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
5061         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
5062         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
5063         GEqualFunc where applicable.
5064         
5065         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
5066         pango_font_description_equal as changed in pango.
5067         
5068         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
5069
5070         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
5071
5072         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
5073
5074         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
5075
5076         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
5077
5078         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
5079
5080         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
5081         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
5082
5083         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
5084         gtk_rc_styles_compare -> gtk_rc_styles_equal.
5085
5086 2000-11-12  Havoc Pennington  <hp@pobox.com>
5087
5088         * demos/gtk-demo/Makefile.am (democodedir): change demo install
5089         dir to datadir/gtk+-2.0/demo
5090
5091         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
5092         sorts of text widget and Pango font bugs. Urgh.
5093
5094         * demos/gtk-demo/Makefile.am (demos): Add textview.c
5095
5096         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
5097         tree that you should double click to see the demo. Fix 
5098         types of variables to reflect changed return values from 
5099         GtkTreeStore and GtkTreeViewColumn constructors.
5100
5101         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
5102         newly-created buffer to prepare for GObject semantics
5103
5104         * gtk/testtext.c: don't leak the buffer with GObject semantics
5105
5106         * gtk/testtextbuffer.c: ditto
5107         
5108 2000-11-12  Havoc Pennington  <hp@pobox.com>
5109
5110         Rename this testgtk to gtk-demo to avoid confusion, and 
5111         install it so people can use it as a supplement to 
5112         the documentation.
5113         
5114         * demos/gtk-demo: Moved from demos/testgtk
5115
5116         * demos/testgtk: Removed
5117
5118         * configure.in: make Makefile in gtk-demo
5119         
5120         * demos/gtk-demo/Makefile.am: Install sample source to 
5121         datadir/gtk-demo (maybe there's a better place?), and 
5122         rename the binary to gtk-demo
5123         
5124         * demos/gtk-demo/main.c (load_file): Load installed sample
5125         source if source isn't found in pwd.
5126
5127 2000-11-09  Havoc Pennington  <hp@pobox.com>
5128
5129         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
5130         argument to set the char displayed when visibility == FALSE
5131         (gtk_entry_create_layout): If !entry->visible, replace 
5132         all chars with the "invisible char"
5133
5134         * gtk/testgtk.c: Test the invisible_char deal
5135         
5136 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
5137
5138         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
5139         can't get a native font in the right encoding.
5140
5141 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
5142
5143         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
5144         respectively.
5145
5146 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
5147
5148         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
5149         Fix warning when moving between paragraphs.
5150
5151         * gtk/gtkentry.[ch]: Change move => move_cursor, 
5152         delete => delete_from_cursor, insert => insert_at_cursor
5153
5154 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
5155
5156         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
5157
5158         * modules/input/imthai-broken.c: A Thai input method for use if
5159         Thai keys are really generating Latin1 keysyms.
5160
5161         * modules/input/Makefile.am: Build these.
5162
5163 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
5164
5165         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
5166         g_filename_{to,from}_utf8 now takes an extra parameter.
5167
5168         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
5169         strftime into UTF-8.
5170
5171         (column_from_x, gtk_calendar_paint_day_names): Support RTL
5172         calendars.
5173
5174         (gtk_calendar_paint_day_names): Draw day names in the right 
5175         place.
5176         
5177 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
5178
5179         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
5180         problem with using result of g_get_charset() backwards -
5181         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
5182
5183         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
5184         negative min_width/height and max_width/height to
5185         mean "requisition"; this allows setting a window
5186         to be user-resizable in only one direction easily.
5187
5188         * gtk/testgtk.c (create_main_window): Remove hard-coded
5189         usize - set a default size in the vertical direction.
5190
5191 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
5192
5193         * gtk/gtkrange.c: Add some missing casts. Support 
5194         2 and 3 button clicks on the arrows to mean 
5195         "move by pages" and "jump to end". (Like gtkspinbutton)
5196
5197 2000-11-12 Hans Breuer <Hans@Breuer.Org>
5198
5199         * gdk/win32/makefile.msc : reflect build module changes
5200
5201         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
5202         from GdkPixmap*, cast implementation member instead.
5203
5204         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
5205         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
5206         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
5207         more Gdi functions return value checking. 
5208         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
5209         GdkImagePrivateWin32 *.
5210
5211         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
5212         menus useable again. Add #pragma message to keep reminded on this issue.
5213         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
5214         windows. This allows to enable backing store on Win32!
5215
5216         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
5217         in drawable is of impl type. Correct specific type checks appropriate.
5218  
5219         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
5220         GDK_WINDOW_DESTROYED before allocating new resources.
5221
5222         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
5223
5224         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
5225         (gdk_window_foreign_new) initialize parent handle.
5226         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
5227
5228         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
5229         Let the GDI invalidate the window on MoveWindow call to fix scrolling
5230         problems (e.g. main buttons in testgtk). 
5231
5232 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
5233
5234         * gtk/gtkentry.c (gtk_entry_key_press): Call 
5235         gtk_widget_activate for GDK_Return.
5236
5237         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
5238         of preedit cursor position.
5239
5240 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
5241
5242         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
5243         static.
5244
5245 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
5246
5247         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
5248         out support for multiple locales; that simple doesn't
5249         work reliably with current Xlib
5250
5251         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
5252         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
5253         Add support for positioning the cursor within the preedit string.
5254
5255 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
5256
5257         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
5258         at XIM input method module.
5259
5260         * gtk/gtktextview.c: Check for bindings after passing
5261         events to im context filter.
5262
5263 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
5264
5265         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
5266         empty attribute lists properly.
5267
5268 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
5269
5270         * gtk/queryimmodules.c (main): Return non-zero exit
5271         status if errors were encountered querying any
5272         modules.
5273
5274         * modules/input/Makefile.am (moduledir): remove
5275         leftover bin program target.
5276
5277         * docs/make-todo: Fix typo in error message.
5278
5279 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
5280
5281         * configure.in: Add modules/input/Makefile
5282
5283 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
5284
5285         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
5286         don't include gtkthemes.h.
5287
5288         * gtk/testgtk.c gtk/testtext.c: Set environment variables
5289         to point
5290
5291         * gtk/Makefile.am: Add new .c and .h files, build 
5292         gtk-query-immodules and use it to create a gtk.immodules
5293         file for use of test programs.
5294
5295         * gtk/gtkpreview.c: remove extra blank line.
5296
5297 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
5298
5299         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
5300         Add the ability to add extra tables beyond the default
5301         one, and also the ability to have compose sequences 
5302         that are prefixes of other compose sequences. 
5303
5304         * gtk/gtkimcontextsimple.c: Export a preedit string which
5305         consists of possible candidates for keystrokes that have
5306         been entered but not yet committed.
5307
5308         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
5309         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
5310
5311         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
5312         Add a function to add input-method switching menu items
5313         to a menu.
5314
5315         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
5316         when switching input methods.
5317
5318         * gtk/gtkimcontextsimple.[ch]: Change the format of
5319         the compose table to allow compose tables of different
5320         lengths / sequence.
5321
5322 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
5323
5324         * gtk/gtkimmodule.[ch]: Support routines for loading
5325         GtkIMContext implementations dynamically at runtime.
5326
5327         * modules/input/imcyrillic-translit.c: A sample input
5328         method (based on GtkIMContextSimple with an extra table),
5329         which demonstrates preedit strings and the module
5330         system for input modules
5331
5332         * gtk/queryimmodules.c: Program to query the available
5333         input modules and write the results into a file.
5334          
5335         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
5336         extra config options "im_module_file" (cache file for
5337         input method modules), and "im_module_path" - path
5338         to look for modules when generating cache file.
5339
5340         This doesn't scale.
5341
5342 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
5343
5344         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
5345         generic code from gtkthemes into a new abstraction
5346         GtkModule which has the logic for implementing
5347         a loadable module which implements a number of 
5348         GObject types.
5349
5350 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
5351
5352         * gtk/gtkeditable.[ch]: Convert GtkEditable from
5353         a class into an interface  
5354         
5355         * gtk/gtkoldeditable.[ch]: Move the old editable
5356         implementation into here, so legacy widgets can
5357         still rely on the implemenation. GtkOldEditable
5358         exports GtkEditable. Make selection handling
5359         code use new text conversion functions (and
5360         handle UTF-8 as a side-effect). Use GtkClipboard
5361         for CLIPBOARD.
5362
5363         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
5364         Adopt to match above changes.
5365
5366         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
5367         avoid GtkOldEditable implementation. Restructure
5368         to reduce number of places that modify state directly.
5369         Move to GtkBindingSet. Display the preedit string.
5370         Queue recomputation of PangoLayout and scroll position
5371         to improve effiency of doing complex changes naively.
5372         Add a menu with cut/copy/paste and input method selection.
5373
5374 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
5375
5376         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
5377         to set preedit string and attributes; display preedit string by
5378         inserting string and attributes at cursor when creating the
5379         GtkTextLineDisplay.
5380
5381         * gtk/gtktextlayout.c: Move all conversions between byte
5382         positions in PangoLayout and GtkTextIter into new functions
5383         line_display_iter_to_index/index_to_iter that properly
5384         handle the preedit string.
5385
5386         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
5387         it to return const char * (eventually will end up
5388         as GCONST char *, most likely.)
5389
5390         * gtk/gtktextview.[ch]: Handle the preedit string, call
5391         gtk_im_context_reset() as necessary, add a menu to switch
5392         input methods.
5393         
5394         * gtk/gtktextlayout.[ch]: Remove useless
5395         gtk_text_layout_get_log_attrs() function.
5396
5397 2000-11-11  Tor Lillqvist  <tml@iki.fi>
5398
5399         * gdk/gdk.def
5400         * gtk/gtk.def: Update.
5401
5402         * gdk/win32/*.c: Add last argument to g_type_register_static()
5403         calls.
5404
5405         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
5406
5407         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
5408         generated by older wheel mouse drivers. Get the correct y
5409         coordinate from WM_MOUSEWHEEL messages.
5410
5411         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
5412         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
5413         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
5414         Debugging functions.
5415
5416         * gdk/win32/gdkprivate-win32.h: Declare them.
5417
5418         * gdk/win32/gdkinput-win32.h: Add declaration for
5419         gdk_input_window_destroy().
5420
5421         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
5422
5423 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
5424
5425         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
5426         function to help handle keeping things in sync.
5427
5428 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
5429
5430         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
5431         BOXED marshallers.
5432
5433         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
5434         (gtk_list_store_class_init): use the new BOXED marshallers.
5435
5436         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
5437         new_with_values to new_with_types.
5438         (gtk_tree_store_get_column_type): add this.
5439         (gtk_tree_store_class_init): use the new BOXED marshallers.
5440
5441         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
5442         mirror some POINTER marshallers.
5443
5444 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
5445
5446         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
5447         allow more interesting iterators.  Also, made the lifecycle of
5448         iterators more explicit.
5449
5450         * gtk/gtktreemodelsort.[ch]: New model for sorting.
5451
5452         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
5453         types.
5454
5455 2000-11-09  Alexander Larsson  <alexl@redhat.com>
5456
5457         * demos/testgtk/menus.c:
5458         Changes to make the new testgtk compile after
5459         gtk_menu_append was removed.
5460
5461         * gdk/linux-fb/gdkdrawable-fb2.c
5462         (gdk_fb_get_depth, gdk_fb_get_visual,
5463         gdk_drawable_impl_fb_class_init): Implement
5464         these drawable functions. Now GtkImages work again.
5465
5466         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
5467
5468         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
5469         
5470         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
5471         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
5472         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
5473         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
5474
5475 2000-11-08  Havoc Pennington  <hp@pobox.com>
5476
5477         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
5478         visible_set args, don't know where these had gone, I thought they
5479         used to be there
5480
5481         * gtk/testtext.c: Add a menu item to apply invisibility tag;
5482         now we can test the feature and see that it's totally broken.
5483
5484 2000-11-08  Havoc Pennington  <hp@pobox.com>
5485
5486         Make DND copy pixbufs and tags when source and target share a 
5487         tag table.
5488         
5489         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
5490         in-process GTK_TEXT_BUFFER_CONTENTS target
5491         (gtk_text_view_drag_data_received): Paste from
5492         GTK_TEXT_BUFFER_CONTENTS if we receive it.
5493
5494 2000-11-08  Alexander Larsson  <alexl@redhat.com>
5495
5496         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
5497         API changes.
5498
5499         * gtk/gtkmenu.c: Add support for scrolling menus.
5500         Remove gtk_menu_append/prepend/insert, these have been moved to
5501         gtkcompat.h as #defines.
5502
5503         * gtk/gtkcompat.h.in:
5504         Add compatibility #defines for gtk_menu_append/prepend/insert
5505
5506         * gtk/gtkmenu.h: Add data needed for scrolling menus.
5507         GtkMenuPositionFunc gets an extra argument push_in.
5508         gtk_menu_append/prepend/insert removed.
5509         
5510         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
5511         positioning behaviour to fit to scrolling menus.
5512
5513         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
5514         into menuitem->submeny. That is wrong, and broke torn
5515         off submenus of torn off menus, since they were unrealized
5516         when the first menu was unrealized.
5517
5518         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
5519         gtk_menu_shell_select_item() since these need to be overridden in
5520         GtkMenu.
5521
5522         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
5523         positioning behaviour to fit to scrolling menus.
5524         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
5525         the current item so that it is prelighted when the menu pops up.
5526         This is a workaround to the fact that the menu doesn't get the
5527         initial enter event (due to grabs).
5528
5529         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
5530         s/gtk_menu_append/gtk_menu_shell_append/
5531
5532         * gtk/gtknotebook.c:
5533         s/gtk_menu_insert/gtk_menu_shell_insert/
5534
5535         * gtk/testgtk.c (create_menu, create_menus):
5536         Create the first menu with 50 items so that menu scrolling
5537         can be tested.
5538         
5539         
5540         Patch from Jonathan Blandford  <jrb@redhat.com>
5541
5542         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
5543         system to handle size requests.  First, we ask what the size of
5544         the toggle is.  Then, when allocating the size, we allocate the
5545         toggle_size first.  This way we can have multiple menu-item
5546         classes w/o needing a seperate class for each.
5547
5548         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
5549         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
5550
5551         * gtk/gtkcheckmenuitem.c
5552         (gtk_check_menu_item_toggle_size_request): New function to handle
5553         the toggle size-request.
5554
5555 2000-11-07  Havoc Pennington  <hp@redhat.com>
5556
5557         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
5558         Half-ass somewhat fix this function, so that scrolling to the
5559         insertion point works. Pango hacking is in the future to really
5560         fix it.
5561
5562         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
5563         length of data, no longer used.
5564
5565         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
5566         method contents in here, get rid of destroy method
5567         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
5568         that were backward. Remove debug spew.
5569         (cut_or_copy): Make the clipboard work with insert_range to
5570         preserve tags and pixbufs, not just the primary selection.
5571
5572 2000-11-07  Havoc Pennington  <hp@redhat.com>
5573
5574         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
5575         to gtk_text_mark_get_visible
5576
5577         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
5578         bug that was generating an invalid iterator
5579
5580         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
5581         ensure_char_offsets() in front of code placing the iter in an
5582         invalid state.
5583
5584         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
5585         make override_location arg const
5586         (paste): Replace the selection if we paste into the 
5587         current selection
5588
5589         * gtk/gtkselection.h: Remove "GtkSelectioData"
5590         (struct _GtkSelectionData): move the definition here.
5591
5592         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
5593         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
5594
5595         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
5596
5597         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
5598         (gtk_text_buffer_insert_range_interactive): implement
5599         (gtk_text_buffer_get_tags): Remove, replaced by
5600         gtk_text_iter_get_tags()
5601
5602         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
5603         limit parameter, to avoid infinite linear scan.
5604         (gtk_text_iter_backward_search): Add search limit
5605         (gtk_text_iter_forward_find_char): Add search limit
5606         (gtk_text_iter_backward_find_char): Add search limit
5607
5608 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5609
5610         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5611         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5612         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5613         gdk/linux-fb/gdkwindow-fb.c:
5614         use g_object_new() instead of g_type_create_instance() which
5615         is a private function for fundamental type implementations.
5616
5617         * gdk/linux-fb/gdkinput-ps2.c:
5618         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5619         instead just store the current modifier state. Add a (somewhat broken)
5620         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5621         Rename exported function gdk_input_ps2_get_mouseinfo to
5622         gdk_input_get_mouseinfo.
5623
5624         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5625         gdk/linux-fb/gdkwindow-fb.c:
5626         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5627         
5628
5629 2000-11-02  Havoc Pennington  <hp@redhat.com>
5630
5631         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5632         use stock buttons. Should be 100% source compatible, appropriate
5633         filesel fields now point to dialog->vbox and dialog->action_area.
5634         On the bizarre side, dialog->action_area and filesel->action_area
5635         are not the same widget.
5636         (gtk_file_selection_init): Put some padding around the selection
5637         entry, so it isn't touching the GtkDialog separator.    
5638
5639         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
5640         use stock buttons, etc. Should also be source compatible.
5641         Set the dialog default title in _init not _new().
5642         
5643         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
5644         Use stock buttons; don't put a button box inside the existing
5645         dialog button box. Don't bother with push/pop colormap anymore.
5646
5647         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
5648         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5649         for message dialog, and necessary for the font selection and color
5650         selection with help and apply buttons.
5651         
5652         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
5653         to the created button widget. Set GTK_CAN_DEFAULT on the button.
5654         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5655         between buttons, put less padding around the action area.
5656         (gtk_dialog_run): Exit on unmap rather than on destroy. 
5657         This will also exit the loop if the widget is hidden.
5658         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5659         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5660         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
5661         special-case delete event.
5662
5663         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5664         formatting
5665         
5666 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
5667
5668         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5669         button to temporarily disable position recording in the
5670         "saved position" test.
5671
5672 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
5673
5674         * gtk/gtkthemes.c: added compat code that temporarily implements
5675         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
5676         going to be revamped by owen's upcoming GtkModule patches, but
5677         untill then people want gtk to build, right? ;)
5678
5679 2000-11-04  Havoc Pennington  <hp@pobox.com>
5680
5681         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
5682         list
5683
5684         * docs/Changes-2.0.txt: Add note about
5685         gtk_container_get_toplevels()
5686
5687         * gtk/gtktextview.h: formatting
5688         
5689         * gtk/gtktextview.c: don't start descriptions with "Returns",
5690         confuses gtk-doc
5691
5692 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
5693
5694         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
5695         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
5696
5697 2000-11-03  Havoc Pennington  <hp@redhat.com>
5698
5699         * gtk/gtktexttagtable.c: Docs
5700         (gtk_text_tag_table_size): return a signed int
5701
5702         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
5703         (gtk_text_tag_event): make the event_object a GObject
5704
5705         * gtk/gtktextview.c: Write API docs for all functions.
5706
5707         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
5708         for gtk_text_view_get_window_type() called on one of the private
5709         windows.
5710
5711         * gtk/gtktextview.c: Instead of accessing text_view->buffer
5712         directly, call get_buffer() which demand-creates a default
5713         buffer. So gtk_text_view_new() can be used to create a view with a
5714         default buffer in it, if you just want an empty text box users can
5715         put data in. Useful for GUI builders also.
5716
5717 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
5718
5719         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
5720         the charset encodign portion MUST be in lowercase.
5721         * gtk/gtkrc.az: added file for Azeri language
5722
5723 2000-11-03  Havoc Pennington  <hp@redhat.com>
5724
5725         Get widgets working on the btree/buffer side. Display of them 
5726         still doesn't work.
5727         
5728         * gtk/gtktextview.c: start implementing child widget stuff
5729
5730         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
5731
5732         * gtk/gtktextlayout.c: handle embedded widgets
5733
5734         * gtk/gtktextdisplay.c: handle embedded widgets
5735
5736         * gtk/gtktextchild.c: Implement all the child anchor goo
5737
5738         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
5739         function
5740
5741         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
5742         (insert_pixbuf_or_widget_segment): abstract out common portions of 
5743         creating a child anchor or a pixbuf segment.
5744         (gtk_text_btree_create_child_anchor): new function
5745         (gtk_text_btree_unregister_child_anchor): new function
5746
5747         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
5748         allocate_child signal on GtkTextLayout
5749
5750         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5751         values
5752         (gtk_text_iter_get_child_anchor): new function
5753
5754         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5755         default handler for the changed signal, which calls
5756         gtk_text_buffer_set_modified(), instead of just always emitting
5757         changed then calling set_modified() manually. I guess this is
5758         maybe more flexible. It seems logical.
5759
5760 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
5761
5762         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5763         now.
5764
5765         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5766
5767 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
5768
5769         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5770         been marked static.
5771
5772 2000-11-02  Havoc Pennington  <hp@redhat.com>
5773
5774         * gtk/testgtk.c (create_labels): had a test backward
5775
5776         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5777         fields, so the dest GC ends up with the correct clip origin, 
5778         etc. Fixes a bug where colored labels didn't redraw 
5779         properly.
5780
5781 2000-11-02  Alexander Larsson  <alexl@redhat.com>
5782
5783         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5784         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5785         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5786         Add last argument to t_type_register_static call.
5787         
5788         * gdk/linux-fb/gdkdrawable-fb2.c:
5789         Add last argument to t_type_register_static call.
5790         export the get_image drawable virtual function.
5791
5792         * gdk/linux-fb/gdkimage-fb.c:
5793         Add last argument to t_type_register_static call.
5794         rename gtk_image_get to _gdk_fb_get_image and
5795         export it for use by gdkdrawable-fb2.
5796
5797         * gdk/linux-fb/gdkprivate-fb.h:
5798         export _gdk_fb_get_image.
5799
5800         * gdk/linux-fb/gdkselection-fb.c:
5801         Add new api call stubs.
5802
5803         * gtk/Makefile.am:
5804         Missing ( in linux-fb part.
5805
5806         * modules/linux-fb/Makefile.am:
5807         Must link with gdk_pixbuf or get unresolved symbol.
5808
5809 2000-11-01  Havoc Pennington  <hp@pobox.com>
5810
5811         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
5812         GTK_TYPE_TEXT_ITER and BOXED marshallers
5813
5814         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5815
5816         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5817         
5818         * gtk/gtk-boxed.defs: add GtkTextIter
5819
5820         * gtk/gtkmarshal.list: Add marshallers for text widget that 
5821         properly use OBJECT and BOXED
5822
5823 2000-11-01  Havoc Pennington  <hp@redhat.com>
5824
5825         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5826
5827         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5828         before returning it. 
5829         
5830 2000-11-01  Havoc Pennington  <hp@redhat.com>
5831
5832         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5833         Clip the rectangle to be rendered to the drawable, since
5834         get_from_drawable() requires a region within the drawable
5835
5836 2000-11-01  Havoc Pennington  <hp@redhat.com>
5837
5838         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5839         from coordinates.
5840
5841 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
5842
5843         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5844         it isn't NULL.
5845
5846 2000-11-01  Havoc Pennington  <hp@pobox.com>
5847
5848         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5849         on a label
5850         (gtk_label_finalize): unref the attr list if any.
5851
5852         * gtk/testgtk.c (create_get_image): close test on second click
5853         (make_message_dialog): close dialog if it exists
5854
5855         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5856
5857         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5858         gdk-pixbuf
5859
5860         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5861         from Pango markup format
5862         (gtk_label_set_markup_with_accel): ditto but with accelerator
5863         parsing
5864
5865         * gtk/gtkimage.c (gtk_image_expose): reformatting.
5866
5867         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5868         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5869         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
5870         call gdk_window_get_origin().
5871
5872         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5873         implement GDK_PIXBUF_ALPHA_FULL
5874         
5875 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
5876
5877         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5878         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5879         g_signal_handlers_disconnect_matched to block/unblock and disconnect
5880         multiple handlers respectively, instead of only treating the
5881         first handler found (bug reported by owen).
5882
5883 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
5884
5885         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5886
5887         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5888
5889         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5890         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5891         gtk/gtktreeviewcolumn.h: Fixed inline docs.
5892
5893         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5894         widget.  Needs writing someday.
5895
5896         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5897         the docs.
5898
5899 2000-10-30  Havoc Pennington  <hp@redhat.com>
5900
5901         * gtk/gtktextview.h, gtk/gtktextview.c:
5902         Rename delete_at_cursor delete_from_cursor, and 
5903         move to move_cursor.
5904
5905 2000-10-30  Havoc Pennington  <hp@redhat.com>
5906
5907         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5908         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5909         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5910         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5911         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5912         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5913         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5914         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5915         gtktexttypes.h, gtktextview.c, gtktextview.h:
5916
5917         Massive reindentation and reformatting. Arg alignment and comments
5918         still need fixing in various places.
5919
5920 2000-10-30  Havoc Pennington  <hp@redhat.com>
5921
5922         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5923         to be named insert_at_cursor and delete_at_cursor so C++ can
5924         handle them.
5925
5926 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5927
5928         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5929         to get a double directory separator in case the home directory
5930         ends with one. This would cause trouble especially on Windows,
5931         where the path will be confused with the syntax for an an UNC
5932         (network share) path \\server\share\path.
5933         (gtk_rc_add_initial_default_files): Ditto.
5934
5935 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
5936
5937         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5938
5939         * gtk/gtktextview.c: Use correct marshallers.
5940
5941 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
5942
5943         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
5944         use new iter stuff, and added all the appropriate signals et al.
5945
5946         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5947         code is internal to gtk only.
5948
5949 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5950
5951         * gtk/gtk.def
5952         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5953         glib-genmarshal etc.
5954
5955 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
5956
5957         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5958         parallel builds.
5959
5960 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
5961
5962         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5963
5964 2000-10-27  Robert Brady  <robert@suse.co.uk>
5965
5966         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
5967         en_GB (British), ia (Interlingua).
5968
5969 2000-10-26  Havoc Pennington  <hp@redhat.com>
5970
5971         * gtk/gtktextiter.c (my_strrstr): fix constness warning
5972
5973         Fixed output of:
5974         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5975         
5976         * gtk/gtktextsegment.c (char_segment_new): rename
5977         (_char_segment_new_from_two_strings): rename
5978         (_toggle_segment_new): rename
5979         
5980         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5981         (make_clipboard_widget): make it static
5982         (text_get_func): static
5983         (text_clear_func): static
5984
5985         * gtk/gtkcolorsel.c (adjustment_changed): make this function
5986         static
5987         (hex_changed): make it static
5988         (hsv_changed): make it static
5989         (opacity_entry_changed): make it static
5990
5991         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5992         (toggle_segment_check_func): rename with _gtk
5993
5994         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5995         (_widget_segment_new): rename
5996         (_widget_segment_add): rename
5997         (_widget_segment_remove): rename
5998         (_widget_segment_ref): rename
5999         (_widget_segment_unref): rename
6000
6001         * gtk/gtktextmark.c (_mark_segment_new): Rename
6002         _gtk_mark_segment_new   
6003
6004 2000-10-26  Havoc Pennington  <hp@redhat.com>
6005
6006         * gtk/gtkmarshal.list: add new marshallers used by the text widget
6007         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6008         types
6009
6010         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
6011         marshaller types
6012
6013         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
6014         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
6015         license on these files.
6016
6017         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
6018         work.
6019
6020         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
6021         runtime random number different for each tree, instead of 
6022         a constant I made up.
6023
6024 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
6025
6026         * gtk/Makefile.am: buncha cleanups, kludged build sources
6027         dependencies with a Makefile: oldest-source-stamp dependancy
6028         for the moment. automake is really fighting us here, with
6029         intentionally not allowing user-defined rules or dependancies
6030         prior to it's -include $(DEP_FILES) statement. sucks rocks!
6031
6032         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
6033         to public headers. tehy have a comment stating that they are
6034         "semi-public" aren't included by gtk.h and if enums popup there,
6035         they can be /*< skip >*/-ed.
6036
6037         * gtk/gtktextlayout.h: 
6038         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
6039         added LGPL... <SIGH>
6040
6041 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
6042
6043         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
6044         GtkTreeIter.  Added iterators everywhere.
6045
6046         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
6047
6048         * gtk/gtktreeviewselection.c: Changed to use the iterators.
6049
6050         * gtk/gtktreestore.c: Changed to use the iterators.
6051
6052         * gtk/gtkliststore.c: Commented out the code.  Will convert to
6053         iterators tomorrow.
6054
6055         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
6056         iterators tomorrow.
6057
6058         * gtk/treestoretest.c: Changed to use iterators.
6059
6060         * demos/testgtk/main.c: Moved to use the new iterator system.
6061
6062 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
6063
6064         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
6065         localization misbehaviour.
6066
6067         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
6068         a useless type without copy/free.
6069
6070         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
6071         of GTK_TYPE_CTREE_NODE.
6072
6073 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
6074
6075         * gtk/gtksignal.c:
6076         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
6077         applicable.
6078
6079         * gtk/gtk-boxed.defs (GtkSelectionData): specify
6080         gtk_selection_data_copy and gtk_selection_data_free
6081         do GtkSelectionData work as params in signals.
6082
6083 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
6084
6085         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
6086         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
6087         couldn't they at least give it a non-standard name?
6088         
6089         * gtk/gtktextlayout.c: arg! yet another implementation of
6090         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
6091
6092         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
6093         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
6094         home. now i know this _is_ a conspiracy.
6095
6096         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
6097         ::state-changed.
6098
6099         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
6100         (gtk_accel_group_create_add): marshaller signature fixups.
6101
6102         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
6103         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
6104
6105         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
6106         anymore.
6107
6108 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
6109
6110         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
6111         due to the signal system changes, it wouldn't build currently. to
6112         be fixed soon.
6113
6114         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
6115
6116         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
6117         so it needs gtk_marshal_VOID__ENUM() instead of
6118         gtk_marshal_NONE__UINT().
6119
6120         * gdk/gdk*.c: adapted type registration functions.
6121
6122         * gtk/gtkbindings.c:
6123         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
6124         gone.
6125
6126         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
6127
6128         * gtk/gtkobject.c:
6129         (gtk_object_destroy):
6130         (gtk_object_shutdown): fixed recursion guards. basically we have to
6131         catch the case where any of GObject.shutdown() or gtk_object_destroy()
6132         is called during ::destroy, and avoid recursion there.
6133
6134         * gtk/gtktypeutils.c:
6135         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
6136         boxed_copy/boxed_free. this needs a more general solution based on a
6137         publically installed code-generator utility.
6138
6139         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
6140         glib's gobject has support for that now.
6141         define GtkSignalMarshaller in terms of GSignalCMarshaller.
6142
6143 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
6144
6145         * gtk/gtksignal.[hc]:
6146         * gtk/gtkmarshal.[hc]:
6147         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
6148         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
6149         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
6150         care of that.
6151
6152         * *.c: marshaller name fixups.
6153
6154         * gtk/gtkmarshal.list: added a comment briefing the format.
6155
6156 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
6157
6158         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
6159         compatibility macros here now. more specifically, most of
6160         the API is preserved (yes, _most_, nonwithstanding the
6161         following exceptions listed, the API is stil lHUGE ;)
6162         things that got removed completely:
6163         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
6164         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
6165         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
6166         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
6167         gtk_signal_remove_emission_hook().
6168         non-functional functions variants:
6169         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
6170         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
6171         not supported anymore.
6172         (gtk_signal_compat_matched): new internal function to aid
6173         implementation of the compatibility macros, it  provides
6174         functionality to block/unblock/disconnect handlers based
6175         on func/data.
6176
6177         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
6178
6179         * *.c: adaptions to new type registration API signatures.
6180
6181 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
6182
6183         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
6184
6185 2000-10-25  Robert Brady  <robert@suse.co.uk>
6186
6187         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
6188         gdk_property_delete): If window == NULL, assume the root window.
6189         (restoring the behaviour that was in 1.2).
6190         
6191         * gtk/testtext.c (save_buffer): Allow creation of new files when
6192         saving.
6193
6194         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
6195         calls to read().
6196
6197 2000-10-25  Tor Lillqvist  <tml@iki.fi>
6198
6199         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
6200
6201         * gdk/win32/gdkdrawable-win32.c
6202         * gdk/win32/gdkimage-win32.c
6203         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
6204         X11 backend.
6205
6206         * gdk/win32/gdkcc-win32.c
6207         * gdk/win32/gdkcolor-win32.c
6208         * gdk/win32/gdkfont-win32.c
6209         * gdk/win32/gdkinput-win32.c
6210         * gdk/win32/gdkmain-win32.c
6211         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
6212
6213 2000-10-24  Havoc Pennington  <hp@redhat.com>
6214
6215         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
6216         it a static function
6217
6218         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
6219         redraw text when a tag is applied to it.
6220
6221         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
6222         (gtk_text_tag_affects_nonsize_appearance): private functions to
6223         see if a tag requires various kinds of redraw/layout to be queued
6224         up.
6225
6226         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
6227
6228         * gtk/testtext.c (fill_example_buffer): Put the cursor 
6229         at the start of the buffer, so search works by default
6230
6231         * gtk/gtktextiter.c (lines_match): init match_start always
6232
6233         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
6234         function, get iter at a line + a byte index
6235
6236         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
6237         to set byte position within a line
6238         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
6239
6240 2000-10-23  Havoc Pennington  <hp@redhat.com>
6241
6242         * gtk/testtext.c: Re-enable the "find" dialog
6243
6244         * gtk/testgtk.c: Add test for gdk_drawable_get_image
6245         
6246         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
6247         the arguments to gdk_draw_drawable were in the wrong order
6248         (gdk_window_paint_init_bg): This function was ignoring the
6249         init_region, instead of clipping to it, so the entire backing
6250         pixmap was cleared on every begin_paint()
6251         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
6252         was in here again, the loop kept using the same GtkWindowPaint
6253         over and over.
6254         (gdk_window_begin_paint_region): Fix a bug where we had two
6255         x_offset instead of x_offset and y_offset
6256
6257         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
6258         before we get the image.
6259         (gdk_draw_drawable): get the composite before we draw the drawable.
6260         (gdk_drawable_real_get_composite_drawable): default
6261         get_composite_drawable implementation that returns the drawable 
6262         itself
6263
6264         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
6265         get_composite_drawable virtual function
6266
6267         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
6268         list-walking bug
6269
6270         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
6271         make this work if the source drawable is a GdkDrawableImplX11
6272         instead of a public drawable type. This is really broken; the
6273         problem is that GdkDrawable needs a virtual method get_xid(), but
6274         of course that doesn't work in practice. Enter RTTI.
6275
6276         Also, improve mismatched depth message.
6277
6278         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
6279         GdkPixmap
6280
6281         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
6282         install _gdk_x11_get_image as our implementation of get_image
6283         
6284         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
6285         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
6286
6287         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
6288         gdk_drawable_get_image
6289
6290         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
6291
6292         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
6293         get_image
6294
6295         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
6296         trailing semicolon after for loop
6297
6298 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
6299
6300         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
6301         where font_desc for widget's context lagged widget's font_desc by
6302         one step.
6303
6304 2000-10-22  Tor Lillqvist  <tml@iki.fi>
6305
6306         * gdk/win32/gdkgc-win32.c
6307         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
6308
6309         * gtk/makefile.mingw.in
6310         * gtk/gtk.def: Updates.
6311
6312         * gtk/testgtk.c: sleep() is called _sleep in MS's C
6313         library.
6314
6315         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
6316
6317         * gtk/makefile.msc: Remove
6318
6319         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
6320
6321         * gtk/Makefile.am: Add it.
6322
6323         * configure.in: Generate it.
6324
6325         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
6326         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
6327         something even if not implemented, to satisfy picky MSVC.
6328
6329         Patches by Hans Breuer:
6330         
6331         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
6332         SetBkMode() and SetTextAlign() before calling
6333         pango_win32_render().
6334
6335         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
6336         Set hcliprgn to NULL after destroying it.
6337         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
6338
6339         * gdk/win32/gdkgeometry-win32.c
6340         (_gdk_windowing_window_queue_antiexpose): More effective
6341         implementation.
6342
6343         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
6344         depth as default, not the visual's.
6345
6346         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
6347         against empty title.
6348
6349         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
6350         IMAGE_PRIVATE_DATA.
6351
6352         * gdk/win32/gdkimage-win32.c: Use it.
6353
6354 2000-10-22  Robert Brady  <robert@suse.co.uk>
6355
6356         * configure.in: Check for bind_textdomain_codeset
6357
6358         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
6359         present, make use of it.
6360
6361         Add a translatable string "default:LTR" which, if translated
6362         to "default:RTL", will cause the default direction to be
6363         Right-to-Left.
6364
6365         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
6366         direction if marked as flippable.
6367
6368         * gtk/gtkhscale.c: Mark widget as flippable.
6369         
6370 2000-10-04  Havoc Pennington  <hp@redhat.com>
6371
6372         * gtk/testgtk.c (create_buttons): create some stock buttons
6373         with the default accel group
6374         (create_image): test some new GtkImage features
6375         (make_message_dialog): test GtkMessageDialog
6376         (create_modal_window): fix someone's bizzarro indentation
6377
6378         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
6379         GTK_WIN_POS_CENTER_ON_PARENT. 
6380         Add "destroy with parent" setting, which means the window goes
6381         away with its transient parent.
6382         (gtk_window_get_default_accel_group): get the default accel group
6383         for the window.
6384         (gtk_window_set_destroy_with_parent): set/unset destroy with
6385         parent flag
6386         (gtk_window_read_rcfiles): invalidate icon set caches
6387         after reloading rcfiles 
6388
6389         * gtk/gtkenums.h (GtkWindowPosition): add
6390         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
6391         on its parent window when the dialog is mapped for the first time.
6392
6393         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
6394         a simple message dialog class
6395         
6396         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
6397         handler to emit response signal, and maybe later it would
6398         honor a hide_on_delete flag - though that isn't there yet.
6399         Set border width on the vbox to 2, so we get some padding.      
6400         Use a button box for the action area.
6401         (gtk_dialog_key_press): synthesize a delete event if Esc
6402         is pressed and the GtkWidget key press handler didn't 
6403         handle the escape key.
6404         (gtk_dialog_new_with_buttons): new function creates a dialog
6405         with some default buttons in it.
6406         (gtk_dialog_add_action_widget): add an activatable widget
6407         as a button in the dialog - you can also add a non-activatable
6408         widget by accessing the action area directly.
6409         (gtk_dialog_add_button): add a simple button - stock ID or 
6410         label - to the action area
6411         (gtk_dialog_response): emit response signal
6412         (gtk_dialog_run): block waiting for the dialog, return 
6413         the response. Override normal delete_event behavior, so that 
6414         delete_event does nothing inside gtk_dialog_run().
6415
6416         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
6417         emitted when an action widget is clicked or the dialog gets
6418         delete_event
6419
6420         * gtk/gtk.h: add gtkmessagedialog.h
6421
6422         * gtk/Makefile.am: add gtkmessagedialog.[hc]
6423
6424 2000-10-18  Havoc Pennington  <hp@redhat.com>
6425
6426         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
6427         where any number of empty lines would get skipped
6428
6429         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
6430         edge.
6431
6432         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
6433         warning about invalid iterators (explain more thoroughly)
6434         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
6435
6436         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
6437         big
6438
6439         * demos/*.c: Add error handling
6440
6441         * gtk/gtktextbuffer.c: don't modify const iterators
6442
6443         * gtk/gdk-pixbuf-loader.c: Add full error handling here
6444
6445         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
6446         on file load
6447
6448         * gtk/gtkiconfactory.c: Update to reflect addition of error
6449         handling to gdk-pixbuf loaders
6450
6451 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
6452
6453         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
6454         move to new modularized testgtk.
6455
6456 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
6457
6458         * gtk/gtktreeview.c: Draw the arrows correctly.
6459
6460         * gtk/gtktreemodel.c: Added user docs.
6461
6462         * gtk/gtk.h: remove gtktreedatalist.h.
6463
6464         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
6465         parent when generating my type.
6466
6467         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
6468         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
6469
6470 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6471
6472         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
6473         GtkTreeModel from object to interface.
6474
6475 2000-10-16  Havoc Pennington  <hp@redhat.com>
6476
6477         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
6478         compilation
6479
6480 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6481
6482         * gtk/gtktreeselection.c: Add API documentation to all public
6483         functions.
6484
6485         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
6486         functions.
6487
6488 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
6489
6490         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
6491         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
6492         docs to all public functions.
6493
6494         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
6495         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
6496         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
6497         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
6498         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
6499         issue.
6500
6501 2000-10-14  Robert Brady  <robert@suse.co.uk>
6502
6503         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
6504
6505 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
6506
6507         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
6508         values other then G_TYPE_STRING.
6509         * gtk/gtktreeselection.c: Minor commenting updates.
6510         * gtk/gtktreeview.c: Format updates.
6511
6512 2000-10-09  Tor Lillqvist  <tml@iki.fi>
6513
6514         * README.win32: Update.
6515
6516         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
6517         lines that had been deleted by mistake (?).
6518
6519         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
6520         also the case fg==white and bg==black (but still not randomly
6521         coloured cursors). Thanks to Wolfgang Sourdeau.
6522
6523         * gdk/win32/*.c: Silence gcc -Wall.
6524
6525         * gtk/gtk.def: Add missing entry points.
6526
6527         Fixes by Hans Breuer:
6528
6529         * gdk/makefile.msc
6530         * gdk/win32/makefile.msc: Update.
6531
6532         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
6533         some MSVC thing, presumably), cause breakpoint on failures. Add
6534         GDK_NOR case. Call g_log_set_always_fatal.
6535
6536         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
6537         should be pased by reference.
6538         
6539         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
6540         
6541         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
6542
6543         * gdk/win32/gdkevents-win32.c
6544         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
6545
6546         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
6547         implementation object.
6548
6549         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
6550         not just windows.
6551         
6552         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
6553         Use the wrapper object.
6554         
6555 2000-10-06  Havoc Pennington  <hp@redhat.com>
6556
6557         * Makefile.am (SRC_SUBDIRS): contrib subdir
6558
6559         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
6560         so it can be used in Xlib version
6561
6562         * demos/testpixbuf.c (update_timeout): error checking from 1.0
6563         tree
6564
6565         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
6566         change from 1.0 tree that returns first frame of animation
6567         if the loaded file is an animation.
6568
6569         * contrib: add new directory to hold stuff that comes with GTK+
6570         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
6571         
6572         * configure.in: add contrib/*
6573
6574 2000-10-05  Havoc Pennington  <hp@redhat.com>
6575
6576         * demos/testpixbuf-save.c: add pixbuf save test
6577
6578         * demos/Makefile.am: add testpixbuf-save.c
6579
6580 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
6581
6582         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
6583         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
6584         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
6585         * gtk/gtktreeselection.[ch]: Replaced
6586         "node_selected"/"node_unselected" signal with "selection_changed"
6587         signal.
6588
6589 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6590
6591         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
6592         tree widget.
6593
6594 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6595
6596         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
6597         drawing.
6598
6599 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
6600
6601         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
6602         Move list pointer forwards before removing item from
6603         list. (Crash reported by Salmaso Raffaele)
6604
6605         * gdk/gdkwindow.h: Remove spurious trailing ,
6606
6607         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6608         dependencies on uninstalled libraries, sorry folks.
6609
6610 2000-10-04  Havoc Pennington  <hp@redhat.com>
6611
6612         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6613         gtk/gtkiconfactory.c: Fix copyrights    
6614
6615         * demos/testpixbuf.c: add inline pixbuf test
6616         
6617 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6618
6619         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6620         Add gdk_window_iconify.
6621
6622         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6623         (gdk_window_set_geometry_hints): Add win_gravity
6624         to geometry structure.
6625
6626         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6627         Implement _NET_WM_PING.
6628
6629         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6630         Set _NET_WM_PID on the client leader.
6631
6632         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6633         Handle UTF-8 better.
6634
6635         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6636         UTF-8 better, set _NET_WM_NAME as well. Only set
6637         icon name if it hasn't previously been explicitely 
6638         set.
6639
6640 2000-10-03  Havoc Pennington  <hp@redhat.com>
6641
6642         * gtk/testtextbuffer.c: clean up trailing whitespace,
6643         add extensive tests for tag toggle iteration.
6644         
6645         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
6646         distance
6647
6648         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6649         optimize case where the tag root is on level 1
6650         (gtk_text_line_previous_could_contain_tag): attempt to implement
6651         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6652         functionality
6653
6654         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6655         Implement this, though not very efficiently.
6656
6657         * gtk/gtktextiterprivate.h: reformat
6658
6659         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6660         iterator
6661
6662         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6663         this to properly revalidate the iterators.
6664
6665         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6666         properly at the end of the line (and therefore on empty lines)
6667
6668         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6669         maybe we should return a value...
6670
6671 2000-10-03  Tor Lillqvist  <tml@iki.fi>
6672
6673         * config.h.win32: Guard definition of alloca(). glib.h now handles
6674         that.
6675
6676         * gdk/gdk.def
6677         * gtk/gtk.def: Add new entry points.
6678
6679         Changes just to make GTK+ build without errors on Win32. No hope
6680         of it working in its current state, though...:
6681         
6682         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
6683         some functions from the X11 backend, just to make GTK+ build.
6684
6685         * gdk/makefile.mingw.in
6686         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
6687         number. Add new object files.
6688
6689         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
6690         GetMessageTime to get timestamp (where on X11 uses
6691         gdk_x11_get_server_time()).
6692
6693 2000-10-02  Havoc Pennington  <hp@pobox.com>
6694
6695         * gtk/gtktextview.c: text_window_* weren't static and should have
6696         been.
6697         Start work on child widgets; not yet complete, syncing to 
6698         office computer.
6699
6700         * gtk/gtktextchild.h: change this to contain a public interface,
6701         starting work on child interfaces.
6702         * gtk/gtktextchildprivate.h: move private interfaces here
6703
6704         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
6705
6706         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
6707         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
6708         gtk/gtktextmark.c: copyright notices
6709
6710         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
6711         internal functions      
6712
6713         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
6714         internal function
6715
6716         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6717         Reformatting    
6718
6719 2000-09-30  Havoc Pennington  <hp@pobox.com>
6720
6721         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
6722         NULL start/end pointers
6723
6724         * gtk/gtktextbuffer.c: Write some docs
6725         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
6726         NULL, so you can just check whether there's a selection.        
6727
6728         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
6729         cleanup_line or segments_changed ourselves, it gets done 
6730         in unlink_segment
6731
6732         * gtk/gtktextmark.h:
6733         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
6734         
6735         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
6736
6737         * gtk/gtktextmark.c: delete some more old Tk cruft
6738
6739         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
6740         mark before removing it, so we can emit MARK_DELETED with a valid
6741         pointer.
6742         (gtk_text_buffer_mark_set): hold ref across signal emission
6743
6744         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
6745         whining about attempts to delete special marks
6746
6747         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
6748         underscore, since it's internal.
6749
6750         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
6751         now implemented in terms of iterators in gtktextiter.h
6752
6753         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
6754         New function, destructively sets contents of buffer. Also 
6755         a convenient way to clear the buffer by setting text to ""
6756
6757         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6758         multiline string literal
6759
6760         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6761         text changes.
6762
6763         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
6764         is not dereferenceable
6765         (gtk_text_iter_forward_lines): fix return value
6766
6767 2000-09-29  Havoc Pennington  <hp@redhat.com>
6768
6769         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6770
6771         * gtk/gtktextview.c: Implement drag thresholding; change functions 
6772         that set border window size to have nicer name
6773         (gtk_text_view_mark_set_handler):  Fix this to have the 
6774         right signature.
6775
6776         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6777
6778         * gtk/testtext.c: Update with API changes, put line numbers on 
6779         both sides.
6780         
6781         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6782         with this
6783
6784         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6785         pixbuf; delete a big block of #if 0 Tk code
6786
6787         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
6788         insert_pixmap with insert_pixbuf
6789
6790 2000-09-29  Martin Baulig  <baulig@suse.de>
6791
6792         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6793         confusion with the GdkPixbuf of the GNOME 1.x platform.
6794
6795 2000-09-29  Havoc Pennington  <hp@pobox.com>
6796
6797         * gtk/gtktextview.c: Implement the side windows.
6798
6799         * gtk/testtext.c: Implement simple line numbering in the 
6800         left side window; seems to make scrolling sloooow. Oops.
6801         Also, cursor blink is for some reason causing redraws
6802         of the line numbers. Should investigate...
6803
6804 2000-09-28  Havoc Pennington  <hp@redhat.com>
6805
6806         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
6807         scrolling child windows, and draw focus rectangle properly.
6808         
6809         (gtk_text_view_buffer_to_window_coords):
6810         Coordinate transformation to deal with all these freaking windows
6811         and offsets
6812         (gtk_text_view_window_to_buffer_coords): transform the other way
6813
6814         * gtk/testtext.c (create_buffer): Update to match Pango API change
6815
6816         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6817         anonymous tags
6818         (foreach_unref): don't emit remove signal from finalize, just
6819         set tag's parent to NULL
6820
6821 2000-09-26  Havoc Pennington  <hp@redhat.com>
6822
6823         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6824         Fix some warnings       
6825
6826 2000-09-26  Havoc Pennington  <hp@redhat.com>
6827
6828         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6829         headers into the private header list
6830
6831         * Makefile.am (pkgconfig_DATA): install pkg-config files
6832
6833         * configure.in: add pkg-config files
6834
6835         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6836
6837         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6838         outstanding icon caches on theme change.
6839
6840         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
6841         important types:
6842
6843         (GtkIconSource): Specification for creating a pixbuf 
6844         appropriate for a direction/state/size triplet from 
6845         a source pixbuf or filename
6846
6847         (GtkIconSet): List of GtkIconSource objects that are used to
6848         create the "same" icon (e.g. an OK button icon), and cache for
6849         rendered icons
6850
6851         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6852         up the icon set for a given stock ID.  GTK maintains a stack of
6853         GtkIconFactory to search, and applications or libraries can add
6854         additional icon factories on top of the stack
6855         
6856         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
6857         the set of GtkIconSource specified for a given stock ID into 
6858         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
6859         RcStyle, under the specified stock ID.
6860
6861         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6862         render_icon used to derive a GdkPixbuf from a GtkIconSource.
6863         This allows people to theme how prelight, insensitive, etc. are
6864         done.
6865
6866         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6867         icon factories for a style, and return the resulting 
6868         icon set if any.
6869
6870         (gtk_style_render_icon): Render an icon using the render_icon 
6871         method in the GtkStyleClass.
6872
6873         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
6874         Use the style for a given widget to look up a stock ID, get the
6875         icon set, and render an icon using the render_icon method 
6876         of the style
6877
6878         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6879         (contains information about a stock item), the built-in stock item
6880         IDs, and functions to add/lookup stock items.
6881
6882         * gtk/stock-icons/*: Stock icons that come with GTK
6883
6884         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6885         a button based on a GtkStockItem
6886         (gtk_button_new_accel): Takes a uline string and accel group, and
6887         installs the accelerator.
6888
6889         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6890         image-display widget.
6891
6892 2000-09-25  Havoc Pennington  <hp@redhat.com>
6893
6894         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6895
6896         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
6897         Fix a bug when removing node data, we didn't properly 
6898         re-splice the linked list after removing the data.
6899
6900         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
6901         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6902
6903         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6904
6905         * gtk/gtktextlayout.c (set_para_values): Set tab array 
6906         for the layout from the GtkTextTag.
6907
6908         * gtk/gtktexttypes.h: delete tab and search cruft, 
6909         remove g_convert() in favor of GLib version
6910
6911         * gtk/gtktexttypes.c: remove tab implementation from here,
6912         move to Pango
6913
6914         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
6915         tab stuff using new PangoTabArray from Pango
6916
6917         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6918         unused border_width stuff
6919
6920 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
6921
6922         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6923         glib) and now useless utf_to_latin1() latin1_to_utf()
6924
6925         * gtk/gtktextview.[ch]: Change ::move_insert and
6926         ::delete_text action signals to ::move and ::delete;
6927         create the signals with the right enumeration type,
6928         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6929         C-v bindings, change Home, End to move to beginning/end
6930         of line, Add C-Home C-End to move to beginning/end
6931         of buffer. Change ::cut_text to ::cut_clipboard, etc;
6932         combine ::scroll_text into ::move; use new GtkSelectionData
6933         functions to simplify DND text handling.
6934         
6935         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6936         deletion enumerations here, rename enumeration values to 
6937         be consistently plural.
6938
6939         * gtk/gtktextbuffer.c: Use new clipboard interfaces
6940         for cut/copy/paste and primary selection.
6941
6942         * gtk/gtktextbuffer.[ch]: Remove excess time and
6943         'interactive' arguments from cut/copy/paste;
6944         rename cut to cut_clipboard, etc; remove
6945         gtk_text_buffer_get_clipboard_contents().
6946
6947         * gtk/gtktextlayout.[ch]: Add 
6948         gtk_text_layout_move_iter_to_line_end() to move the iter to 
6949         line ends.
6950
6951         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6952         Functions to set or get a UTF-8 string on the selection
6953         data.
6954
6955         * gtk/gtkclipboard.[ch]: New, simplified selection handling
6956         interfaces.
6957
6958         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6959         created widgets - one of these is useless if we don't.
6960
6961         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6962         a public function clear all targets registered for the
6963         widget.
6964
6965         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6966         Never call gtk_widget_realize() - that was just asking
6967         for bizarre side-effects.
6968
6969         * gtk/gtkselection.c (gtk_selection_owner_set): Call
6970         gdk_selection_owner_set even if the widget is the
6971         same so that we reliably update the timestamp on
6972         the server.
6973
6974         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
6975         gdk_x11_get_server_time() function.
6976         
6977         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6978         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6979         Add some tricky filtering on serial numbers for
6980         selection clear events to fix up long-standard
6981         race condition FIXME's in gtkselection.c.
6982
6983         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6984         routines to convert from utf8 to compound text or
6985         STRING and from a text property to UTF-8.
6986
6987         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
6988         a convenience function gdk_get_current_event_time().
6989
6990         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6991         and free selection_data->data properly
6992
6993 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
6994
6995         * gtk/gtkthemes.c: Remove some unecessary includes.
6996
6997 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
6998
6999         * gtk/gtktextdisplay.c
7000         * gtk/gtktextlayout.c
7001         * gtk/gtktexttag.c
7002         * gtk/gtktexttag.h
7003         * gtk/testtext.c: Change the overstrike property to strikethrough,
7004         to closer match pango.
7005
7006 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
7007
7008         * gtk/gtktextview.c: Fix up visibility so that focus,
7009         cursor_visible and blink interact properly.  Reenable cursor blink
7010         which had been roughly disabled. Make blink and focus
7011         properly per-view.
7012
7013         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
7014         Add a flag for whether to display insertion cursor and
7015         a function to set the flag.
7016
7017         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
7018         get_line_y() to get_line_yrange(), to be a bit more generally
7019         useful.
7020
7021 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
7022
7023         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
7024           do stop_navigating_submenu, to clear last timeout properly.
7025           Also in gtk_menu_motion_notify move ignore_enter above
7026           the conditional to make it always happen as suggested by Owen
7027
7028 2000-09-07  Tor Lillqvist  <tml@iki.fi>
7029
7030         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
7031
7032         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
7033         w32api headers.
7034
7035         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
7036         declarations.
7037
7038         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
7039         (gdk_win32_get_colormap): A line had been deleted by mistake.
7040
7041         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
7042         (gdk_event_translate): Handle more virtual keycodes to be able to
7043         generate GDK events for Control-comma, Control-period, etc.
7044
7045         * gtk/gtk.def: Add some missing entry points.
7046
7047 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
7048
7049         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
7050         Doc comment fixing. (Mostly non-matching parameter names.)
7051
7052         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
7053         comments a little to avoid looking like a doc comment.
7054
7055         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
7056         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
7057         conversions be changed to GError?)
7058
7059         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
7060         Move private #defines into .c file.
7061
7062         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
7063         order of argument addition, remove duplicates.
7064
7065         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
7066         parent class is FrameClass, not BinClass.
7067
7068         * gtk/gtk.h: Add gtkinvisible, which was missing.
7069         (It's occasionalyl useful for client apps, if seldom.)
7070
7071         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
7072         #define.
7073
7074 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
7075
7076         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
7077         coordinates when creating window, instead of GDK-space
7078         coordinates. (Avoid BadValue on too large windows.)
7079
7080 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7081
7082         * configure.in (use_mmx_asm): Remove conftest* after use along the
7083         lines of AC_TRY_COMPILE.        
7084         
7085         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
7086         of g_dirname, which is deprecated.
7087         (gtk_rc_parse_any): Removed calls to
7088         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
7089
7090         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
7091         Removed calls to g_hash_table_{freeze,thaw}, as they are
7092         deprecated now.
7093
7094         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
7095         instead of g_basename.
7096         
7097 2000-09-04 Elliot Lee <sopwith@redhat.com>
7098         
7099         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
7100         ANSI warning.
7101
7102 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
7103
7104         * gtk/gtkwidget.h:  Add some documenting comments about 
7105           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
7106           just as owen said on irc.
7107
7108         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
7109           set HAS_DEFAULT.  Only set it if there isn't another window
7110           holding it (a focus window which RECEIVES_DEFAULT) and only unset
7111           it if the widget is not the focused window with RECEIVES_DEFAULT.
7112           This fixes weird double default bugs in dialogs which has things
7113           call gtk_window_set_default at times.
7114
7115 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
7116
7117         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
7118         Nils Barth and David Santiago to improve submenu
7119         navigation. The patch does this by creating a triangular
7120         region from the point where the pointer leaves the
7121         menu to the submenu.  While the pointer is in
7122         that region and a timeout has not expired, events 
7123         that would cause the active submenu to change are
7124         ignored.
7125
7126 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
7127
7128         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
7129         moving a toplevel window immediately after sizing it would
7130         result in it being sized back to the old size since 
7131         impl->width, impl->height aren't updated until we hear
7132         back from the server. There is still a (longstanding) bug
7133         here that gdk_window_get_size() will give the wrong size
7134         until we do hear back.
7135
7136 2000-08-31  Havoc Pennington  <hp@redhat.com>
7137
7138         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
7139         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
7140         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
7141         Rename GtkTextStyleValues to GtkTextAttributes
7142
7143 2000-08-31  Havoc Pennington  <hp@pobox.com>
7144
7145         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
7146         for rapid testing whether an iterator is the end iterator
7147         (gtk_text_btree_new): init end line cache
7148         (gtk_text_line_is_last): use fast cached line to 
7149         see if we're the last line.
7150         (get_last_line): use cached line here too, should 
7151         speed up some random unrelated code.
7152         
7153 2000-08-30  Havoc Pennington  <hp@pobox.com>
7154
7155         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
7156         signals.
7157
7158         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
7159         delete_text signals. This allows the signals to be used for
7160         implementing undo.
7161
7162         * gtk/gtktextbuffer.c: Change signal handler signatures; 
7163         provide "interactive" argument when emitting insert_text or
7164         delete_text signal.
7165         
7166 2000-08-30  Havoc Pennington  <hp@pobox.com>
7167
7168         * gtk/gtktextbuffer.c: Docs
7169
7170 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
7171
7172         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
7173         from switch statements, since Tor removed the enumeration
7174         value.
7175         
7176         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7177         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
7178
7179 2000-08-29 Elliot Lee <sopwith@redhat.com>
7180         * */*.h: Use G_GNUC_CONST.
7181
7182 2000-08-27  Havoc Pennington  <hp@pobox.com>
7183
7184         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
7185         minor indentation fixes, inserted some FIXME about stuff I
7186         realized was broken while documenting it.
7187         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
7188         GTK convention  
7189
7190 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
7191
7192         * gtk/testgtk.c (create_styles): Fix double free of
7193         font desc.
7194
7195 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7196
7197         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
7198         
7199         * gtk/testgtk.c (create_styles): Add a test for modifying
7200         the style through gtk_widget_modify_*.
7201
7202         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
7203         a function to get the current modifier style.
7204
7205         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
7206         of the passed in GtkRcStyle instead of ref'ing it.
7207
7208         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
7209
7210 2000-08-20  Tor Lillqvist  <tml@iki.fi>
7211
7212         * gdk/gdkimage.h
7213         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
7214         shared memory image+pixmap GdkImage type, or
7215         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
7216         I am dropping that.
7217
7218         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
7219         actually call gtk_init_abi_check(), passing also
7220         sizeof(GtkWindow). Ditto for gtk_init_check(). 
7221
7222         * gtk/gtk.def
7223         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
7224         New functions, used to check that the GTK+-using code has been
7225         compiled using the correct compiler and switches. In particular,
7226         with gcc one has to use the -fnative-struct switch as GTK+ is
7227         compiled with that.
7228
7229 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
7230
7231         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
7232         ->prev fields when merging lists. (Found simultaneously
7233         by Pawel Salek and Jakub Jelinek)
7234
7235 2000-08-12  Tor Lillqvist  <tml@iki.fi>
7236
7237         * gdk/gdk.def
7238         * gtk/gtk.def: Add missing entries.
7239
7240         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
7241         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
7242
7243         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
7244         function. Dummy implementation at this point.
7245
7246         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
7247         rules. Undefine GTK_COMPILATION when compiling the test programs.
7248         
7249         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
7250
7251 2000-08-11  Tor Lillqvist  <tml@iki.fi>
7252
7253         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
7254         to convert back and forth from UTF-8 and the "system" (or "current
7255         locale") charset when necessary. Indentation/spacing cleanup.
7256
7257 2000-08-10  Havoc Pennington  <hp@redhat.com>
7258
7259         * Makefile.am (snapshot): Change the format of the snapshot
7260         version to match glib
7261
7262         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
7263         from EXTRA_DIST since it doesn't seem to exist
7264
7265 2000-08-10  Tor Lillqvist  <tml@iki.fi>
7266
7267         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
7268         version of the directory name (not the UTF-8 one) when building
7269         the path name to stat().
7270
7271 2000-08-03  Elliot Lee  <sopwith@redhat.com>
7272
7273         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
7274         PANGO_ATTR_SHAPE set.
7275
7276 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
7277
7278         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
7279         Peter Osterlund to simplify the code while keeping the
7280         functionality the same.
7281
7282 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
7283
7284         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
7285         is_viewable() test further inside the function, since removing the 
7286         window from the redraw list without clearing ->update_area
7287         was also very broken.
7288
7289 2000-08-02  Tor Lillqvist  <tml@iki.fi>
7290
7291         * configure.in: Check for <unistd.h>.
7292
7293 2000-08-01  Martin Baulig  <baulig@suse.de>
7294
7295         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
7296         to display the message that this is a development version of GTK+.
7297
7298 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
7299
7300         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
7301         was depending on widget->allocation instead of the width of text_area,
7302         which was incorrect for subclasses like GtkSpinButton.
7303
7304         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
7305         with width == 1 tests that should be width == -1.
7306
7307 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
7308
7309         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
7310         (broken, Elliot, every single window blank on X) custom code with call
7311         to gdk_window_is_viewable() which a) prevents code duplicate and
7312         b) works. 
7313
7314 2000-07-31  Elliot Lee  <sopwith@redhat.com>
7315
7316         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
7317         to get the GDK_PARENT_ROOT() macro to work.
7318         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
7319         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
7320         of, windows that aren't shown.
7321         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
7322         pointer grab stuff.
7323
7324 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
7325
7326         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
7327           s/gtk_main_iteration/g_main_iteration/
7328
7329           Did this already in change:
7330                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
7331           don't know how it got reverted.
7332
7333 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
7334
7335         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
7336         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
7337
7338         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
7339         not gdk_pixbuf.
7340
7341 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
7342
7343         * configure.in,po/{sp,sr}.po: Added Serbian files
7344
7345 2000-07-30  Tor Lillqvist  <tml@iki.fi>
7346
7347         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
7348
7349         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
7350         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
7351         GIOChannel implementation.
7352
7353         * gdk/win32/gdkinput.c
7354         * gdk/win32/gdkpango-win32.c: Update license name here, too.
7355
7356         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
7357         definition to match prototype.
7358
7359         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
7360
7361 2000-07-27  Elliot Lee  <sopwith@redhat.com>
7362
7363         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
7364         function, to allow handling image formats that cannot be detected
7365         by looking at content alone.
7366
7367 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
7368
7369         * docs/tutorial/*.gif *.jpg *.eps
7370           Update these to the same look-n-feel.
7371           Why does including images in DocBook suck so badly?
7372
7373 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
7374
7375         * gtk/gtktable.c: applied patch from Phil Thompson
7376         <phil@river-bank.demon.co.uk> that enables space settings for
7377         the last row/columns as well.
7378
7379 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
7380
7381         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
7382         updates the license headers to the GNU Lesser General Public License,
7383         as well as updating the copyright year to 2000.
7384
7385 2000-07-26  Robert Brady  <rwb197@zepler.org>
7386
7387         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
7388           and po/Makefile, was installing and looking for them under gtk20
7389           and gtk2 respectively.
7390
7391 2000-07-25  Havoc Pennington  <hp@redhat.com>
7392
7393         * gtk/testtext.c: Comment out some stuff that depends on the rest
7394         of my patches.
7395
7396 2000-07-25  Havoc Pennington  <hp@redhat.com>
7397
7398         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
7399         buffer
7400
7401 2000-07-25  Havoc Pennington  <hp@redhat.com>
7402
7403         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
7404         widget changes.
7405
7406         * gtk/gtktextview.h: To be consistent with usage of "line"
7407         throughout the API to mean "newline-terminated thingy", change
7408         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
7409         to MOVEMENT_LINE.
7410
7411         (GtkTextView): Add flags for default editability, and whether to
7412         show the cursor. Add functions to get/set that. Add 
7413
7414         (gtk_text_view_get_iter_location): new function
7415
7416         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
7417         gtktextlayout.h
7418         (g_convert): Add g_convert temporarily, will go in glib in a bit
7419         
7420         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
7421         GtkTextTagTableForeach instead of brokenly using GHFunc.
7422         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
7423
7424         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
7425         moved to public header.
7426
7427         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
7428         "invisible", since "elide" was a bad name.
7429         (gtk_text_tag_get_priority): Added
7430
7431         (GtkTextStyleValues): put this in public header, along with
7432         functions to use it.
7433
7434         * gtk/gtktextmarkprivate.h: Include more headers, since we no
7435         longer include gtktextbtree.h.
7436
7437         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
7438         gtk_text_mark_deleted
7439
7440         * gtk/gtktextlayout.h: Don't include the "really private" headers,
7441         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
7442         to make this possible. Now we only need to install
7443         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
7444         (However the Makefile.am isn't changed yet because of the
7445         logistics of merging gtk-hp-patches piecemeal)
7446
7447         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
7448         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
7449         gtk_text_iter_get_line is now used in the public API for a
7450         different purpose.
7451
7452         * gtk/gtktextiter.h: Clean up function names to be more
7453         consistent. Always call char offset "offset" and byte index
7454         "index". A "line" is always a line number. 
7455
7456         (gtk_text_iter_is_last): new function, more efficient than 
7457         the existing way to check
7458         (gtk_text_iter_is_first): new function, also more efficient
7459
7460         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
7461
7462         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
7463         gtk_text_iter_forward_char, etc.
7464
7465         (gtk_text_iter_forward_to_tag_toggle): Renamed from
7466         forward_find_tag_toggle, since this isn't a linear search
7467
7468         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
7469
7470         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
7471         New functions, search for a buffer substring.
7472
7473         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
7474         interactive and default editable (since we need to store that info
7475         until we receive the selection data).
7476
7477         Remove all the _at_char and at_line etc. versions of functions;
7478         only have iterator versions.
7479
7480         Add _interactive() versions of functions, that consider the
7481         editability of text. (FIXME add interactive flag to the 
7482         insert/delete signals per Darin's suggestion)
7483
7484         (gtk_text_buffer_get_tag_table): new function, demand-creates the
7485         tag table if necessary
7486
7487         Remove declaration of gtk_text_buffer_get_iter_from_string
7488
7489         (_gtk_text_buffer_get_btree): private/internal function, added.
7490         
7491
7492         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
7493         (gtk_text_line_is_last): new function
7494
7495 2000-07-25  Havoc Pennington  <hp@redhat.com>
7496
7497         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
7498         using GtkProgressBar. See Changes-2.0.txt for details.
7499
7500         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
7501         "pulse_step" which are the equivalent of
7502         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
7503         Implement new API.
7504         
7505         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
7506         (use_text_format) to mark whether text set on the progress bar is
7507         a format string. Deprecate entire GtkProgress interface.
7508
7509         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
7510         (gtk_progress_build_string): make this a no-op if use_text_format
7511         is FALSE
7512
7513         * docs/Changes-2.0.txt: Describe progress bar changes.
7514
7515 2000-07-25  Tor Lillqvist  <tml@iki.fi>
7516
7517         * Makefile.am: Include the build directory.
7518
7519         * configure.in: Generate build/Makefile, build/win32/Makefile,
7520         gdk/, gdk/win32/, and gtk/makefile.mingw.
7521
7522         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
7523         Add GETTEXT_PACKAGE.
7524         
7525         * gdk/gdk.def
7526         * gtk/gtk.def: Updates.
7527
7528         * gdk/gdkfont.h
7529         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
7530         need them any longer.
7531
7532         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
7533
7534         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
7535         PANGOWIN32_LIBS and gdk_pixbuf.
7536
7537         * gdk/win32: Compiles, but no doubt doesn't work at all.
7538
7539         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
7540
7541         * gdk/win32/gdkinput.c: New file, temporarily.
7542         
7543         * gdk/win32/gdkinput-win32.h: New file
7544
7545         * gdk/win32/gdkinputprivate.h: Remove.
7546
7547         * gdk/win32/gdkpango-win32.c: New file.
7548
7549         * gtk/makefile.mingw.in: New file
7550
7551         * gtk/makefile.cygwin: Removed
7552         
7553         * gtk/Makefile.am: Update accordingly.
7554
7555         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
7556         made externally visible.
7557
7558         * gtk/gtkmain.c: Use it.
7559         
7560         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
7561         is enough.
7562
7563         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
7564
7565 2000-07-24 Elliot Lee <sopwith@redhat.com>
7566         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
7567         individual backends already.
7568         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
7569         again. Yes, there really is a good reason for this, if you are using the gdkregion
7570         internals, and if you're not, why do you care?
7571         * gdk/gdkwindow.c: Fix inverted condition
7572         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
7573         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
7574         * gtk/gtkrange.c: Redraw trough when moving.
7575         * gtk/gtktypeutils.c: Fix warning by adding const cast.
7576         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
7577
7578 2000-07-23  Tor Lillqvist  <tml@iki.fi>
7579
7580         * configure.in: Check for mkstemp and sigsetjmp. Output
7581         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
7582
7583         More work on GDK for Win32. Still in an intermediate state.
7584
7585         * gdk/makefile.cygwin
7586         * gdk/win32/makefile.cygwin: Removed.
7587         
7588         * gdk/makefile.mingw.in
7589         * gdk/win32/makefile.mingw.in: New files.
7590
7591         * gdk/Makefile.am
7592         * gdk/win32/Makefile.am: Generate and distribute them.
7593
7594         * gdk/win32/gdkwindow-win32.h
7595         * gdk/win32/gdkdrawable-win32.h
7596         * gdk/win32/gdkpixmap-win32.h: New files.
7597
7598         * gdk/win32/gdkcolor-win32.c
7599         * gdk/win32/gdkcursor-win32.c
7600         * gdk/win32/gdkdrawable-win32.c
7601         * gdk/win32/gdkgc-win32.c
7602         * gdk/win32/gdkimage-win32.c
7603         * gdk/win32/gdkprivate-win32.h
7604         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
7605         Rename fields and variables called xcursor, xid, etc (these names
7606         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7607
7608 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7609
7610         * gtk/gtkentry.[ch]: Fix some problems with vertical
7611         alignment.
7612
7613         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7614         char/byte confusion.
7615
7616 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7617
7618         * gtk/gtktextview.c (changed_handler): Fix bug where
7619         redraw wasn't being done properly when height of
7620         dirty region changed.
7621
7622         * demos/Makefile.am: Remove various references to
7623         -lgmodule
7624
7625 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7626
7627         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7628         PangoAttrShape to reserve space for pixmaps, add 
7629         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7630         in the display functions.
7631         
7632         * gtk/testgtk.c (create_layout): Set some more exotic
7633         scrolled window options
7634
7635         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7636         Add function to set the shadow type of a window, to allow
7637         putting a shadow around widgets such as GtkLayout or GnomeCanvas
7638         which don't draw their own frame.
7639
7640 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
7641
7642         * docs/tutorial/package-db-tutorial.sh: New file for
7643           packaging DocBook format tutorial
7644
7645 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
7646
7647         * docs/tutorial/gtk-tut.sgml: Minor updates
7648
7649         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7650
7651 2000-07-19  Tor Lillqvist  <tml@iki.fi>
7652
7653         * gtk/gtksignal.c: Fix C++ comment.
7654
7655         * gtk/gtkimmulticontext.c
7656         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7657         don't return value from void functions.
7658
7659         * gtk/gtk.def: Add gtk_rc_style_unref.
7660
7661 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7662
7663         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7664         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7665         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7666         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7667         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7668         gtk/gtktypeutils.h: Include files outside of the extern "C"
7669         block. Makes some C++ compiler happy. Reported by Denis Vakatov
7670         <vakatov@peony.nlm.nih.gov>.
7671
7672 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
7673
7674         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
7675           Completes first pass. Hurrah!
7676
7677 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
7678
7679         * docs/tutorial/gtk-tut.sgml: More clean ups.
7680
7681 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
7682
7683         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
7684         paint the background of the text area which was accidentally
7685         removed at some point.
7686
7687         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
7688           
7689          - Move most of the functionality from the theme vtable
7690            into GtkRcStyleClass and GtkStyleClass. The moved
7691            vtable functions were changed a bit in the move to
7692            work better in their new home.
7693
7694          - Get rid of the engine and engine_data fields from
7695            GtkRcStyle and GtkStyle; instead the theme
7696            engine derives theme-specific subclasses of GtkRcStyle
7697            and GtkStyle
7698
7699          - Add extra dlsym() found entry point to themes,
7700            theme_create_rc_style().
7701
7702         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
7703         in gtk_style_real_copy.
7704
7705         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
7706         to register a type associated with an engine. (The engine
7707         won't be unloaded as there is an instance of the type.)
7708
7709
7710 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
7711
7712         * docs/tutorial/gtk-tut.sgml: Clean ups.
7713
7714 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
7715
7716         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
7717           of cleaning up to do.
7718
7719 2000-07-15  Tor Lillqvist  <tml@iki.fi>
7720
7721         * gdk/testgdk.c: New file, quick hack to test backends for
7722         pixel-by-pixel correctness of the most simple graphic operations.
7723
7724 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
7725
7726         * Really release 1.3.1
7727         
7728         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
7729         include structure.
7730
7731 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
7732
7733         * Released 1.3.1
7734
7735 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
7736
7737         * gtk/gtktextlayout.c: use FALSE for size_only most
7738         of the time when calling gtk_text_layout_get_line_display()
7739         to avoid causing double reshapes when a redraw follows
7740         immediately after.
7741
7742 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
7743
7744         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
7745         appropriate region and gdk_window_process_updates() so trough
7746         updating doesn't lag behind the window being scrolled.
7747
7748         * gdk/gdkgc.c: Make parent_class pointer static.
7749          
7750 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
7751
7752         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7753         include <string.h>.
7754          
7755         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7756         cut-and-paste error in computing memory offset for 4 channels.
7757
7758 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
7759
7760         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7761         gtk_rc_append_default_pixmap_path(), since it wasn't
7762         adding an interesting path and we don't have a meaningful
7763         default for this value.
7764
7765 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
7766
7767         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7768         gtk-config to gtk-config-2.0 move gtk_.m4 to
7769         gtk-2.0.m4
7770
7771         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7772         gdk/Makefile.am demos/Makefile.am: Change 
7773         library names to libgtk-1.3.la, etc, so that we
7774         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7775
7776         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7777         gdk/Makefile.am gdk/x11/Makfile.am
7778         Move include files into /usr/include/gtk-2.0, 
7779         /usr/lib/gtk-2.0/include/
7780          
7781         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7782         gtk/gtkintl.h: Change package for gettext from 
7783         gtk+ to gtk20. Put hack in autogen.sh to modify
7784         po/Makefile.in.in after gettextize to make this
7785         possible.
7786
7787         * gtk+.spec: Some updates, not tested.
7788
7789         * gdk-pixbuf/Makefile.am: Move loaders into
7790         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7791
7792         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7793         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7794         to THEMENAME/gtk-2.0/. Move engine directory  to
7795         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7796         
7797 2000-07-12  Tor Lillqvist  <tml@iki.fi>
7798
7799         Win32 changes, still doesn't build though.
7800
7801         * gdk/makefile.cygwin
7802         * gdk/win32/makefile.cygwin
7803         * gtk/makefile.cygwin: Updates.
7804
7805         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7806         default values for fg and bg pixel as X11 does (0 and 1), not
7807         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7808         Use 0 for pen width by default (treated as 1 anyway later, but for
7809         apps that might check the value in the GdkGC).
7810         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7811         interface to gdk_gc_predraw and _postdraw.
7812
7813         * gdk/win32/gdkwin32.h
7814         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7815
7816         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7817         extraneous semicolon.
7818
7819         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7820
7821         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7822         not the Win32 bitspixel value.
7823
7824         * gdk/win32/gdkcc-win32.c:
7825         * gdk/win32/gdkcolor-win32.c 
7826         * gdk/win32/gdkprivate-win32.h
7827         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7828         GDK object structure.
7829
7830 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
7831
7832         * docs/tutorial/gtk_tut_12.es.sgml (name): 
7833         * docs/tutorial/gtk_tut_it.sgml (name): 
7834         * docs/tutorial/gtk_tut_fr.sgml (name): 
7835         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7836         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7837
7838 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
7839
7840         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7841           small changes.
7842
7843 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
7844
7845         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7846         a bug here, never been here and never fixed anything ;(
7847         (don't segfault if tree->root_tree is NULL, which happens prior
7848         to widget realization, but puke instead).
7849
7850 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
7851
7852         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7853         add the necessary tokens.
7854
7855         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7856         (gtk_rc_style_to_style): copy thicknesses.
7857         (gtk_rc_init_style): apply thicknesses.
7858         (gtk_rc_parse_style): parse xthickness and ythickness.
7859
7860         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7861
7862         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
7863         (gdk_window_new): 
7864         (_gdk_windowing_window_init): 
7865         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
7866         (gdk_pixmap_create_from_data): 
7867         (gdk_bitmap_create_from_data): 
7868         (gdk_pixmap_new): 
7869         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7870         (gdk_image_new): 
7871         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
7872         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
7873         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7874         (gdk_colormap_get_system): 
7875         (gdk_colormap_new): 
7876         * gdk/gdkwindow.c (gdk_window_init): 
7877         * gtk/gtkstyle.c (gtk_style_new):
7878         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7879         * gdk/gdkpixmap.c (gdk_pixmap_init): 
7880         * gtk/gtkrc.c (gtk_rc_style_new):
7881         use g_object_new() instead of g_type_create_instance() which
7882         is a private function for fundamental type implementations.
7883
7884 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
7885
7886         * configure.in: Add check for db2html
7887
7888 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
7889
7890         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
7891         hack to set glib_debug_objects based on gtk_debug_flags.
7892
7893 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
7894
7895         * INSTALL.in: Update the Prerequisites section.
7896
7897         * Makefile.am demos/Makefile.am docs/Makefile.am
7898         docs/tutorial/Makefile.am gdk/x11/Makefile.am
7899         gdk/linux-fb/Makefile.am: Dist fixes
7900
7901 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
7902
7903         * NEWS: 10,000 foot view of 1.3.1 changes.
7904
7905 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
7906
7907         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7908         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7909         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7910         gdk/x11/gdkmain-x11.c: 
7911
7912         Patch from George Lebl to add a GdkGrabStatus enumeration to use
7913         as a return value of gdk_*_grab(). Previously, we just
7914         returned the X11 values directly.
7915
7916 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
7917
7918         * gdk/x11/Makefile.am: Patch from George Lebl to 
7919         install all the headers in the right place.
7920
7921 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
7922
7923         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7924           initial conversion to DocBook.
7925
7926 2000-07-04  Tor Lillqvist  <tml@iki.fi>
7927
7928         * README.win32: Improve a bit.
7929
7930         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7931         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7932         Alt+0nnn on the numpad (used to enter characters by numeric code
7933         from current DOS or ANSI codepage) working correctly, as in other
7934         Windows apps.
7935
7936         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7937         same argument validity tests as in X11 version.
7938         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7939
7940         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7941         definitions in case missing from headers.
7942
7943         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7944         destroy the window-specific cursor.
7945         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7946         calling GetModuleHandle(NULL).
7947         (gdk_window_set_cursor): Reworked to always copy the passed cursor
7948         with CopyCursor before setting it as the window-specific
7949         cursor. It is OK for the caller to destroy the GdkCursor (and thus
7950         also its Windows cursor) after calling this function. Destroy any
7951         previous window-specific cursor.
7952
7953 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
7954
7955         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
7956         font charset is iso8859-1, not iso-8859-1.
7957
7958 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
7959
7960         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7961         Use g_get_charset() instead of g_get_codeset().
7962
7963         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
7964         Comment out some strdup'ing functions to keep timj
7965         happy until we finish fighting this out.
7966
7967 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
7968
7969         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7970         <= width or height.
7971
7972         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7973         from 1.2 for parent/child states.
7974
7975         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7976         of typos.
7977
7978         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7979         event structures, replace with a generic axes field. Replace 
7980         deviceid/sourec with GdkDevice *device.
7981
7982         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7983         to extract particular axis use value from event. (Also
7984         can be used for normal X/Y.)
7985
7986         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7987         allow for arbitrary number of axes, namespace everything
7988         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7989         everywhere.
7990
7991         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
7992         Get rid of the gdk_input_vtable setup if favor of simply
7993         defining the functions in gdkinput-none/gxi/xfree.c in
7994         a similar fashion to the way that the port structure is 
7995         done.
7996
7997         * gtk/gtkdnd.c: Fix fields of synthesized button press event
7998         for new event structures. 
7999
8000         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
8001         new device interfaces.
8002
8003 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
8004
8005         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
8006         set the initial text.
8007
8008         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
8009         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
8010         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
8011         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
8012
8013         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8014         pango_layout_set_font_description to simplify.
8015
8016 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
8017
8018         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8019         pango_layout_set_font_description to simplify.
8020
8021 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
8022
8023         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
8024         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
8025         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
8026
8027         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
8028         PANGO_PIXELS() macro.
8029
8030 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
8031
8032         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
8033         that returns a PangoContext owned by the widget and updated to
8034         match future changes in the widget. Also, make 
8035         gtk_widget_create_pango_layout() use this context. If we ever
8036         add a ::changed signal to PangoContext, this will make things
8037         much more convenient. 
8038
8039         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
8040         in the appropriate places instead of destroying the layouts and
8041         creating new ones.
8042
8043         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
8044         in a few strategic places.
8045
8046 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
8047
8048         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
8049         gtk_widget_size_request() on reparented child, if one. Otherwise,
8050         queue_resize() on the child never results in it getting size-requested
8051         at all.
8052
8053         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
8054         in option menus, so that (with luck) people won't copy it into
8055         their apps in the future.
8056
8057         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
8058         to gtk_option_menu_calc_size. This isn't perfect, but should fix
8059         a lot of problems with changing the size of the menu's menu
8060         items after adding it to the option menu.
8061
8062         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
8063
8064         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
8065         the text direction for a widget changes.
8066
8067         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
8068         ::direction_changed to get rid of various hacks.
8069
8070 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
8071
8072         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
8073         name.
8074
8075 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
8076
8077         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
8078         flag to the structure. Do not call XFreePixmap on pixmaps created
8079         by gdk_pixmap_foreign_new().
8080
8081 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
8082
8083         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
8084         value using GdkRGB functionality given GdkColormap and GdkColor.
8085         (name not final, waiting for inspiration.)
8086         
8087         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
8088         set the foreground/background of a GC using the GC's colormap
8089         and GdkRGB. (name not final, waiting for inspiration.)
8090
8091         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
8092         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
8093
8094         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
8095         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
8096         purely a function of the corresponding colormap. Make
8097         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
8098
8099         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
8100         gdk_pixbuf_*create_from_xpm_* in terms of
8101         gdk_pixbuf_new_from_xpm_data(), move into platform independent
8102         code.
8103
8104         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
8105         advantage of the new draw_rgb_32_image_dithalign.
8106
8107         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
8108
8109         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
8110         on each created GC.
8111
8112         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
8113
8114         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
8115         which we initialize from the drawable when the GC is created,
8116         if the drawable has a colormap.
8117
8118         * gdk/x11/gdkgc-x11.c: include string.h for memset.
8119
8120         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
8121
8122         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
8123
8124 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
8125
8126         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
8127         actually returning expose events, make sure to set
8128         the count field properly.
8129
8130         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
8131         accidentally reintroced bug which always cleared
8132         the graphics_exposures value. 
8133
8134 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
8135
8136         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
8137
8138 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
8139
8140         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
8141
8142 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
8143
8144         * docs/faq/gtk-faq.sgml: Start of Section 6.
8145
8146 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
8147
8148         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
8149         
8150         (Fixes problem with drawing childless frames. Pointed out
8151         by and a first patch from Anders)
8152         
8153         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
8154         compute a child_allocation, even if we don't have a child.
8155
8156         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
8157         Always chain to the parent's impl, even if we don't have a child.
8158
8159 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8160
8161         * gdk/gdkrgb.c: If possible, create only a single shm segment and
8162         use multiple parts of it instead of creating a bunch of separate
8163         segments, since the maximum number of segments per system is not
8164         large. (This might be worth backporting to GTK+-1.2.x if we make a
8165         new release )
8166
8167         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
8168         structure in preparation for per-colormap GdkRGB.
8169
8170         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
8171         to False when we get EINVAL from shmget so that the caller of
8172         gdk_image_new can retry with a smaller segment size.
8173
8174 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
8175
8176         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
8177
8178 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
8179
8180         * configure.in: make the current version number 1.3.1 (binary age 0,
8181         interface age 0).
8182         
8183         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
8184         gtkcompat.h is all we want.
8185
8186         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
8187         GLib primitive types. fixed g_type_register_fundamental() argument
8188         ordering.
8189
8190         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
8191         compiles.
8192
8193         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
8194         object code cleanup, comment trigraph fixes, etc...
8195
8196 2000-06-23  Havoc Pennington  <hp@redhat.com>
8197
8198         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
8199         instead of making up a bogus name for first_para_mark
8200
8201         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
8202         0 as a context ID
8203
8204 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
8205
8206         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
8207
8208 2000-06-21  Havoc Pennington  <hp@pobox.com>
8209
8210         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
8211         we didn't check window->bg_pixmap != GDK_NO_BG.
8212
8213         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
8214         gdk-pixbuf
8215
8216 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
8217
8218         * docs/faq/gtk-faq.sgm: Move file to here.
8219           TODO: Update Makfile.am 
8220
8221 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
8222
8223         * docs/gtk-faq.sgm: Add Section 2
8224
8225 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
8226
8227         * docs/gtk-faq.sgm: New file. Start of DocBook
8228           version of the FAQ.
8229
8230 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
8231
8232         * configure.in (GDK_PIXBUF_MAJOR): Define version
8233         numbers for GDK_PIXBUF_*, as they get substituted
8234         into a header file. Need to consider versioning
8235         for gdk-pixbuf more carefully later.
8236
8237 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
8238
8239         Work with srcdir != builddir.   
8240         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
8241         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
8242         * demos/testpixbuf.c: Likewise.
8243         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
8244         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
8245         <gdk/x11/gdkx.h>.
8246         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
8247         "gdk-pixbuf.h".
8248         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
8249
8250 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
8251
8252         * TODO.xml: Change 1.4 version numbers to 2.0.
8253
8254 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
8255
8256         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
8257         fixups to GTK+ standard.
8258
8259 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
8260
8261         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
8262         gdk-pixbuf.
8263
8264         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
8265         fixups for GObject.
8266
8267         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
8268         gdk-pixbuf with GDK dependencies moved into GDK.
8269         
8270         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
8271         move gdk-pixbuf-loader here until GObject has signals.
8272
8273         * demos/: New directory of demos. Move demos from
8274         gdk-pixbuf here.
8275
8276         * demos/pixbuf-init.c: Small bit of code to check for
8277         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
8278         set GDK_PIXBUF_MODULEDIR appropriately.
8279
8280         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
8281         define which no longer makes sense.
8282
8283 2000-06-21  Havoc Pennington  <hp@redhat.com>
8284
8285         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
8286         gtk_get_default_language
8287
8288         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
8289         new function to get the default language
8290
8291         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
8292         s/gtk_text_view_style_values/gtk_text_style_values/
8293
8294         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
8295         Add a "language" field to tags.
8296
8297         (gtk_text_tag_set_arg): Fix bug in setting
8298         "bg_full_height_set" tag.
8299
8300 2000-06-21  Havoc Pennington  <hp@redhat.com>
8301
8302         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
8303         in the interfaces
8304
8305         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
8306         stuff instead when possible.
8307
8308         * gtk/gtktexttypes.h: Delete some unused constants
8309
8310         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
8311         testtextbuffer.c: use glib instead of custom unicode routines
8312
8313 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
8314
8315         * docs/es/: Removed mistakenly added generated sgml
8316
8317         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
8318         Remove outdated info files.
8319
8320         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
8321         Moved tutorial files into subdir
8322
8323         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
8324         subdir.
8325
8326         * docs/man/gtk_button.pod: Remove. (contents will be
8327         integrated into gtk-reference button page.)
8328
8329         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
8330         docs/faq/Makefile.am: Adjust for new organization
8331
8332 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
8333
8334         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
8335         not $(MKINSTALLDIRS)
8336
8337 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
8338
8339         * gtk/testgtk.c (create_text): Finish the job Elliot started
8340         of removing font setting test for text widget. (Since text widget
8341         and GdkFont are not deprecated, and cause portability problems.)
8342
8343 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
8344
8345         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
8346         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
8347         Remove use of libunicode in favor of new GLib functions.
8348
8349         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
8350         nano-x, framebuffer. The X11 include is just a hack until we get
8351         the necessary functions in gdkcolor.h, so there is no reason to
8352         add other includes of platforms.
8353
8354         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
8355         window bigger than the screen change.
8356
8357         * gtk/testgtk.c: Revert some random changes from Elliot
8358         that had no particular point and were causing testgtkrc
8359         not to function correctly.
8360         
8361         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
8362         because GdkSegment and GdkRegionBox have the same fields,
8363         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
8364         results in clearer code.
8365
8366         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
8367         gdk_input_translate_coordinates): Fix missed GdkObjectification
8368
8369 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8370
8371         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
8372         * gtk/gtk{plug,socket}.h: Missed commits from previous.
8373
8374 2000-06-20  Havoc Pennington  <hp@redhat.com>
8375
8376         * modules/linux-fb/Makefile.am: Make this compile
8377         without framebuffer enabled
8378
8379         * gdk/linux-fb/Makefile.am: Add conditional to not build
8380         framebuffer unless specified in configure
8381
8382         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
8383         the size of the target instead of source if -1 was passed for
8384         width/height
8385
8386         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
8387         width/height confusion.
8388
8389 2000-06-19  Havoc Pennington  <hp@redhat.com>
8390
8391         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
8392         GDK_DRAWABLE_XID. In the future, we probably want to make it
8393         faster with G_DISABLE_CHECKS turned on.
8394
8395 2000-06-14  Havoc Pennington  <hp@redhat.com>
8396
8397         * gdk/Makefile.am: add gdkpixmap.c
8398
8399         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
8400         s/gdk_image_init/_gdk_windowing_image_init
8401
8402         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
8403         ref/unref
8404
8405         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
8406
8407         * gdk/gdkcompat.h: remove GdkWindowType compat, since
8408         GdkWindowType is now non-deprecated; 
8409         change gdk_window_get_type() compat to be
8410         gdk_window_get_window_type().
8411
8412         * gdk/gdkdnd.h: make GdkDragContext a GObject.
8413
8414         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
8415         virtual GObject. Make all functions call into the vtable.
8416         Move gdk_image_put() guts in here. Remove GdkDrawableType
8417         and gdk_drawable_get_type(), these are now GdkWindow-specific.
8418         draw_image, get_depth, get_size, set_colormap, get_colormap,
8419         get_visual added to the vtable.
8420         
8421         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
8422         GObject. Virtualize everything. 
8423         (gdk_gc_new_with_values): remove check for destroyed window,
8424         because now GdkWindow::create_gc will check this.
8425         (gdk_gc_set_values): New function to set GC values, this 
8426         was already implemented but wasn't in the header
8427
8428         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
8429
8430         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
8431         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
8432         remove _gdk_window_class; add _gdk_window_impl_get_type() and
8433         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
8434         _gdk_windowing_window_init, rename gdk_image_init to
8435         _gdk_windowing_image_init.
8436         
8437         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
8438         (gdk_draw_layout): Remove check for destroyed window, 
8439         because all the drawable methods already check it.
8440         
8441         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
8442         Add gdkpixmap.c which contains implementation of GdkDrawable
8443         virtual table (by chaining to a platform-specific implementation
8444         object).
8445         
8446         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
8447         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
8448         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
8449         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
8450         GdkColormapPrivate. 
8451
8452         * gdk/gdktypes.h: #include <glib-object.h>
8453
8454         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
8455         Move most functionality to platform-specific implementation
8456         object. GdkWindow itself now handles the backing store, then
8457         chains to the platform-specific implementation.
8458         (gdk_window_get_window_type): return GdkWindowType of the window.
8459         (gdk_window_peek_children): New routine, returns the children of 
8460         a GdkWindow
8461         (gdk_window_get_children): Was in X11-specific code and did 
8462         XQueryTree. Changed to simply return a copy of window->children; 
8463         so it can go in cross-platform code.
8464         
8465         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
8466
8467         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
8468         GdkColormap; just changed to use the new private data instead
8469         of casting to GdkColormapPrivate.
8470
8471         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
8472         gdk_cursor_new().
8473
8474         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
8475         (private data member in the GObject). 
8476         (xdnd_manager_source_filter): Function had broken 
8477         error handling, fix it (use gdk_error_trap_push).
8478
8479         * gdk/x11/gdkdrawable-x11.c: This file now implements
8480         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
8481         base class is purely for the convenience of the X port,
8482         and not part of the interface to cross-platform GDK.
8483
8484         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
8485         
8486         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
8487         specific to X, and returned by the create_gc virtual method
8488         of GdkDrawableImplX11. 
8489         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
8490         rather than gchar, this was also changed in the GdkGC vtable.
8491         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
8492         mask is 0, return immediately, instead of checking every flag.
8493         This is faster, and keeps us from segfaulting if values is NULL
8494         and the mask contains some nonzero flags.
8495
8496         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
8497         GdkWindow.
8498
8499         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
8500         GdkWindowPrivate is gone.
8501
8502         * gdk/x11/gdkim-x11.c: rename things that got renamed.
8503
8504         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
8505         remove the image_put stuff that got transferred to GdkDrawable.
8506         
8507         * gdk/x11/gdkinput.c: renamings
8508
8509         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
8510
8511         * gdk/x11/gdkpixmap-x11.c: GObject conversion
8512
8513         * gdk/x11/gdkprivate-x11.h: indentation fixes
8514
8515         * gdk/x11/gdkproperty-x11.c: renamings
8516
8517         * gdk/x11/gdkselection-x11.c: renamings
8518
8519         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
8520         implements the platform-specific "impl" object.
8521         Moved gdk_window_get_children to gdk/gdkwindow.c
8522
8523         * gdk/x11/gdkx.h: Remove all the private structs and private datas
8524         that no longer exist. Add declaration of GdkGCX11 object here.
8525         Fix all the macros to still work. 
8526
8527         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
8528         GdkDragContext from the boxed types since they are now GObjects.
8529
8530         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
8531         moved xthickness/ythickness into the instance. GtkStyleClass
8532         functions are now in the standard vtable for GtkStyle, so you have
8533         to create a GObject subclass to write a theme engine.
8534         (gtk_style_copy): fixed a leaked PangoFontDescription
8535         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
8536         can be the standard GObject function.
8537         
8538         * Throughout GTK:
8539         s/style->klass->[xy]thickness/style->[xy]thickness
8540         s/pango_layout_unref/g_object_unref/
8541
8542         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
8543         
8544         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
8545         accessing GDK internals.
8546
8547         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
8548         accessing GDK internals.
8549
8550 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8551
8552         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
8553
8554         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
8555         problem by calculating event position relative to the trough
8556         rather than the slider.
8557         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
8558
8559         * gdk/gdkgc.h: Add GDK_NOR.
8560
8561         * configure.in, Makefile.am: Add modules top level dir
8562         * configure.in: Only use pangox library if building x11 target.
8563         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
8564
8565 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8566
8567         * gtk/gtkcolorsel.c: Change private class member to be named
8568         private_data throughout the file.
8569
8570         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
8571         private_data to avoid clashing with keyword.
8572
8573 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8574
8575         * gdk/gdkdnd.h: Add comment to remove warning.
8576
8577 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
8578
8579         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
8580         Byelorussian language; changed the Makefile and file names 
8581         to reflect that.
8582
8583 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
8584
8585         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
8586         rather than gdk_window_hide; this makes things work
8587         correctly if the window is programmatically hidden while
8588         iconified.
8589
8590 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
8591
8592         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
8593         cut and paste typo where wrong pixmap was being
8594         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
8595
8596 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
8597
8598         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
8599         Add helper function to compute format / bytes 
8600         relationship. Use in a couple places to fix up
8601         errors which assume 8 * format.
8602
8603         * gtk/gtkselection.c (gtk_selection_request): Use 32
8604         rather than 8 * sizeof (GdkAtom), to work correctly
8605         on Alpha.
8606
8607 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8608
8609         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8610         libgtk.la
8611         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8612         versions
8613
8614         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8615         checking macros return NULL since the function has a return value.
8616
8617 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8618
8619         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8620         GTK+ from building at all.
8621
8622         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8623
8624 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8625
8626         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8627         gtk/Makefile.am: make it possible to configure gtk for different
8628         targets on the same platform. The library name is now 
8629         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8630         flag. Only the x11 target compiles right now.
8631         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8632         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8633         * gdk/nanox/gdk*generic*: delete generic region code.
8634         * gdk/linux-fb/gdk*generic*: delete generic region code.
8635         * README.nanox: update information.
8636         
8637 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
8638
8639         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8640         prepend not append. (Pointed out by Brett Hall.)
8641
8642 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
8643
8644         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8645
8646 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
8647
8648         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8649         need this later, and this makes sure that the atexit for
8650         glib gets called after that for GDK, so atexits are
8651         properly ordered for object leak checking.
8652
8653         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8654
8655         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
8656         pango_x_shutdown_display()
8657
8658         * gtk/simple.c (main): Close window on destroy.
8659
8660 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
8661
8662         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8663         to treat initial creation different from setting with 
8664         regards to the graphics-exposures parameter, so add a parameter
8665         indicating whether this is initial or not.
8666
8667 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
8668
8669         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8670         to sort of work by adding an extra return_exposes arg
8671         to gdk_event_translate() - it might be better to simply
8672         deprecate the function altogether and force people to rewrite
8673         without it. gdk_window_scroll() handles most of it, and where
8674         gdk_window_scroll() doesn't work, simply redrawing more does.
8675
8676         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
8677         assertion.
8678
8679         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
8680
8681         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
8682         bunch of pretty much useless /* Print debugging info */ comments 
8683         which had drifted away from the code they were commenting.
8684
8685 2000-06-02  Havoc Pennington  <hp@pobox.com>
8686
8687         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
8688         is in working order.
8689         
8690         * gtk/testtext.c: Change to reflect anonymous mark API
8691
8692         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
8693
8694         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
8695         field, which was unused.
8696
8697         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
8698         saves some typing.
8699
8700         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
8701
8702         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
8703         flag on the insertion point and selection bound
8704
8705         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
8706         make mark-manipulation functions take a GtkTextMark* instead of a
8707         mark name.
8708         
8709         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
8710         GtkTextMarkBody; will be used to detect attempts to delete
8711         the permanent marks (insert and selection bound)
8712
8713         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
8714
8715 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
8716
8717         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
8718         flag to on.
8719
8720         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
8721         Honor DOUBLE_BUFFRED_FLAG
8722
8723         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
8724         function to set the DOUBLE_BUFFERED flag.
8725
8726         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
8727         or not exposes done on the widget should be double-buffered.
8728
8729         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
8730         to be what would be expected. (Fixes problem with a
8731         g_return_if_fail() validating a TextDirection enumeration)
8732
8733 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
8734
8735         * gtk/gtkwidget.c: Remove all references to 
8736         offscreen flag which was no longer used.
8737
8738         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
8739
8740         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
8741         for non-null label_widget->parent.
8742
8743         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
8744         which no longer was used.
8745
8746         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
8747
8748         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
8749         for null arguments.
8750
8751         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8752         check for destroyed windows.
8753
8754 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
8755
8756         * gtk/gtkimmulticontext.c: Add a finalize method and unref
8757         the slave context there.
8758
8759         * gtk/gtkinvisible.[ch]: Make reference counting behavior
8760         identical to GtkWindow.
8761
8762 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
8763
8764         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8765         pangox to here, so we can write them independent of rendering
8766         system, using GDK primitives.
8767
8768         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8769         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8770         since we have a rendering-system independent implementation in
8771         terms of draw_glyphs().
8772         
8773         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8774         function to render a single line.
8775
8776         * gdk/x11/gdkpango.c: Move the guts of this file mostly
8777         into ../gdkpango.c, which simplifies things, since we
8778         don't have to deal with raw X gc's.
8779
8780 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
8781
8782         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8783         get the logical attributes for a given GtkTextLine.
8784
8785 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
8786
8787         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8788         g_locale_get_codeset() to g_get_codeset() change.
8789
8790 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
8791
8792         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8793         descriptions.
8794
8795         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8796         the entry.
8797
8798         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8799         redoing (vastly simplifying) for Pango. Still needs quite
8800         a bit of work. (Size selection is currently poor. List of 
8801         predefined sizes is not a good idea, since all of these
8802         sizes won't necessarily be distinct.)
8803
8804 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
8805
8806         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8807         CODESET results for LANG=C.
8808
8809 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
8810
8811         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8812         which takes a stringized pango font description;
8813         ignore the older 'font' and 'fontset' declarations.
8814
8815         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8816         field with a GdkFont derived via gdk_font_from_description(),
8817         for compatibility. (Should we just remove it entirely?
8818         Probably too much compatibility breakage, but people
8819         should be migrating to the new Pango stuff as quickly
8820         as possible.)
8821
8822 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
8823
8824         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8825
8826 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
8827
8828         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
8829         redoing; there are some bugs in size allocation right
8830         now, the semi-existant distinction between header / day
8831         fonts was removed, but, with Pango, could actually
8832         be made functional in a nice way.
8833         
8834         * gtk/testcalender: Move calender from examples into this
8835         directory as a test program. (We really need to restrcture
8836         testgtk into a whole directory full of tests for every
8837         widget or functionality group, separated into multiple .c
8838         files.)
8839
8840 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
8841
8842         * gtk/testgtk.c (file_exists): Fix stupid typo that
8843         was keeping RC file from being loaded.
8844
8845         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8846         RC file font code.
8847
8848 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
8849
8850         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8851         Add function to load a GdkFont from a PangoFontDescription.
8852
8853 2000-05-29  Tor Lillqvist  <tml@iki.fi>
8854
8855         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8856         variable should be of type GdkEventPrivate.
8857
8858 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
8859
8860         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8861         to have any widget for the label, use a GtkLabel widget
8862         to display the text. (Based partially on a patch from
8863         Anders Carlson.)
8864
8865         (Quite a bit of code reorganization - strip 90% of the
8866         guts out of gtkaspectframe and add a single virtual
8867         func to GtkFrameClass - compute_child_allocation.)
8868
8869 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
8870
8871         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8872         (Removed clist->row_center_offset field because caching
8873         it wasn't saving time or code, added private function
8874         _gtk_clist_create_cell_layout()).
8875
8876 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
8877
8878         * gtk/gtkaccellabel.c: Pangoized.
8879
8880         * gtk/[hv]ruler.c: Pangoized
8881
8882 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
8883
8884         * gtk/gtkfilesel.c (gtk_file_selection_init):
8885         Use gtk_clist_set_column_auto_resize() to remove need
8886         need for manual column width computations.
8887
8888 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
8889
8890         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
8891         ensuring Pango correctness, and considerably simplifying the
8892         code.
8893         
8894         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8895
8896         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8897         getting of numbers of lines.
8898
8899         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8900         to the actual requested width of the lable, not to the wrap
8901         width we set.
8902
8903         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8904
8905         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8906           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8907
8908         * gtk/gtktextview.c: Fix structure inheritance.
8909
8910         * gtk/gtkprogressbar.c: Pangoize.
8911
8912 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
8913
8914         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8915         in a function.
8916
8917         * gtk/gtktextlayout.c (find_display_line_above): Fixed
8918         bug with computing line tops.
8919
8920         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8921
8922 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8923
8924         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8925         and y_offset coordinates to do what we need now. (The offset between
8926         buffer and layout coordinates has been reintroduced, but is a 
8927         bit different than before.)
8928
8929         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8930         handle the adjustments ourselves, and scroll as necessary using
8931         the new gdk_window_scroll().
8932         
8933         The advantage of this is that when we are incrementally revalidating,
8934         we are essentially rearranging things around the visible portion
8935         of the screen. With the old setup, the visible portion of the
8936         screen was moved around in the layout, so scrolling and redrawing
8937         to track that caused jumping of the display. Since we now
8938         control the scrolling ourselves, we can suppress this and
8939         only redraw when things actually change.
8940
8941 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
8942
8943         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8944         the region not just redisplay it after-all, since we store the
8945         cursors in the LineDisplay. (Ugly interactions here between
8946         GtkLayout and GtkTextBTree here.)
8947         
8948         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8949
8950 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8951
8952         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8953         Added function to scroll contents of a window while keeping the
8954         window constant. Works by XCopyArea or guffaw-scrolling depending
8955         on the details of how the window is set up. (guffaw-scrolling
8956         still needs to be filled in.)
8957
8958 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
8959
8960         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8961         move the debugging that was tied to a global variable
8962         to that.
8963
8964         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8965
8966         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8967         validated flag, in line data instead of setting height/width to
8968         -1. This allows us to perform operations with partially invalid
8969         buffer (using the old size for invalid lines) and thus to do
8970         incremental vaidation. Keep height/width aggregates up to date
8971         when deleting text and rebalancing the tree.
8972
8973         * gtk/gtktextbtree.[ch]: Add functions validate a line
8974         (gtk_text_btree_validate_line), and to validate up
8975         to a number of pixels (gtk_text_btree_validate).
8976
8977         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8978         that indicates that something is changed and a revalidation
8979         pass is needed. Change ::need_repaint to ::changed, and
8980         make it take old and new yranges instead of a rectangle.
8981
8982         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8983         the line_data_destroy() function from 
8984         gtk_text_btree_add_view() to a virtual function in 
8985         GtkTextLayout
8986
8987         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8988         since we are handling partial repaints in a different fashion
8989         now.
8990
8991         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8992         of the selection instead of queueing a repaint on the
8993         entire widget.
8994
8995         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8996         get_selection_bounds() down to btree, make the function
8997         in buffer a wrapper around the btree function.
8998
8999         * gtk/gtktextlayout.[ch]: Add functions to check if the
9000         layout is valid and to recompute either a range of pixels
9001         aroudn a line or a certain total number of pixels.
9002
9003         * gtk/gtktextlayout.[ch]: Cache a single line display;
9004         now that we only redraw the needed portions, the hit rate
9005         for this cache is quite high.
9006         
9007         * gtk/gtktextview.[ch]: Keep track of the first paragraph
9008         on the screen so that when re-laying-out the buffer, we can
9009         keep the same place. This requires connecting to ::value_changed
9010         on the adjustments
9011
9012         * gtk/gtktextview.[ch]: Add idle functions to revalidate
9013         the buffer after we receive an ::invalidated signal.
9014         
9015 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
9016
9017         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
9018         to max of allocation and layout size, not just to the
9019         layout size.
9020
9021         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
9022         Invalidate window so it gets redrawn properly.
9023
9024         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
9025         to mean the entire window.
9026
9027         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
9028         into public header.
9029
9030 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9031
9032         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
9033         to get the name of a mark.
9034
9035         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
9036         to find the paragraph from a y position.
9037
9038 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
9039
9040         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
9041         nodes have width/height >= 0, not > 0.
9042
9043 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
9044
9045         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
9046         Add a size_only flag, so when we only need the size, we don't create
9047         useless appearance attributes.
9048
9049         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
9050         duplicate setting of font description.
9051
9052         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
9053
9054 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9055
9056         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9057         EXTRA_DIST. It does not work well when the file that
9058         everything depends on is not in the tarball.
9059
9060 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9061
9062         * gtk/testgtk.c: Some hacks and fixes so that it basically
9063         works when not sitting in the GTK+ build tree.
9064
9065 2000-05-03  Havoc Pennington  <hp@redhat.com>
9066
9067         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9068         Properly determine the ordering of the tag root and the current
9069         line within the tree. Previous algorithm only worked if the tag
9070         root's immediate parent was the common root of both the current
9071         line and the tag root.
9072
9073 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
9074
9075         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
9076         alignment.
9077
9078         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
9079         the widget text directional dynamically.
9080
9081         * gtk/gtktextview.[ch]: Added functions to get and set default
9082         wrap mode.
9083
9084 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
9085
9086         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
9087         in cursor location computation.
9088
9089 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
9090
9091         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
9092         vadjusment values properly when layout gets smaller.
9093
9094         * gtk/gtktextview.c (need_repaint_handler): Areas being
9095         passed in are far completely inaccurate, and sometimes
9096         too small, so, for now, just queue a redraw on the
9097         whole visible region.
9098
9099 2000-04-25  Havoc Pennington  <hp@redhat.com>
9100
9101         * gtk/gtktextbtree.c (summary_destroy): new function to 
9102         destroy tag summary nodes
9103         (gtk_text_line_next_could_contain_tag): this function was 
9104         totally broken if the line passed in wasn't below the tag
9105         root. Fix it.
9106         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
9107         "wildcard" case, we have to do a linear scan. Blah.
9108         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
9109         we have to do the linear scan
9110         (tag_removed_cb): When a tag is removed from the tag table, 
9111         remove the GtkTextTagInfo node from the btree.
9112         (gtk_text_btree_spew): Implement the spew function, for 
9113         our debugging pleasure.
9114
9115 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
9116
9117         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
9118         a problem with referring to the wrong buffer.
9119
9120         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
9121
9122         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
9123         font description to gtk_style_new() - otherwise things
9124         don't work without a .gtkrc file.
9125
9126         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
9127         tags table if we create it ourself, too.
9128
9129         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
9130         it was conflicting with XKB modifiers.
9131
9132         * gtk/gtktextview.[ch]: Add simple support for 
9133         GtkIMContext.
9134
9135 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
9136
9137         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
9138         with deletion from last commit.
9139
9140 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
9141
9142         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
9143         in the context from the current locale.
9144         
9145         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
9146         context, not hardcoded value.
9147
9148         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
9149         not logical.
9150
9151 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9152
9153         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
9154         attributes - that doesn't handle partial-glyph selection
9155         properly. Instead use new pango_layout_line_get_x_ranges()
9156         functionality to draw the selection.
9157
9158         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
9159         now properly handles out-of-range coordinates.
9160
9161         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
9162
9163         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
9164         public.
9165
9166         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
9167         for paragraphs opposite to the base direction of the widget.
9168
9169         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
9170
9171         * gtk/gtktextlayout.c: Don't split segments on marks, since that
9172         causes Arabic words to reshape as you cursor through.
9173
9174         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
9175         cursor position when moving vertically with the arrow keys and
9176         scrolling with page-up/page-down. (Arrow keys save only the X,
9177         scrolling saves both X and Y.)
9178
9179         This means you can line-up / line-down or page-up / page-down
9180         without losing your place, and also that moving vertically
9181         with the cursor keys keeps the same X position, not the same
9182         character count:
9183
9184         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
9185         arrow keys move by display lines, not paragraphs.
9186
9187 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9188
9189         * gtk/gtklayout.c: Make sure that the bin window is at least
9190         as big as the allocation. (Should we also make sure that the
9191         bin window is big enough to completely cover widget->window?)
9192
9193         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
9194         function to get the onscreen rectangle.
9195
9196         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
9197         for offsets in window coordinates.
9198
9199 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
9200
9201         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
9202         confusion.
9203
9204         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
9205         from the widget direction.
9206
9207         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
9208         Add a "direction" attribute.
9209
9210         * gtk/gtktextview.c: global s/tkxt/text_view/.
9211
9212         * gtk/testtext.c: Added long block of text in Arabic, to test out
9213         the direction attributes. (Some problems with the shaping system
9214         for arabic become obvious - like the fact the cursor splits words
9215         into unjoined pieces.)
9216
9217 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
9218
9219         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
9220
9221         * gtk/gtktextlayout.c: Fix up alignment.
9222
9223         * gtk/testtext.c: Add some tests for centering, wrapping.
9224
9225 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
9226
9227         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9228         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
9229         If we wrote GTK+-specific layout-render function this could just replace
9230         the draw_layout() operation in the vtable.
9231
9232         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
9233         pango_layout_get_cursor_pos() and use that function.
9234
9235         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
9236         is a non-static symbol.
9237
9238         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
9239         with gtk_text_btree_find_line_by_y()
9240
9241         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
9242         renderer that handles GtkTextAppearance attributes.
9243
9244         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
9245
9246           - Move the values in the style that don't affect geometry into a
9247             GtkTextAppearance structure.
9248           - Change underline to take a PangoUnderline and "font" a string
9249             representation of a font description
9250           - Add a "font_desc" attribute which takes a FontDescription structure.
9251
9252         * gtk/gtktextlayout.[ch]:
9253
9254           - Get rid of the display-line list per each line. Instead, we
9255             generate, on demand, a GtkTextLineDisplay structure which]
9256             contains a PangoLayout * and other necesary information
9257             (offsets, cursor locations) for displaying a paragraph.
9258           - Get rid of the code to wrap lines, create display chunks,
9259             etc. Instead, we just go through a paragraph and convert
9260             it into the necessary inputs to a PangoLayout.
9261           - Implement a new attribute type, GtkTextAttrAppearance. This
9262             holds a GtkTextAppearance, and is used to pass colors, 
9263             stipple, etc, through from the layout to the display without
9264             having to use lots and lots of individual attributes.
9265           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
9266             in terms of PangoLayout functions.
9267         
9268         * gtk/gtktextview.c: 
9269          
9270           - Handle passing the necessary PangoContext to the layout
9271           - Some fixups in painting to deal with the automatic backing store
9272             and offsetting of GTK+-1.4
9273           - Add a style_set handler so that the default style reacts
9274             properly to theme changes.
9275         
9276         * gtk/gtktext?*.[ch]: Random code-style fixes.
9277
9278         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
9279
9280 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
9281
9282         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
9283         in original form preparatory to Pango-ization and gdkimcontext-ization.
9284
9285 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
9286
9287         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
9288         so that we can derive from gtkimcontext in language bindings properly.
9289
9290 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
9291
9292         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
9293         Add a compose table including (almost) all the compose combinations
9294         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
9295         data in the XIM implementation.
9296
9297         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
9298         Moved functions to convert keyvalues from and to unicode here from
9299         the win32 port and made them public.
9300
9301 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9302
9303         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
9304
9305 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
9306
9307         * gtk/gtkimcontext.[ch]: Base class for new input context system
9308
9309         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
9310         the real input context implementation to be loaded from modules
9311         and switched on the fly.
9312
9313         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
9314         context that just does direct keysymbol => unicode translation.
9315
9316         * gtk/gtkentry.[ch]: Start switching editing over to using
9317         GtkInputContext. (No handling of preedit yet.)
9318
9319 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
9320
9321         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
9322         many substitutions. (klass should not be subsituted.)
9323
9324 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
9325
9326         * configure.in: Add checks for Pango
9327
9328         * configure.in docs/Makefile.am: Add test for sgml2html
9329         and allow 'make dist' without building html, but print out
9330         warnings in that case. (For making snapshots)
9331
9332         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
9333         Add Pango libraries and C flags
9334
9335         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9336         Add function (gdk_draw_layout) to draw a pango layout.
9337
9338         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
9339         for getting Pango contexts for GDK.
9340
9341         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
9342
9343         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
9344         editing.
9345
9346         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
9347         keysym => unicode translations. More languages can be added
9348         here, but real input-method support is needed.
9349
9350         * docs/Changes-1.4.txt: Added note about entry behavior.
9351         
9352         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
9353         to set the reading direction for a widget and the global direction.
9354         Add test which allows toggling the global direction. Two private
9355         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
9356
9357         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
9358           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
9359
9360         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
9361
9362         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
9363         underlining now handled by Pango.
9364
9365         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
9366         to RCStyle and Style. (Having both this and the old font name and GdkFont 
9367         is temporary.)
9368
9369         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
9370         convenience functions for creating contexts and layouts for widgets.
9371
9372         * gtk/testgtk.c: Enhance label tests with multilingual labels.
9373
9374 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
9375
9376         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
9377         titles to be active, even if they aren't visible.
9378         (gtk_clist_column_titles_passive):  Ditto.
9379
9380 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
9381
9382         * gtkmenu.c:
9383         * gtkmenu.h:
9384         * gtktypeutils.h: Spelling/grammar fixes in comments.
9385
9386 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
9387
9388         * gdk/nanox/*.h: add missing header files.
9389
9390 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
9391
9392         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
9393         send_event to TRUE.
9394         (gtk_drawing_area_size): queue a resize.
9395
9396 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
9397
9398         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
9399         the handlers, also invalidate them. bug nailed down by Karl Nelson
9400         <kenelson@ece.ucdavis.edu>.
9401
9402 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
9403
9404         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
9405         "(nil)" foundries, patch from Grigorios Magklis.
9406
9407         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
9408         on non-available fonts, based on a patch by Grigorios Magklis
9409         <maglis@cs.rochester.edu>.
9410
9411 2000-05-18  Elliot Lee  <sopwith@redhat.com>
9412
9413         * gdk/x11/gdkregion-generic.c: If a region does not have any
9414         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
9415         instead of GDK_OVERLAP_RECTANGLE_IN.
9416
9417 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
9418
9419         * gtk/gtklayout.c (gtk_layout_map): Remove references to
9420         OFFSCREEN, as it is no longer necessary.
9421
9422 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
9423
9424         * gtk/gtkcolorsel.c: Patch from David Santiago
9425         <mrcooger@cyberverse.com> to change things so that the 
9426         indicator of the active palette entry is done independently,
9427         not via the focus, since it should always be visible.
9428
9429 2000-05-17  Tor Lillqvist  <tml@iki.fi>
9430
9431         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
9432         refcount leaks as in the X11 backend.
9433
9434         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
9435         cosmetics.
9436
9437         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
9438         backend. Add _gdk_windowing_window_destroy().
9439
9440         * gtk/gtkcolorsel.c: Include correct backend-specific header.
9441         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
9442         either, but these probably do exist on nanox?)
9443         
9444         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
9445         which isn't necessarily defined by <math.h>.
9446
9447         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
9448         ancestry past GtkObject.
9449
9450         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
9451         from DLL on Win32.
9452
9453         * gtk/gtk.def: Update corresponding to recent changes.
9454
9455         * gtk/makefile.{cygwin,msc}: Updates.
9456
9457 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
9458
9459         * docs/Changes-1.4.txt: A bit of editing.
9460
9461         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
9462         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
9463         to clear the update area for the window, and clear it
9464         when hiding a window.
9465
9466         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
9467         if window destroyed.
9468
9469         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
9470
9471         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
9472         gdk_window_destroy() to the generic code, since there was a lot of 
9473         window-system-independent logic it in. Add a function:
9474         
9475          _gdk_window_destroy() 
9476
9477         to the internal API to destroy a window without unreferencing it.
9478         Add a function:
9479
9480          _gdk_windowing_window_destroy()
9481
9482         That does the windowing-system-dependent part of destroying 
9483         the window.
9484
9485 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
9486
9487         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
9488
9489 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
9490
9491         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
9492         Make gtk_widget_shape_combine_mask() keep a reference count on
9493         the pixmap since it keeps it around.
9494
9495 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
9496
9497         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
9498         leak.
9499
9500         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
9501         leak with event filters.
9502
9503 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
9504
9505         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
9506         signal handlers with the right data arguments. (Fixes
9507         some warnings when a widget was repeatedly set as a drag
9508         destination.)
9509
9510         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
9511         window so we can avoid avoid setting the DND properties on the
9512         toplevel window repeatedly.
9513
9514 2000-05-13  Tor Lillqvist  <tml@iki.fi>
9515
9516         * gdk/win32/gdkwin32.h: Define more message types missing from
9517         mingw headers.
9518
9519         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
9520         call gdk_window_destroy_notify(). It was never called. This
9521         probably meant that the GdkWindow was never freed. Thanks Owen for
9522         noticing (!).
9523
9524         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
9525         window as destroyed before calling DestroyWindow(). DestroyWindow()
9526         causes a call to the window procedure (gdk_WindowProc), which
9527         calls gdk_event_translate(), which calls
9528         gdk_window_destroy_notify(), which gets confused unless the window
9529         is set as destroyed.
9530
9531         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
9532         this function to indicate it's win32 only. Put inside #ifdef
9533         G_ENABLE_DEBUG.
9534
9535         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
9536         debugging function. (gdk_event_translate:) Add a default branch
9537         that uses the above function to print debug messages with all
9538         Windows messages symbolically.
9539
9540         * gdk/win32/gdkprivate-win32.h: Declare it, and
9541         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
9542
9543 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
9544
9545         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
9546         public header file.
9547
9548 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
9549
9550         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
9551
9552         * gtk/gtktext.c: made the adjustments no-construct args, simply
9553         provide default adjustments.
9554         (gtk_text_destroy): release adjustments.
9555
9556         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
9557         adjustment argument non-construct.
9558
9559         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
9560         instead of in finalize.
9561         (gtk_progress_get_text_from_value): 
9562         (gtk_progress_get_current_text): 
9563         (gtk_progress_set_value): 
9564         (gtk_progress_get_percentage_from_value): 
9565         (gtk_progress_get_current_percentage): 
9566         (gtk_progress_set_percentage): 
9567         (gtk_progress_configure): ensure an adjustment is present.
9568
9569 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
9570
9571         * gtk/gtkcolorsel.[hc]:
9572         * gtk/gtkcolorseldialog.[hc]:
9573         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
9574         their parent implementation, use bit fields for boolean values, don't
9575         create unused widgets, usage of glib types, braces go on their own
9576         lines, function argument alignment, #include directives etc. etc. etc..
9577
9578         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
9579
9580 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
9581
9582         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
9583
9584         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
9585         of NULL.
9586
9587         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
9588         to freed data.
9589         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
9590
9591         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
9592         to NULL when the toplevel is getting destroyed.
9593         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
9594         (gtk_menu_destroy): 
9595         (gtk_menu_init): store the information of whether we have to
9596         readd the initial child ref_count during destruction in a new
9597         GtkMenu field needs_destruction_ref_count.
9598
9599         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
9600         here, those reading: learn from my mistake! ;)
9601         in order for set_?adjustment to support a default adjustemnt if
9602         invoked with an adjustment pointer of NULL, the code read (pseudo):
9603         if (v->adjustment) unref (v->adjustment);
9604         if (!adjustment) adjustment = adjustment_new ();
9605         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
9606         now imagine the first unref to actually free the old adjustment and
9607         adjustment_new() creating a new adjustment from the very same memory
9608         portion. here, the latter comparision will unintendedly fail, and
9609         all hell breaks loose.
9610         (gtk_viewport_set_hadjustment):
9611         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9612         after unreferencing it.
9613
9614         * gtk/gtkcontainer.[hc]: removed toplevel registration
9615         functions: gtk_container_register_toplevel(),
9616         gtk_container_unregister_toplevel() and
9617         gtk_container_get_toplevels() which had wrong semantics
9618         anyways: it didn't reference and copy the list.
9619
9620         * gtk/gtkwindow.c: we take over the container toplevel registration
9621         bussiness now. windows are registered across multiple destructions,
9622         untill they are finalized. the initial implicit reference count
9623         users are holding on windows is removed with the first destruction
9624         though.
9625         (gtk_window_init): ref & sink and set has_user_ref_count, got
9626         rid of gtk_container_register_toplevel() call. add window to
9627         toplevel_list.
9628         (gtk_window_destroy): unref the window if has_user_ref_count
9629         is still set, got rid of call to
9630         gtk_container_unregister_toplevel().
9631         (gtk_window_finalize): remove window from toplevel list.
9632         (gtk_window_list_toplevels): new function to return a newly
9633         created list with referenced toplevels.
9634         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9635
9636         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9637         adjustment a non-construct arg.
9638         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9639         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9640         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9641
9642         * gtk/gtkrange.c: added some realized checks.
9643         (gtk_range_destroy): get rid of the h/v adjustments in the
9644         destroy handler instead of finalize. remove timer.
9645         (gtk_range_get_adjustment): demand create adjustment.
9646
9647         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9648         we simply create them on demand now and get rid of them in
9649         the destroy handler.
9650         (gtk_viewport_destroy): get rid of the h/v adjustments in the
9651         destroy handler instead of finalize.
9652         (gtk_viewport_get_hadjustment): 
9653         (gtk_viewport_get_vadjustment): 
9654         (gtk_viewport_size_allocate): demand create h/v adjustment
9655         if required.
9656
9657         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9658         gtk_widget_real_destroy () functionality.
9659         (gtk_widget_real_destroy): reinitialize with a new style, instead
9660         of setting widget->style to NULL.
9661
9662 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
9663
9664         * gtk/gtkcalendar.c:
9665         * gtk/gtkbutton.c: ported _get_type() implementation over to
9666         GType, either to preserve memchunks allocation facilities,
9667         or because Gtk+ 1.0 GtkTypeInfo was still being used.
9668
9669         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9670         over. prepare for ::destroy to be emitted multiple times.
9671         removed reference tracer magic. chain into GObjectClass.shutdown()
9672         to emit ::destroy signal.
9673
9674         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
9675         fundamental.
9676
9677         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
9678         cludge.
9679
9680         * gtk/gtksocket.c:
9681         * gtk/gtkplug.c:
9682         * gtk/gtklayout.c:
9683         * gtk/gtklabel.c:
9684         * gtk/gtkargcollector.c:
9685         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
9686         not being a fundamental anymore, and to work with the new
9687         type system (nuked fundamental type varargs clutter).
9688
9689         * gtk/*.c: install finalize handlers in the GObjectClass
9690         part of the class structure.
9691         changed direct GTK_OBJECT()->klass accesses to
9692         GTK_*_GET_CLASS().
9693         changed direct object_class->type accesses to GTK_CLASS_TYPE().
9694
9695         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
9696         GType. made most of the GTK_*() type macros and Gtk* typedefs
9697         simple wrappers around macros and types provided by GType.
9698         most notably, a significant portion of the old API vanished:
9699         GTK_TYPE_MAKE(),
9700         GTK_TYPE_SEQNO(),
9701         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
9702         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
9703         GTK_TYPE_ARGS,
9704         GTK_TYPE_CALLBACK,
9705         GTK_TYPE_C_CALLBACK,
9706         GTK_TYPE_FOREIGN,
9707         GtkTypeQuery,
9708         gtk_type_query(),
9709         gtk_type_set_varargs_type(),
9710         gtk_type_get_varargs_type(),
9711         gtk_type_check_object_cast(),
9712         gtk_type_check_class_cast(),
9713         gtk_type_describe_tree(),
9714         gtk_type_describe_heritage(),
9715         gtk_type_free(),
9716         gtk_type_children_types(),
9717         gtk_type_set_chunk_alloc(),
9718         gtk_type_register_enum(),
9719         gtk_type_register_flags(),
9720         gtk_type_parent_class().
9721         replacements, where available are described in ../docs/Changes-1.4.txt.
9722         implemented compatibility functions for the remaining API.
9723
9724         * configure.in: depend on glib 1.3.1, use gobject module.
9725
9726 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
9727
9728         * TODO.xml: Various updates to current status.
9729
9730 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
9731
9732         * gtk.m4: Print out version when test succeeds.
9733
9734 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
9735
9736         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
9737         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
9738         
9739         (Original triangle color selector from Simon Budig
9740         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
9741         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
9742         Santiago <mrcooger@cyberverse.com>)
9743
9744         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
9745         out into a separate widget.
9746
9747         * gtk/testgtk.c: Add some checkbuttons for toggling palette
9748         and opacity controls.
9749
9750 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
9751
9752         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
9753         snuck in prematurely.
9754
9755 2000-05-07  Tor Lillqvist  <tml@iki.fi>
9756
9757         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9758         had deleted a ! operator by mistake, which caused
9759         GDK_SELECTION_CLEAR events never to be generated, which caused
9760         only the first copy to the clipboard from an gtkeditable to
9761         actually cause a copy to the Windows clipboard.
9762
9763 2000-05-06  Tor Lillqvist  <tml@iki.fi>
9764
9765         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9766         compilation, too. Current mingw gcc distributions include the
9767         necessary headers. Also the necessary IIDs are now in mingw
9768         headers/libraries, and own definitions unnecessary.
9769
9770         More hacking on OLE2 DND, still doesn't work though, and thus
9771         ifdeffed out.
9772
9773         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9774         here, too.
9775
9776 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9777
9778         * gdk/nanox/*: nano-X port work in progress.
9779         * gdk/simple.c: simple test for Gdk.
9780         * README.nanox: notes about the port: read this first!
9781         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9782         with nano-X.
9783
9784 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
9785
9786         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9787         gdk_window_clear() into common code, implement in terms of
9788         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9789         not redirected to the backing rectangle.
9790
9791 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9792
9793         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9794         EXTRA_DIST. It does not work well when the file that
9795         everything depends on is not in the tarball.
9796
9797 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
9798
9799         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9800         with recursion where process_updates() is called from
9801         an expose handler. (GtkTextView is highly broken in
9802         doing this, but it should work, so it is a nice test
9803         case.)
9804
9805 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9806
9807         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9808         handle the case where updates are queued during processing of
9809         updates.
9810
9811 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9812
9813         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9814         window is on gdk_display - use that instead of segfaulting.
9815
9816 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
9817
9818         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9819         broken and require an empty arg, give it to them.
9820
9821 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
9822
9823         * gtk/gtklabel.h: indentation fixes.
9824
9825 2000-05-02  Tor Lillqvist  <tml@iki.fi>
9826
9827         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9828         draw too narrow or too low arcs, they seem to fail, at least with
9829         some display drivers.
9830
9831         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9832
9833         Large changes to the Win32 backend, partially made necessary by
9834         the changes to the backend-independent internal
9835         structures. Attempts to implement similar backing store stuff as
9836         on X11. The current (CVS) version of the Win32 backend is *not* as
9837         stable as it was before the no-flicker branch was merged. A
9838         zipfile with that version is available from
9839         http://www.gimp.org/win32/. That should be use by "production"
9840         code until this CVS version is usable. (But note, the Win32
9841         backend has never been claimed to be "production quality".)
9842
9843         * README.win32: Add the above comment about versions.
9844
9845         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9846
9847         * gdk/gdk.def: Update.
9848
9849         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9850         presumably be replaced by some more better mechanism as 1.4 gets
9851         closer to release shape.
9852
9853         * gdk/makefile.{cygwin,msc}: Update.
9854
9855         * gdk/win32/*.c: Correct inclusions of the backend-specific and
9856         internal headers. Change code according to changes in these. Use
9857         gdk_drawable_*, not gdk_window_* where necessary.
9858
9859         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9860         our old DND.
9861
9862         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9863         to interpret single characters as UTF-8. Thanks to Hans Breuer.
9864         Use correct function name in warning messages.
9865
9866         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9867         GSourceFuncs gdk_event_prepare and gdk_event_check.
9868         (gdk_event_get_graphics_expose): Do implement, use
9869         PeekMessage. Thanks to Hans Breuer.
9870         (event_mask_string): Debugging function to print an GdkEventMask.
9871         (gdk_pointer_grab): Use it.
9872
9873         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9874         (old) book I used claimed was Hangul actually is CJK Unified
9875         Ideographs Extension A. Also, Hangul Syllables were missing.
9876         Improve logging.
9877
9878         * gdk/win32/gdkgc-win32.c: Largish changes.
9879
9880         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9881         g_win32_getlocale() from GLib, and not setlocale() to get current
9882         locale name.
9883
9884         * gdk/win32/gdkprivate-win32.h
9885         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9886         gdkwin32.h, similarily as in the X11 backend.
9887
9888         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9889         assignment was used instead of equals in if test. Thanks to Hans
9890         Breuer.
9891
9892         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9893         the X11 version.
9894
9895         * gdk/win32/makefile.{cygwin,msc}
9896         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9897         path to the Win32 headers that works also with the mingw compiler.
9898
9899         * gtk/gtkstyle.c: Include <string.h>.
9900
9901 2000-04-26  Havoc Pennington  <hp@redhat.com>
9902
9903         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9904         replacing the broken gtk_label_get ()
9905
9906 2000-04-15  Havoc Pennington  <hp@pobox.com>
9907
9908         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
9909         this keeps scanner scripts from getting confused.
9910
9911         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9912         data, rather than void
9913
9914 2000-04-15  Tor Lillqvist  <tml@iki.fi>
9915
9916         * gtk/gtkclist.c (gtk_clist_motion)
9917         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9918         with is_hint FALSE, get x and y from the event. They used to be
9919         used uninitialised. The Win32 backend never sends motion events
9920         marked as hints. This for instance fixes the annoying file and
9921         font selector behaviour in the Win32 version.
9922
9923 2000-04-14  Tor Lillqvist  <tml@iki.fi>
9924
9925         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9926         gtk_private_n_signals variables, they are used by some software,
9927         sigh.
9928
9929         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9930         installation directory from the Registry, where the installer
9931         should have put it.
9932
9933 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
9934
9935         * gdk/x11/Makefile.am: Fix problem with installation directory for
9936         gdkx.h
9937
9938         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9939         <mrcooger@cyberverse.com> so that when selecting menus with the
9940         mouse, the first item will not be selected, but when selecting
9941         with an accelerator, or navigating left-right on a menubar with
9942         the menus popped up, the first item will be selected.
9943
9944 2000-04-05  Dan Damian  <dand@dnttm.ro>
9945
9946         * configure.in: Added "ro" to ALL_LINGUAS.
9947
9948 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
9949
9950         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9951         indentation.
9952
9953         * Makefile.am (EXTRA_DIST): Fix typo.
9954
9955         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9956         to catch gdkconfig.h
9957
9958         * gtk/gtkitemfactory.c: Added FIXME.
9959
9960 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
9961
9962         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9963         s/return_if_fail/return_val_if_fail/g and add a return value.
9964
9965 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9966
9967         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
9968         merge slipup.
9969
9970         * gdk/gdkinput.h: Fix missing line from merge.
9971
9972 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
9973
9974         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9975         instead of gdkprivate.h.
9976
9977 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
9978
9979         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9980         parent class to correctly be GtkDialogClass.
9981
9982 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
9983
9984         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9985         toplevel windows and their immediate children by their parents,
9986         since the size of toplevel windows is out of our immediate
9987         control and we don't get any real benefit from trying to track
9988         this size for clipping.
9989
9990         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9991         for input_only windows.
9992
9993         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9994         to fix some hacks and make sure that we don't try to set the
9995         background of input only windows.
9996
9997 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
9998
9999         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
10000         the _really_ internal stuff, and leave gdkprivate.h for the fake private
10001         stuff that we've traditionally exposed.
10002
10003         * gdk/**.c: Use gdkinternals.h where appropriate.
10004
10005         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
10006         not include gdkprivate-x11.h, move all stuff of conceivable public
10007         interest into gdkx.h; keep all really private stuff in
10008         uninstalled header gdkprivate-x11.h.
10009
10010         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
10011         image->image_put on windows through a new function _gdk_window_draw_image()
10012         to allow us to do backing store for images. (Sort of ugly)
10013
10014         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
10015         contexts locally so that we can offset them properly when drawing 
10016         onto backing pixmaps.
10017
10018         * gdk/gdkinput.h: Reindented
10019
10020         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
10021         pixmap or color for the window, so we can properly initialize
10022         our double-buffer pixmaps, and also so that we temporarily set
10023         a background of None while scrolling.
10024
10025         * gdk/gdkregion.h: Revise region boolean operators to have an
10026         interface that is actually convenient - switch from creating new
10027         regions on every op, to "methods" that modify existing regions
10028         (A = A OP B). 3 argument forms which allow dest == src, would also
10029         be possible, but the current interfaces seem to map nicely
10030         onto what needs to be done. (There is quite a lot of region
10031         code in GDK now.)
10032
10033         * gdk/gdkregion.h: Add constructor from rectangle and a copy
10034         operator.
10035
10036         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
10037         gdkpoly-generic.h: Copy region code from Xlib, switch it over
10038         to 32 bit coordinates, modify it to be mostly GTK+ style
10039         and to have interfaces that match gdkregion.h.
10040
10041         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
10042         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
10043         create a backing pixmap and redirect all drawing to
10044         that backing pixmap until a matching gdk_window_end_paint().
10045
10046         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
10047         Create a special drawable class for GtkWindow's that 
10048         redirects the drawing to the backing pixmap as necessary
10049         and then calls the real operations in _gdk_windowing_window_class.
10050
10051         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
10052         Store invalid region for each window. Generate expose events for invalid
10053         region in an idle. This replaces both the expose compression
10054         and the redrawing queuing in GTK+. It is both more efficient and
10055         simpler than either one individually and far more so then the
10056         combination.
10057
10058         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
10059         Emulate 32 bit coordinates for windows with 16 bit coordinates
10060         by offsetting drawing, guffaw scrolling techniques and
10061         mapping/unmapping child windows as necessary.
10062
10063         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
10064         where, when invalid regions are processed, the region is stored,
10065         and if expose events come in that are detectably duplicate
10066         the processed exposes (by comparison of event serial numbers),
10067         the stored region is subtracted out of those exposes.
10068
10069         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
10070         regions newly exposed when scrolling or resizing windows.
10071         This, combined with forcing processesing of queued invalidated
10072         regions, gives nice flicker-free scrolling.
10073
10074         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
10075         invalidated regions after every scroll.
10076
10077         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
10078         emulation in GDK. Its, for all practical purposes just a
10079         GtkViewport/GtkFixed hybrid now.
10080
10081         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
10082         (16-bit) structures as necessary instead of just casting.
10083
10084         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
10085         in terms of the structures from gdkregion-generic.c, using appropriate
10086         offsets from GDK to X11 coordinates. Cache clip mask and
10087         origin and ts origin locally and only flush to the server
10088         when drawing, to avoid constantly setting and resetting these
10089         values when offsetting GC's for scrolling and backing pixmaps.
10090
10091         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
10092
10093         * gtk/gtkcontainer.c: Call process_all_updates at end
10094         of resizing to reduce flicker. (Avoids having redraw
10095         lag arbitrarily behind resize under some circumstances)
10096
10097         * gtk/gtkentry.c: Remove old backing store code, and simply take
10098         advantage of the new backing store capabilities of GDK.
10099
10100         * gtk/gtkmain.c: Simple implementation of widget backing
10101         store - simply push a paint while handling each expose.
10102         (Should really be configurable widget for widget.)
10103         
10104         * gtk/gtkwidget.c: Remove all the old complicated redraw
10105         code, and simply invalidate the GDK windows from
10106         gdk_window_queue_clear(), etc. (Sigh, so much carefully
10107         debugged complexity ... gone to the winds.)
10108
10109         Remove all the code for suppressing expose events while
10110         resizes are pending; this isn't needed since the invalid
10111         areas won't be processed until after the resizes are
10112         processed, since they are in a lower priority idle.
10113
10114 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
10115
10116         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
10117         and height of dest rectangle for non-intersecting rectangles.
10118
10119 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
10120
10121         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
10122         for GdkRectangle.
10123
10124 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
10125
10126         * gdk/gdk{events,image,private,types,window}.h
10127          gdk/x11/gdkinputprivate.h: Change all coordinates
10128          from int16 to int. Also, Change width and height from
10129          unsigned to signed to avoid all the stupid C 
10130          signedness bugs.
10131
10132 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
10133
10134         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
10135         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
10136         Add some more detailed checking.
10137
10138         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
10139         New function to retrieve the depth of a drawable.
10140
10141         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
10142         field, reorder fields to save memory. 
10143
10144 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
10145
10146         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
10147         of the background image instead of scaling the background down to
10148         a line.
10149
10150         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
10151         which temporarily set slider to wrong size.
10152
10153         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
10154         queue_clear().
10155
10156 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
10157
10158 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
10159
10160         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
10161
10162 2000-03-17  Tor Lillqvist  <tml@iki.fi>
10163
10164         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
10165         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
10166
10167         * gdk/win32/gdkfont-win32.c
10168         * gdk/win32/gdkproperty-win32.c
10169         * gdk/win32/gdkselection-win32.c
10170         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
10171         now declared such.
10172
10173 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
10174
10175         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
10176
10177 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
10178
10179         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
10180         is called without trapping X errors.
10181
10182 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
10183
10184         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
10185         way into the fontset lists.
10186
10187 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
10188
10189         * gtk/gtkthemes.h: add extern "C" scope.
10190
10191 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
10192
10193         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
10194         to make appends to the list constant. (gtk-guy-990901-0.patch)
10195
10196 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
10197
10198         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
10199         for the typename hash table.
10200
10201 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
10202
10203         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
10204         to make sure we never divide by zero. 
10205         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
10206
10207 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
10208
10209         * gtk/gtkfontsel.c: Apply patch from
10210         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
10211         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
10212
10213         Also, some cleanups in atom handling.
10214
10215 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
10216
10217         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10218         not GtkWidget.
10219
10220 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
10221
10222         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
10223         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
10224         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
10225         more guint wrap-around bugs before going to bed.
10226
10227 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
10228
10229         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
10230         guint wrap arounds in allocation.width.
10231
10232         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
10233         process untill we fit the allocation given.
10234
10235 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
10236
10237         * gtk/gtkwidget.c:
10238         (gtk_widget_unrealize): guard widget access with ref/unref
10239         around signal emission.
10240         (gtk_widget_hide): same here, but also check its destroyed
10241         state before queueing a resize.
10242
10243 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
10244
10245         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
10246         of gtk_default_insensitive_bg as insensitive base color.
10247
10248         * gtk/gtktext.c (gtk_text_style_set): set the background color according
10249         to the widget's state.
10250         (gtk_text_realize): same here.
10251         (gtk_text_state_changed): same here.
10252         (draw_bg_rect): compare background color against base[] from
10253         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
10254
10255 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
10256
10257         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
10258         grabs are active, unless a delete event is send to the toplevel
10259         of the currently grab holding widget.
10260
10261 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
10262
10263         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
10264         debugging g_print's.
10265
10266 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
10267
10268         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
10269         ever make the scrolled-window requisition ever depend on the 
10270         visibility state of the scrollbars for the AUTOMATIC policy. 
10271         This breaks the GTK+ requisition model, and causes loops.
10272
10273 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
10274
10275         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
10276         the default font to avoid problems with XFree86-4.0 where the
10277         default charset is iso10646-1, not iso8859-1.
10278
10279 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
10280
10281         * acinclude.m4
10282         * config.guess
10283         * config.sub
10284         * ltconfig
10285         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
10286
10287         * gtk/Makefile.am: minor cosmetic consistency tweak
10288
10289 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
10290
10291         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
10292         the activate_time to 0, so that we handle a quick
10293         press/release press/release properly and don't suppress
10294         the second release. (Red Hat bug #7545)
10295
10296 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
10297
10298         * gtk/gtkctree.c (row_delete):
10299         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
10300         bugs with destruction notifier, *always* update internal
10301         structures *before* calling user code.
10302
10303 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
10304
10305         A few more fixes for bug #5487, #2051, #2677.
10306         * gtk/gtkclist.c : 
10307         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
10308         not GDK_BUTTON_PRESS.
10309         (resync_selection): resync only if selection_mode is
10310         GTK_SELECTION_EXTENDED
10311         * gtk/gtkctree.c (resync_selection): same here
10312
10313 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
10314
10315         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
10316         gdk_drag_get_selection() and gtk_menu_detach().
10317
10318         [ From Jeroen Ruigrok/Asmodai ]
10319
10320 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
10321
10322         * gtk/gtknotebook.c (gtk_notebook_size_request): 
10323         page->tab_label can be NULL.
10324
10325 2000-01-25  Havoc Pennington  <hp@pobox.com>
10326         
10327         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
10328         arg is boolean
10329
10330         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
10331
10332         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
10333
10334         * gdk/gdkproperty.c (gdk_property_get): return boolean
10335
10336         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
10337
10338         * gdk/gdkim.c (gdk_im_ready): return boolean
10339
10340         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
10341
10342         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
10343         glib clash, should fix glib)
10344
10345         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
10346         (gdk_get_show_events): return gboolean, and canonicalize 
10347         to TRUE/FALSE
10348
10349         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
10350         colormap is private
10351         (gdk_colors_alloc): gboolean whether to be contiguous
10352         (gdk_color_equal): return gboolean since we are a predicate
10353         and not a qsort() (this looks semi-wrong due to glib breakage,
10354         IMO glib should be fixed)
10355         
10356         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
10357         (gdk_get_use_xshm): return gboolean
10358         (gdk_pointer_is_grabbed): return gboolean
10359
10360         * gdk/gdk.h: Change prototypes to match all the above changes,
10361         and re-run egtk-format-protos as required.
10362
10363 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
10364
10365         * gtk/gtkctree.c (resync_selection): 
10366         * gtk/gtkclist.c (resync_selection):
10367
10368         Return immediately if clist->drag_pos < 0. This is a workaround
10369         for the corrupt state that the clist gets into when a
10370         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
10371
10372         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
10373         
10374         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
10375         variable from recent commit.
10376
10377 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
10378
10379         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
10380
10381 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
10382
10383         * gtk/Makefile.am: prefix all autogenerated source that get build in
10384         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
10385         in builddir. since we subsequently cd into srcdir for autogeneration,
10386         the paths have to be stripped from the target file names, thusly we
10387         use $(@F) as target names now.
10388         put a comment about configure.in's --disable-rebuilds option,
10389         which can be used for non-writable source directories, for development
10390         setups though, srcdir has to be *writable*.
10391
10392 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
10393
10394         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
10395           Finish the job of allowing event to be NULL.
10396           (Fixes bug #4283, reported by Chris Blizzard)
10397
10398         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
10399           things so that the cursor appears on screen, properly
10400           take into account INNER_BORDER.
10401           (Fixes bug #4754, reported by Antonio Campos)
10402
10403 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
10404
10405         * gtk/gtknotebook.c (gtk_notebook_map): Don't
10406           show the tab_label unless it itself is visible.
10407
10408           gtk/gtknotebook.c (gtk_notebook_size_request):
10409           Do a better job of making sure that the visibility
10410           of the tab label corresponds to whether it should
10411           be mapped or not.
10412
10413 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
10414
10415         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
10416           Use the requisition, not the allocation, since the
10417           allocation has not necessarily been computed yet.
10418           (Pointed out by Eugene Osintsev)
10419
10420 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
10421
10422         * gtk/gtkstyle.c (gtk_style_new): Dont' set
10423           style/base[GTK_STATE_INSENSITIVE] both to
10424           gtk_default_insensitive_bg!
10425           (Bug #2187, reported by Jonathan Blandford)
10426
10427         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
10428           Add Alt_L, Alt_R to list of invalid accelerators.
10429           (Bug #3736, reported by Vlad Harchev)
10430
10431 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
10432
10433         * gtk/gtkfilesel.c (open_ref_dir): Fix several
10434         bugs which occured after an attempt to open 
10435         invalid home directory left cmpl_state->reference_dir == NULL.
10436
10437          - completion on files in home directory didn't work
10438          - completion on an empty string caused  segfault
10439
10440          (Bug #3678, reported by Steve Ratcliffe)
10441
10442         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
10443         cut and paste error that was causing scales to
10444         be incorrectly positioned.
10445         (Bug #2956,
10446          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
10447
10448 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
10449
10450         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
10451         when checking for dcgettext, if we've found we needed
10452         it for dgettext.
10453 +
10454 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
10455
10456         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10457         queue_clear on NO_WINDOW widgets during a reparent,
10458         since at that point the window and widget heirarchies
10459         are out of sync. This stops crashing in some cases
10460         (the scrolled window reparent test, for instance), and
10461         _probably_ won't cause drawing errors.
10462
10463         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
10464         test do what it was supposed to do and be robust against
10465         window closings, etc. (Bug #2443)
10466
10467 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
10468
10469         * gtk/gtkentry.c: Fix return values on mouse events.
10470         (Bug #2686, Sky <seb_sky@yahoo.com>)
10471
10472         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
10473         (pointed out by George Lebl)
10474
10475         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
10476         (From Ettore Perazzoli  <ettore@helixcode.com>)
10477  
10478 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
10479
10480         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
10481         clicks between rows or outside calender area correctly.
10482         (Patch from Damon Chaplin)
10483
10484         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
10485         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
10486           Call destroy function when overwriting existing data. 
10487           (Pointed out by Damon Chaplin)
10488
10489 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
10490
10491         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
10492           which was causing problems on various systems with Xmu.
10493           This hasn't been needed for a very long time.
10494           (Fixes #1185 3167)
10495
10496 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
10497
10498         * gdk/gdki18n.h: Include <ctype.h> when defining
10499           gdk_isw* in terms of is* as a fallback.
10500           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
10501
10502 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
10503
10504         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
10505           realize the widget when it is size allocated!
10506           (old, old bug)
10507
10508         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
10509           Removed unused call to gdk_window_get_size() that
10510           showed up when the above was fixed.
10511
10512 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
10513
10514         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
10515           fix up widget->window when the widget is a
10516           NO_WINDOW container widget.
10517
10518 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
10519
10520         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
10521           to account for the fact that feof() does _not_ 
10522           return TRUE on errors, and thus avoid infinite loops
10523           when trying to use gdk_pixmap_create_from_xpm()
10524           on unreadable values.
10525
10526 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
10527
10528         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
10529
10530 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
10531
10532         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
10533           gdk_gc_set_dashes to take gint8 instead of gchar to
10534           make it clearer that it is _not_ a NULL terminated string.
10535
10536         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
10537           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
10538           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
10539           arguments.
10540
10541 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
10542
10543         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
10544         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
10545         background size relative to our allocation, guard against small
10546         allocations, we may have not yet been size allocated.
10547
10548 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
10549
10550         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
10551         not just version == 3. We implement all 3 + most of 4 - 
10552         (we don't support matching text/plain;charset=iso-8859-1
10553         to a dest that expects text/plain). We'll still advertise
10554         3 to be safe, but any client implementing version >= 3
10555         must interoperate with 3.
10556         
10557 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10558
10559         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
10560         background and gc members, add a warning in gtk_tooltips_set_color()
10561         indicating that this function is deprecated.
10562
10563 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
10564
10565         * docs/gtkfaq.sgml: FAQ Update:
10566           - Minor cleanups (Emmanuel, me)
10567           - New questions:
10568                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
10569                 How can I retrieve the text from a GtkMenuItem? (timj)
10570                 How do I validate/limit/filter the input to a GtkEntry? (me)
10571                 Memory does not seem to be released when I free the list
10572                         nodes I've allocated (timj)
10573
10574 2000-03-07  Tor Lillqvist  <tml@iki.fi>
10575
10576         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
10577         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
10578         for which it is no use to call GetLastError onWin9x.
10579         (gdk_other_api_failed) New function, for general error
10580         reporting without calling GetLastError.
10581         (gdk_win32_api_failed) OTOH, this function always calls
10582         GetLastError. (gdk_win32_last_error_string) Remove this function,
10583         GLib has the equivalent now.
10584
10585         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
10586         call them with function name, file name and line number in the
10587         arguments.
10588
10589         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
10590         functions.
10591         
10592         * gtk/gtk.def: Add some missing entry points.
10593
10594         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10595         gtk_paned_set_gutter_size, which don't exist any longer, as void.
10596         
10597         Fixes by Hans Breuer:
10598
10599         * gdk/makefile.msc: Update for debugging.
10600
10601         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
10602         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
10603         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
10604         in the dash_list.
10605
10606         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10607         the x11 backend.
10608
10609         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10610
10611         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10612
10613 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10614
10615         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10616         just pixel value of background colour.
10617
10618         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10619         containing code snippet previously duplicated in a couple of
10620         places.
10621         
10622         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10623         gdk_colormap_color.
10624
10625         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10626         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10627         events for autorepeated Shift, Control and Alt keys. Use
10628         gdk_colormap_color.
10629
10630         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10631         pointer is inside the window the cursor of which we are setting,
10632         call SetCursor immediately.
10633
10634         * gdk/win32/makefile.cygwin
10635         * gtk/makefile.cygwin: If we don't have the build number stamp
10636         file, use zero.
10637
10638         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10639         gtk_paned_set_gutter_size as empty.
10640
10641         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10642         
10643 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
10644
10645         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10646           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10647           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10648           docs/gtk_tut.sgml docs/gtk.texi TODO:
10649
10650           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10651
10652 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
10653
10654         * gtk/gtkcalendar.c: Implement num_marked_dates,
10655           and don't emit mutiple day_selected signals on
10656           month_prev.
10657
10658 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
10659
10660         * docs/make-todo (lineno): let title and logo be configurable so
10661         that GNOME can use this script too.
10662
10663         * TODO.xml: added logourl and a title
10664
10665 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
10666
10667         * TODO.xml: Added some UI items, and an explanatory
10668         comment at the top of the file.
10669
10670 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
10671
10672         * TODO.xml: some updates, added abunch of new entries.
10673         a note for those fiddeling with this file, when done
10674         with it, invoke:
10675         $ ./docs/make-todo TODO.xml >/dev/null
10676         and correct output errors before comitting changes.
10677
10678 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
10679
10680         * TODO.xml: Added XML-structured TODO file.
10681         * docs/make-todo: python script to turn TODO.xml into
10682           pretty XML output. 
10683
10684 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
10685
10686         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
10687         the function to let it draw the seven dots, instead of the old,
10688         much maligned, method.
10689         (draw_dot): New function to draw a dot.
10690
10691         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
10692         to draw the handle inside the border width as opposed to outside.
10693         Use paint function instead of gdk_draw_point.
10694
10695         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
10696         to draw the handle inside the border width as opposed to outside.
10697         Use paint function instead of gdk_draw_point.
10698
10699         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
10700         Change indenting to be more GTK like.
10701
10702 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
10703
10704         * docs/gtk_tut.sgml: New section on GtkCalendar
10705         * examples/calendar: Update example code
10706
10707 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
10708
10709         * docs/gtkfaq.sgml: FAQ Update
10710
10711 2000-02-19  Anders Carlsson  <andersca@gnu.org>
10712
10713         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
10714         to prevent the scroll event to be propagated upwards.
10715
10716 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10717
10718         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
10719         OwnerGrabButtonMask from button entries for
10720         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
10721
10722         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
10723         to the event mask (which will result in button/press release
10724         being added to the event mask on Unix) so scrolling works
10725         for layouts in scroll windows.
10726
10727         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
10728
10729         Patch from Anders Carlsson  <andersca@gnu.org> to add
10730         a scroll event.
10731
10732         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
10733         scrolling to the "Test Scrolling" part of testgtk.
10734  
10735         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
10736  
10737         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
10738         it against GDK_SCROLL.
10739  
10740         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
10741         way of mouse wheel scrolling.
10742  
10743         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
10744  
10745         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
10746  
10747         * gtk/gtkmain.c: Removed previous mouse wheel hack.
10748  
10749         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
10750         gdk_event_mask_table.
10751  
10752         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
10753         GdkEventScroll handler.
10754  
10755         * gdk/gdkevents.h: Added GdkEventScroll structure.
10756  
10757 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
10758
10759         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10760         and Anders Carlsson to change the Paned widgets so that they
10761         can be dragged from anywhere along the length. Also change
10762         the way that this is drawn to make this apparent.
10763
10764         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10765         from George Lebl to check that option_menu->menu is present
10766         before getting history.
10767
10768 2000-02-14  Tor Lillqvist  <tml@iki.fi>
10769
10770         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10771         before the assertion for non-NULL segment list.
10772
10773         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10774         Seems that pattern brushes *must* be 8x8 pixels! At least on my
10775         machine, but it might be display driver dependent. Sigh, so make
10776         sure the stipple is that size. Does Windows suck or what?
10777
10778         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10779         places.
10780
10781 2000-02-13  Havoc Pennington  <hp@pobox.com>
10782
10783         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10784         refcount to 1
10785         (gdk_cursor_new): init refcount to 1
10786
10787         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10788
10789 2000-02-13  Tor Lillqvist  <tml@iki.fi>
10790
10791         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10792         so that we don't have to do unnecessary settings to the HDC.
10793
10794         * gdk/win32/gdkdrawable-win32.c
10795         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10796         gdk_gc_predraw.
10797
10798         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10799         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10800         GDI paths, call WidenPath to get the outline of the stroken path,
10801         and then fill the outline (with the brush that was built from the
10802         stipple).
10803
10804         * gdk/win32/gdkgc-win32.c: Factor out common code from
10805         _gdk_win32_gc_new and gdk_win32_gc_set_values into
10806         gdk_win32_gc_values_to_win32values. Use correct colour for
10807         SetBkColor() (Until now the code actually used a random colour in
10808         the call to SetBkColor()... but that didn't show up as not many
10809         GDI APIs use the background colour. Pattern (opaque stippled)
10810         brushes do.)
10811
10812         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10813         gdk_win32_api_failed): New functions for error logging.
10814
10815         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10816         WIN32_API_FAILED to call them, passing function or file name and
10817         line number.
10818
10819         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10820
10821         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10822         GdkColor for foreground and background in GdkGCWin32Data.
10823
10824         * gdk/makefile.cygwin: Link in the resource object separately.
10825
10826         * gdk/win32/rc/gdk.rc
10827         * gtk/gtk.rc (New file)
10828         * gdk/win32/makefile.cygwin
10829         * gtk/makefile.cygwin: Update build number in DLLs automatically,
10830         as in GLib.
10831
10832 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
10833
10834         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10835         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
10836         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
10837         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10838         parameters given and cursor->ref_count. coding style fixups.
10839
10840         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10841         not GtkWidget.
10842         
10843         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10844         fix up widget macros and add _GET_CLASS() variant.
10845         
10846         * gtk/*.c: some GtkType fixups.
10847
10848 2000-02-09  Tor Lillqvist  <tml@iki.fi>
10849
10850         * gdk/win32/gdkproperty-win32.c
10851         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10852         were reversed.
10853
10854 2000-02-04  Tor Lillqvist  <tml@iki.fi>
10855
10856         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10857         g_filename_to_utf8 to convert the font names Windows gives us from
10858         whatever is the default codepage to UTF-8.
10859         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10860         in the other direction.
10861
10862         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10863         error in debugging output.
10864
10865 2000-02-02  Tor Lillqvist  <tml@iki.fi>
10866
10867         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10868         and height parameters to gdk_window_clear_area(). Not minus one.
10869
10870 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
10871
10872         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10873         checks if the widget passed to gtk_drag_get_data() was not the
10874         dest widget.
10875
10876 2000-02-01  Tor Lillqvist  <tml@iki.fi>
10877
10878         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10879         g_filename_from_utf8 functions (which were added a moment ago to
10880         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10881         size buffers.
10882
10883         gtk_file_selection_get_filename returns the filename in the C
10884         runtime encoding. It calls g_filename_from_utf8, but copies the
10885         returned string to a static buffer, which is returned. I think
10886         this is better than returning the result from g_filename_from_utf8
10887         directly, which would mean all apps that use it would have to free
10888         the return value. Or should this function care about this issue at
10889         all? Maybe a new function with clearly defined semantics.
10890
10891         * gtk/gtkfilesel.h: Add comment about
10892         gtk_file_selection_get_filename returning the filename in the C
10893         runtime's encoding.
10894
10895         * README.win32
10896         * gdk/gdk.def
10897         * gdk/makefile.{cygwin,msc}
10898         * gtk/gtk.def: Updates.
10899
10900         * gdk/gdkcursor-win32.c: Initialise refcount.
10901
10902 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
10903
10904         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10905
10906 2000-01-30  Havoc Pennington  <hp@pobox.com>
10907
10908         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10909         destroy
10910
10911         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10912
10913         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
10914         implemented in platform-specific code
10915
10916         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10917
10918         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10919         underscore in front
10920
10921         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10922         put an underscore in front
10923
10924         * gdk/gdkcursor.c: new file, implements
10925         gdk_cursor_ref/gdk_cursor_unref
10926
10927         * gdk/gdkcursor.h: Refcount GdkCursor
10928
10929         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10930
10931 2000-01-29  Tor Lillqvist  <tml@iki.fi>
10932
10933         * gdk/gdkwindow.h
10934         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10935
10936 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10937
10938         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10939         structures to properly inherit from GtkWidget not GtkBin.
10940
10941 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
10942
10943         * gtk+.spec.in: Added lib/gtk+/include/* to %files
10944         (bug #5178 - Peter Wainright)
10945         
10946         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10947         so that it will be installed.
10948         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10949
10950 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
10951
10952         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10953         for the GtkStyleClass vtable const.
10954
10955         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10956         take a const string argument like GtkTranslateFunc. This will
10957         require changes in use code.
10958
10959 2000-01-19  Tor Lillqvist  <tml@iki.fi>
10960
10961         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10962         semantics (to mimic the X11 backend, which just calls XClearArea)
10963         is to check for zero width (and height), and in that case use the
10964         window's width minus x (height minus y). This fixes for instance
10965         some redraw problems with gtkclist, which were easily noticeable
10966         in the gtk file selection widget.
10967
10968         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10969         windows.
10970
10971 2000-01-13  Tor Lillqvist  <tml@iki.fi>
10972
10973         * configure.in
10974         * gdk/Makefile.am
10975         * gdk/x11/Makefile.am
10976         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10977         (bug #5177).
10978         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10979         out later.
10980
10981 2000-01-09  Tor Lillqvist  <tml@iki.fi>
10982
10983         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10984         WM_MOVE for iconified or invisible windows. This fixes various
10985         problems when minimising windows. Thanks to Bernd Herd.
10986
10987 2000-01-05  Tor Lillqvist  <tml@iki.fi>
10988
10989         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10990         backend's draw_lines method, not draw_points.
10991
10992 2000-01-02  Tor Lillqvist  <tml@iki.fi>
10993
10994         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10995         before Owen's reorganisation: Don't have queued_events and
10996         queued_tail statics in this file, but use gdk_queued_events and
10997         gdk_queued_tail. This makes exposure event compression work again.
10998
10999         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
11000         seem to be needed?
11001
11002 1999-12-30  Tor Lillqvist  <tml@iki.fi>
11003
11004         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
11005         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
11006         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
11007         doesn't do anything.
11008
11009         * gdk/gdk.def: Add gdk_xid_table_insert.
11010
11011         * gdk/win32/gdkprivate-win32.h
11012         * gdk/win32/gdkevents-win32.c
11013         * gdk/win32/gdkinput-win32.c
11014         
11015         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
11016         extension_events field in the GdkWindowWin32Data struct. Use only
11017         the extension_events field in GdkWindowPrivate. Previously one was
11018         set, and the other one tested, which broke tablet
11019         functionality. Thanks to Keishi Suenaga for pointing this out.
11020
11021 1999-12-18  Tor Lillqvist  <tml@iki.fi>
11022
11023         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
11024         When handling a single character (text length == 1), don't handle
11025         it as if it was UTF-8.
11026
11027 1999-12-11  Tor Lillqvist  <tml@iki.fi>
11028
11029         * Makefile.am: Distribute README.win32.
11030         
11031         * gdk/Makefile.am
11032         * gdk/win32/Makefile.am: Distribute Win32 files.
11033
11034         * gdk/makefile.msc: New file.
11035
11036         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
11037         after label).
11038
11039         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
11040         gdk_error_code as GDKVAR, as they are referred outside GDK.
11041
11042         * gdk/win32/makefile.msc: Update.
11043
11044         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
11045         tweaks. Check only if at least one of those Unicode subrange bits
11046         we care for is set. If no code page bits are set, guess (wildly)
11047         based on the charset.
11048
11049         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
11050
11051         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
11052         non-NULL.
11053
11054         * gtk/gtkdnd.c
11055         * gtk/gtklayout.c
11056         * gtk/gtkplug.c
11057         * gtk/gtkselection.c
11058         * gtk/gtksocket.c
11059         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
11060         appropriate. There must be a cleaner way to handle this?
11061
11062         * gtk/gtkrc.c: Must include windows.h on Win32.
11063
11064         * gtk/testgtk.c: No need to include gdkx.h.
11065
11066         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
11067
11068 1999-12-07  Tor Lillqvist  <tml@iki.fi>
11069
11070         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
11071         the rbearing is set to the same as the width, but this should be
11072         fixed.
11073
11074 1999-12-06  Tor Lillqvist  <tml@iki.fi>
11075
11076         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
11077         function. If Windows doesn't tell us what Unicode subranges a font
11078         covers, guesstimate based on the codepages it covers. This will
11079         hopefully help those Windows versions or fonts that don't give us
11080         any useful Unicode subrange information with GetTextCharsetInfo.
11081         Call this function in gdk_font_load_internal.
11082
11083         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
11084         minor changes.
11085
11086 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
11087
11088         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
11089         New function, long needed.
11090
11091 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
11092
11093         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
11094         only_if_exists argument of gdk_atom_intern to
11095         bool.
11096
11097 1999-11-25  Tor Lillqvist  <tml@iki.fi>
11098
11099         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
11100         Fix two copy&paste errors.
11101
11102         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
11103         win32 has changed.
11104
11105         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
11106         GdkWin32SingleFont struct.
11107
11108         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
11109         subranges of loaded fonts. Clear font signature first, in case
11110         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
11111         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
11112
11113         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
11114         Unoffset clip region.
11115
11116 1999-11-23  Tor Lillqvist  <tml@iki.fi>
11117
11118         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
11119         event->any.window before calling filter functions.
11120
11121 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
11122
11123         * gtk/gtkgamma.h: Adapt cast macros to standard.
11124
11125 [ Merges from 1.2 ]
11126
11127 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
11128
11129         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
11130         If translation does not include a '/', use entire
11131         translation instead of crashing.
11132
11133 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
11134
11135         * docs/gtk_tut.sgml:
11136         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
11137
11138 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gtk/gtkselection.c (gtk_target_list_remove): Use
11141         g_list_remove_link, not g_list_remove.
11142
11143         [ From Geert Bevin <gbevin@thunderstorms.org> ]
11144         
11145 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
11146
11147         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
11148         statement upon unselection (how the heck did that slip in?).
11149
11150 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
11151
11152         * gtk/gtktext.c (gtk_text_freeze): 
11153         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
11154         in frozen state (and aparently crashes). patch provided by Anders
11155         Melchiorsen <and@kampsax.dtu.dk>.
11156
11157 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
11158
11159         * fix insensitive default/focus widget activation,
11160         reported by Matt Goodall <mgg@isotek.co.uk>.
11161
11162         * gtk/gtkwindow.c (gtk_window_key_press_event): 
11163         (gtk_window_activate_default):
11164         (gtk_window_activate_focus):
11165         return handled=FALSE for actiavtion of insensitive default
11166         widgets. return handled=TRUE for activation of insensitive
11167         focus widgets. don't activate in either case.
11168
11169 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
11172         and $glib_cflags to match library order and in the
11173         theory that an old version of GLib is more likely to
11174         be in the include directory for X then vice-versa.
11175         (Bug #2776)
11176
11177 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
11178
11179         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
11180         to determine the locale for fontsets, not LC_MESSAGES;
11181         the user may want English messages with a handling
11182         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
11183         will still be broken) (Bug #2891)
11184
11185 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11186
11187         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
11188
11189 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11190
11191         * gtk/gtkrc.ko: Changed the Korean default fontset.
11192
11193 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
11194
11195         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
11196         where when scrolling to the left or top double exposes
11197         were done, causing major slowdowns.
11198
11199 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
11200
11201         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
11202         names to lowercase and alphanumeric, before looking
11203         them up.
11204
11205         * gtk/Makefile.am: Install codeset variant gtkrc files
11206         with normalized names.
11207
11208 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
11209
11210         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
11211         popup menus when the menu is already visible, but its parent
11212         is still hidden, (happens after tornoff window got hidden).
11213
11214 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
11215
11216         * gtk/Makefile.am (install-data-local): Fix
11217         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
11218         deleted, causing error messages on install.
11219
11220 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
11221
11222         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
11223         the handle as well, since we now sometimes ignore
11224         exposes on the handle while resizing.
11225
11226 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
11227
11228         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
11229         extra g_free introduced in one of the last one or two 
11230         commits.
11231
11232 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
11233
11234         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
11235         consistent, put each style that a gtkrc.* file creates
11236         in a unique namespace, remove old files before installing.
11237
11238 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
11239
11240         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
11241         gtk_rc_init is called multiple times. (Yes, people who
11242         do that have bugs in their code.)
11243
11244 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
11245
11246         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
11247         Remove it since it's generated by the Makefile anyway
11248
11249 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
11250
11251         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
11252         device->info.axes for core pointer.
11253
11254 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
11255
11256         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
11257         idle_id, to deal with obsolete, broken C libraries.
11258
11259 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
11260
11261         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
11262         allocation->x/y twice!
11263
11264         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
11265         consistent with gtk_vscale_pos_trough().
11266
11267 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
11268
11269         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
11270         be queueing a resize on a toplevel container between
11271         the time we show it and when we map it. So, we need
11272         to test GTK_WIDGET_VISIBLE() for toplevels, and only
11273         use GTK_WIDGET_DRAWABLE() for child windows.
11274
11275 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
11276
11277         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
11278         (fixes bug #2144)
11279
11280 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
11281
11282         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
11283         container DRAWABLE (instead of VISIBLE), so we don't queue
11284         resizes on non-toplevel containers.
11285
11286 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
11287
11288         * gtk/gtkselection.[ch]: Make the data argument
11289         const guchar *.
11290
11291 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
11292
11293         * gtk/gtkwindow.c: Try to behave sensibly if 
11294         the focus widget is the window itself. (Should
11295         we allow this at all?)
11296
11297 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11298
11299         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
11300         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
11301         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
11302         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
11303         in prototypes and implementations consistent (Tomas Ogren).
11304
11305         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
11306         before the widget is unparented (reported by damon).
11307
11308         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
11309         since we provide unsigned data anyways.
11310
11311 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
11312
11313         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
11314         the call to gtk_tooltips_layout_text() until later.
11315
11316         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
11317         Call gtk_widget_ensure_style() before using the style.
11318
11319 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
11320
11321         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
11322         for old widgets that don't propagate draws to all
11323         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
11324
11325 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
11326
11327         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
11328         for a redraw but just the widget that requested the resize.
11329
11330 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
11331
11332         * gtk/gtkcontainer.c: added new widget level method
11333         gtk_container_set_reallocate_redraws() and a GtkContainer flag
11334         reallocate_redraws : 1 to reflect the setting, exported this through
11335         the argument system as a boolean ::reallocate_redraws.
11336
11337         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
11338         on the widget because the allocation changes, do so as well for
11339         widget->parent if the parent has reallocate_redraws set to TRUE.
11340         with that containers requesting reallocation redraws get automatically
11341         redrawn if their children changed allocation (this unfortunately
11342         affects also other children that didn't change allocation, but we
11343         cannot work around that before 1.3).
11344
11345 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11346
11347         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
11348         _and_ height are >0 (not _or_).
11349
11350         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
11351         instead of gtk_container_queue_resize(), which is a core gtk internal
11352         function (must have been on crack when i queued that).
11353
11354         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
11355         we can check more reliably if we want to discard expose events.
11356         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
11357         flag.
11358         
11359         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
11360         we simply trust these events. for deciding whether to discard exposes,
11361         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
11362         
11363 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
11364
11365         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11366         queues of areas that are completely off screen.
11367
11368         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
11369         logic for handleboxes.
11370
11371         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
11372         check on width/height.
11373
11374 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
11375
11376         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
11377         we are fine with using $@ the way we do (if we actually encounter
11378         brokeness with $@ in VPATH builds because of additional path prefixes,
11379         we need to use $(@F) actually).
11380
11381 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
11382
11383         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
11384         short lived bugs, that would allow language bindings to do surgeries
11385         to our guts.
11386
11387 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
11388
11389         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
11390         where comparison was being done against an uninitialized
11391         value causing intermittant results depending on
11392         compiler flags. Also make it clearer that we aren't
11393         ever initializing the child as 0x0 (though this will
11394         be caught in gtk_widget_size_allocate())
11395
11396 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
11397
11398         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
11399         gtk_window_unset_transient_for() call after we do checks
11400         involving the old transient parent.
11401         [ From Lance Capser <lmc@cyberhighway.net> ]
11402
11403 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
11404
11405         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
11406         an empty file.
11407
11408 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
11409
11410         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
11411         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
11412
11413 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
11414
11415         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
11416         `$@' is valid only in the build dir, not after we've done 
11417         `cd $srcdir'.  Also use `test -f' instead of less portable
11418         `test -e'.
11419
11420 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
11421
11422         * gtk/gtktext.c (correct_cache_insert): Rewrite
11423          for simplicity, and hopefully correctness.
11424          (Fixes bug #1322, which was a segfault when
11425           on some insertions with the properties around
11426           the insertion set up just wrong.)
11427
11428         * gtk/gtktext.c (gtk_text_adjustment): When we receive
11429          a "changed" signal, clamp the new value to the adjustment
11430          bounds to avoid segfaulting if someone tries to change
11431          the adjustment to a bogus value. (Bug #1795)
11432
11433 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11434
11435         * gtk/gtkmain.c: Ignore unexpected destroy notifies
11436         for children, for toplevel windows handle them
11437         like delete_event.
11438
11439         * gtk/gtkplug.c: Add an unrealize handler so that
11440         we unref plug->socket_window when we are done
11441         with it.
11442
11443 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
11444
11445         * gtk/gtktext.c (clear_area): Fix stupid signedness
11446          problem that was causing background to sometimes
11447          be misaligned.
11448
11449 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
11450
11451         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
11452         
11453         * gtk/gtkmenu.c (gtk_menu_position): Make
11454          sure we never position menus with negative x, y,
11455          since gtk_widget_set_uposition() can't handle that.
11456
11457         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
11458          Modify the positioning code a bit so that we always
11459          put the top-left corner onscreen. (This is for
11460          UI reasons, gtk_menu_position() now takes care of
11461          gtk_widet_set_uposition() brokeness.)
11462
11463 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
11464
11465         * gtk/Makefile.am: fixed up things for -jx, x > 1.
11466
11467 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
11468
11469         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
11470           RC style that is passed in. The lack of the ref
11471           before was a bug. If people worked around this
11472           bug, this will introduce a slight memory leak
11473           in their code. The code should typically look like:
11474
11475             rc_style = gtk_rc_style_new ();
11476             [...]
11477             gtk_widget_modify_style (widget, rc_style);
11478             gtk_rc_style_unref (rc_style);
11479
11480         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
11481           the style if it was already set.
11482
11483         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
11484           style if it was set before.
11485
11486 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11487
11488         * gtk/testgtk.c (main): Add a check to see if we
11489           are being run from the correct directory and
11490           to quit nicely if we are not.
11491
11492         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
11493           static.
11494
11495 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
11496
11497         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
11498
11499         * gtk/gtkwindow.c:
11500         queue resizes unconditionally (gtk_widget_queue_resize will figure
11501         what to do if the window is not realized).
11502         (gtk_window_move_resize): only recenter the window
11503         for GTK_WIN_POS_CENTER_ALWAYS.
11504         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
11505         the same way as GTK_WIN_POS_CENTER.
11506
11507 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
11508
11509         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
11510         with (!(info->last_flags & GDK_HINT_POS)) instead of
11511         (!info->last_flags & GDK_HINT_POS).
11512
11513         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
11514         new_height unconditionally, because we use these values even if
11515         !default_size_changed && !hints_changed.
11516         comented the (default_size_changed || hints_changed) case with
11517         respect to resize rejects from the window manager.
11518
11519         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
11520         in the zvt condition hack, since this includes the window hints, set
11521         the hints after the handling_resize case.
11522
11523         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
11524         window is initially shown with to the geometry.
11525
11526 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
11527
11528         * gtk/gtkwindow.c (gtk_window_move_resize):
11529         s/size_changed/default_size_changed/g so i know what's
11530         really going on (frying brain on smaller flame now).
11531
11532 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
11533
11534         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
11535         we have size_changed upon handling_resize. this is a gross
11536         workaround for the broken zvt widget and should be removed in
11537         1.3 again (search for FIXME).
11538         Owen provided an accurate comment for this:
11539
11540         /* We could be here for two reasons
11541          *  1) We coincidentally got a resize while handling
11542          *     another resize.
11543          *  2) Our computation of size_changed was completely
11544          *     screwed up, probably because one of our children
11545          *     is broken. It's probably a zvt widget.
11546          *
11547          * For 1), we could just go ahead and ask for the
11548          * new size right now, but doing that for 2)
11549          * might well be fighting the user (and can even
11550          * trigger a loop). Since we really don't want to
11551          * do that, we requeue a resize in hopes that
11552          * by the time it gets handled, the child has seen
11553          * the light and is willing to go along with the
11554          * new size. (this happens for the zvt widget, since
11555          * the size_allocate() above will have stored the
11556          * requisition corresponding to the new size in the
11557          * zvt widget)
11558          *
11559          * This doesn't buy us anything for 1), but it shouldn't
11560          * hurt us too badly, since it is what would have
11561          * happened if we had gotten the configure event before
11562          * the new size had been set.
11563          */
11564
11565 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
11566
11567         * gtk/gtkrc.c: deal properly with the fact that RC
11568           style lists may include rc styles more than once.
11569
11570         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
11571           unused static function.
11572
11573         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
11574           stack of directories of RC files currently being
11575           parsed and implicitely add them to pixmap path.
11576           
11577           This fixes a bug where the directory would get
11578           appended then overwritten by pixmap_path declarations.
11579
11580           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
11581
11582         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
11583           theme's exit function. (Patch from Peter Wainwright,
11584           bug #1454)
11585
11586         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
11587           Add a destroy() handler to take care of removing
11588           group for menu item. (Fixes bug #1197)
11589
11590         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
11591           in warning message.
11592
11593 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
11594
11595         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
11596         roundtrip to figure window's width and height, since we know that
11597         anyways from widget->allocation.
11598
11599 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
11600
11601         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
11602           the hints after we request the new size.
11603
11604 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
11605
11606         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11607           GTK_WIDGET_REALIZED() assertion - we can compute the
11608           hints before we are realized.
11609
11610         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11611           hint changing so that we have a value of hints_changed
11612           when we decide whether to constrain the window size.
11613
11614         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11615
11616         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11617         change back to G_MAXINT.
11618
11619 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11620
11621         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11622         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11623         contain uncluttered values.
11624         (gtk_window_compute_hints): simply assert that window is realized
11625         and that geometry_info is valid, since we rely on this anyways.
11626         (gtk_window_constrain_size): major cleanups to the code.
11627         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11628         for the base size, instead of the minimums. use 32767 as max width
11629         and height (like in gtkwindow.c) instead of G_MAXINT.
11630
11631 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11632
11633         * cleaned up the GtkContainer.need_resize flag handling mess, we
11634         only need to force resize requests when we were prematurely
11635         realized, or our widget tree was modified when we were temporarily
11636         hidden. handling these cases directly upon showing the window (i.e.
11637         while the GdkWindow is still unmapped) avoids the need to wait for
11638         a configure event response and therefore makes the GUI more snappier
11639         and avoids blank windows during the roundtrip.
11640
11641         * gtk/gtkwidget.c:
11642         (gtk_widget_hide): 
11643         (gtk_widget_show): don't queue resizes on toplevels, they know how
11644         to deal with matters.
11645
11646         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11647         flag directly for not visible resize containers and spare us unecessary
11648         signal emissions.
11649
11650         * gtk/gtkwindow.c:
11651         (gtk_window_realize): if we need to enforce premature size allocation,
11652         queue a container resize so we are correctly resized later on.
11653         (gtk_window_init):
11654         (gtk_window_size_request):
11655         don't freak around with the ->need_resize flag,
11656         gtk_container_queue_resize() will care about that.
11657         (gtk_window_show):
11658         handle initial resizing issues here, we can handle matters better in
11659         this place, especially since we know that our GdkWindow is still
11660         unmapped.
11661         (gtk_window_move_resize):
11662         don't care about ->need_resize at all.
11663         handle size changes properly that occoured while we waited for a
11664         configure event.
11665
11666 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
11667
11668         * gtk/gtkwidget.c (gtk_widget_set_uposition):
11669         * gtk/gtkwindow.[hc] (gtk_window_reposition):
11670         Move the hint setting code from gtk_widget_set_uposition
11671         to here; set the hints so that we respect any previously
11672         set geometry hints.
11673
11674         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
11675         change the window hints here or move the window here,
11676         let that happen in gtk_window_move_resize().
11677
11678 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
11679
11680         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
11681         to already queued resizes (and therefore redraws) on a widget, check
11682         its anchestry as well.
11683
11684         * gtk/gtkcontainer.c:
11685         (gtk_container_queue_resize): clear resize widgets for resize
11686         containers before aborting prematurely. this is especially important
11687         for toplevels which may need imemdiate processing or their resize
11688         handler to be queued.
11689         (gtk_container_dequeue_resize_handler): added new internal function for
11690         gtkwindow.c.
11691
11692         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
11693         configure event, take possible changes in window position into account
11694         as well.
11695         if we request a new window size, queue up a resize handler that will
11696         last until the configure event response arrives.
11697         combined the ->need_resize case (initial show) with the general size
11698         (hints) changed case and added even more comments.
11699         if !auto_shrink, only revert to the old allocation if the new size
11700         is smaller than the current allocation.
11701
11702 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
11703
11704         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
11705                            gtk_window_set_geometry_hints
11706                            gtk_window_set_default_size):
11707         When hints are set, queue a resize so that the hints will
11708         be eventually reset on the toplevel.
11709
11710         * gtk/gtkwindow.c (gtk_window_show): Use
11711         gtk_window_compute_default_size(). Clear the need_resize flag
11712         on the initail map so that we don't unnecessarily trigger the
11713         resize code.
11714
11715         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
11716         into separate functions. Compare the hints we are setting
11717         with what we set last time so that we can accurately
11718         tell when we need to reset the hints.
11719
11720         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
11721         function to figure out the size from requisition
11722         and default_size.
11723
11724         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
11725         from fvwm to constrain a size to the geometry hints.
11726
11727         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
11728         to compare two sets of geometry hints.
11729
11730         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
11731         from gtk_window_set_hints(), just compute the hints,
11732         don't set them.
11733
11734         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
11735         code from gtk_window_move_resize() to separate function,
11736         rationalize a bit.
11737
11738 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
11741         structure into a new private structure.
11742
11743         * gtkrc.c: Split GtkRcStyle into public/private.
11744         In the private part, add a list of pointers to the
11745         RcStyle lists this RcStyle participates in.
11746
11747         * gtkrc.c: When a RcStyle is free, remove all
11748         lists referencing it from the 
11749         realized_style_ht hash, and free those lists.
11750         
11751         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11752         gtk_rc_init(), since that adds the default styles
11753         to the list of parsed RC files again.
11754
11755         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11756         
11757 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
11758
11759         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11760         checks that ensure that a widget's allocation is at least 1 in width
11761         and height. (GNOME note: this doesn't affect old panel code anymore,
11762         because GtkSocket will request width and height of at least 1 since
11763         Fri Jul 23).
11764
11765         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11766         allocated yet (happens if the user realizes the window prematurely),
11767         size request and allocate it.
11768         (gtk_window_size_allocate): guard against guint underflows.
11769
11770 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
11771
11772         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11773         in gtk_built_sources, so gtk.defs gets built prior to all other
11774         sources.
11775
11776 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11777
11778         * gtk/Makefile.am:
11779         invoke indent on gtkmarshal.*. 
11780         rewrote source generation rules, use COPYING as oldest source tag for
11781         a piggyback rule to generate all sources from (don't touch it ;).
11782         major cleanups, strip spaces on build rules for GNU Make.
11783
11784         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11785         source and target files from commandline arguments. don't invoke indent.
11786
11787 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11788
11789         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11790         notebook after switch to avoid drawing problems.
11791         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11792         
11793         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11794         show them instead. 
11795         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11796
11797 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11798
11799         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11800         notebook after switch to avoid drawing problems.
11801         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11802         
11803         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11804         show them instead. 
11805         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11806
11807 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
11808
11809         * gtk/gtkwindow.c:
11810         we use window->need_resize from configure_event now, to indicate that
11811         the gtkwindow should keep its allocation (e.g. because the user resized
11812         the window through window manager handles). resize_count is now reliably
11813         used to figure whether we got the allocation we requested from the
11814         window manager.
11815         configure events get queued as resizes now, the real stuff (size
11816         computation and allocation) now only goes on in gtk_window_move_resize().
11817         GtkWindow's requisition now contains its *real* requisition (like all
11818         other widgets), *not* taking usize into account.
11819         geometry_info->last_{width|height} is now updated from set_hints() only
11820         so it always contains the last hints we set for the window manager.
11821         made some event handlers return TRUE instead of FALSE.
11822         the overall code should be much more straight forward now, and the
11823         significant code portions are accompanied by comments now.
11824         (gtk_window_set_hints):
11825         removed requisition argument and made it
11826         fetch the requisition through gtk_widget_get_child_requisition.
11827         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11828         does that now.
11829         (gtk_window_show):
11830         ensure that the widget is realized before calling 
11831         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11832         ensure that we got properly size requested and allocated before
11833         realization.
11834         (gtk_window_configure_event):
11835         ignore plain window moves, or reallocate the widget tree through the
11836         resize queue otherwise.
11837         (gtk_window_move_resize):
11838         mostly rewrote this function to figure window manager hints more
11839         reliably, coalesce window moves and resizes to reduce configure events
11840         and do actuall size allocations.
11841
11842 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11843
11844         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11845         that have a resize pending, because a redraw is already queued for them.
11846
11847         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11848         hack to clear resize_widgets.
11849
11850         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11851         for resize containers prior to size allocation. (this is also a bit
11852         ugly, but avoids side effects for stopped emissions and is thus more
11853         reliable).
11854         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11855
11856         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11857         function from gtk_tooltips_expose, as we connect to ::expose_event
11858         *and* ::draw now.
11859
11860 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11861
11862         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11863         checks.
11864         (gtk_target_list_unref): Likewise.
11865
11866         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11867
11868 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
11869
11870         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11871         guard against division by zero. (Fixes bug #1339)
11872
11873 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
11874
11875         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
11876         Prevent the trivial leak of information of allowing
11877         word motion when the entry is not visible.
11878
11879 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
11880
11881         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11882         modality to error dialog as well as confirmation dialogs.
11883         (Bug #1803, reported by Rosanna Wing Sze Yuen)
11884
11885 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11886
11887         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11888         tree->view_lines.
11889         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11890
11891         * gtk/Makefile.am (install-data-local): Solaris apparently
11892         has various troubles with ln -f; use rm first instead.
11893         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11894
11895 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
11896
11897         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11898         use `cp' followed by `rm' (the `rm' was already there).
11899
11900 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11901         
11902         * configure.in: Fix autoconf warnings about cross compilation by
11903         trying to provide sane defaults for AC_TRY_RUN.
11904         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11905         put them into $(srcdir) when generated. Also add a dependency of
11906         gtksignal.h on gtkmarshal.h for -j builds. 
11907         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11908
11909 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
11910
11911         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11912         GDK_THREADS_{LEAVE,ENTER} pair.
11913         (From Paul Fisher <pnfisher@redhat.com>)
11914
11915 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
11916
11917         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11918         width and height are always >0 (owen).
11919
11920 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
11921
11922         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11923         change that assured that a widget's allocated with and height are
11924         always >1, since this breaks *buggy* panel code. unfortunately this
11925         back-breaks the gimp's color selector.
11926
11927         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11928         allocation is always >0 in width and height, before sending the
11929         configure event; this is a *gross* hack to get the gimp back to work.
11930         
11931         * marked both cases with TODO-1.3
11932
11933 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gtk/gtktext.c: Don't display wrap indicators when
11936         text is not editable and word wrap is on.
11937
11938 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
11939
11940         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11941         option menus here as they are not derived from menu shell, assure that
11942         the option menu has a menu we can add items to.
11943
11944 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
11945
11946         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11947         width/height to (gint) before calculations and check against < 0 to
11948         avoid guint wraparounds.
11949
11950 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
11951
11952         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11953         width and height is never zero. sanity check both dimensions against
11954         32767 and issue a warning if the allocation is greater than that.
11955
11956 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
11957
11958         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11959         to g_main_pending() as well.
11960
11961 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
11962
11963         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11964         call to g_main_iteration() - since that will regrab
11965         GTK+ lock to process events.
11966
11967 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
11968
11969         * gtk/gtkwindow.c
11970         - Regularize with the rest of GTK+ by making widget->requisition
11971           not reflect the set_usize()
11972         - Always recompute geometry hints, then check if they
11973           changed before sending them to the X server. The
11974           previous checks for changes would fail in a number
11975           of circumstances. 
11976
11977 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
11978
11979         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11980
11981 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
11982
11983         * gtk/gtkdnd.c:
11984         - Code cleanups
11985         - Instantaneously update on modifier key presses
11986         - Allow cancellation of the drag with Escape.
11987
11988 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
11989
11990         * gtk/testgtk.c (create_handle_box): Set the policy
11991         to auto_shrink - otherwise the appearance is rather
11992         strange when flipping between horizontal and vertical.
11993
11994 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
11995
11996         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11997         (gtk_window_set_default_size): don't change a value if it's < 0.
11998         queue a resize.
11999
12000 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
12001
12002         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
12003
12004 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
12005
12006         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
12007         add an extra "/" when concating "/" + filename.
12008         (From Matt Grossman <mattg@oz.net>)
12009
12010 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
12011
12012         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
12013         for fg_gc if we set it for drawing pixmap.
12014
12015 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
12016
12017         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
12018         
12019         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
12020         already set, call old engine's destroy function and
12021         unref the old engine.
12022
12023 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
12024
12025         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
12026
12027 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
12028
12029         * gtk/gtkaccelgroup.h: mark certain functions as internal.
12030
12031 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
12032
12033         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
12034         expand behaviour changed.
12035
12036         * gtk/gtklabel.c (gtk_label_set_pattern):
12037         (gtk_label_set_justify):
12038         (gtk_label_set_line_wrap):
12039         don't bother invoking queue_clear, the reallocation does
12040         that for us, always free_words so the upcoming resize will
12041         relayout the label's contents.
12042
12043 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
12044
12045         * applied argument implementation patches from Elena Devdariani
12046         <elena@cogent.ca>.
12047
12048         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
12049         ::space_style, ::relief
12050         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
12051         * gtk/gtkpreview.c: ::expand
12052         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
12053         * gtk/gtknotebook.c: ::homogeneous
12054         * gtk/gtklabel.c: ::wrap
12055         * gtk/gtklist.c: ::selection_mode
12056         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
12057         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
12058         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
12059         * gtk/gtkclist.c: ::sort_type
12060         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
12061         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
12062
12063 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
12064
12065         * gtk/gtkstyle.c: Removed ill-thought-out part of last
12066         comment.
12067
12068 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
12069
12070         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
12071         counting right when we have to attach a new style
12072         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
12073
12074         * gtk/gtkstyle.c: Documented the refcounting
12075         peculularities of gtk_style_attach.
12076
12077 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12078
12079         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
12080         window types.
12081
12082         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
12083         of GTK_TOPLEVEL for creating the window.
12084
12085 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12086
12087         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
12088         the last argument (reported by Per Winkvist).
12089         
12090 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
12091
12092         Fixes for invisible XOR lines (Frank Loemker
12093         <floemker@TechFak.Uni-Bielefeld.DE>)
12094         
12095         * gtk/gtkclist.c (gtk_clist_realize): Always use
12096         a non-zero pixel for GDK_XOR.
12097
12098         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
12099         Use GDK_INVERT instead of GDK_XOR.
12100
12101 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
12102
12103         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
12104         signals if h/voffsets differ from adjustment values.
12105         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
12106
12107 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
12108
12109         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
12110         ::selection-done emissions up to the topmost menu shell.
12111
12112 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
12113
12114         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
12115         the user data on the window before destroying it.
12116
12117         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
12118         unrealize handler to take care of destroying 
12119         notebook->panel properly. 
12120         (Bug #1198 - Morten Welinder <terra@diku.dk>)
12121
12122         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
12123         of g_new and g_realloc to stop memory leak. (Actually,
12124         we could just use g_realloc(), but I'm not 100% sure
12125         that is portable).
12126         (Bug #1196 - Morten Welinder <terra@diku.dk>)
12127
12128 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12129
12130         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
12131
12132         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12133         for fontsets.
12134
12135         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
12136         with bin/button confusion.
12137
12138 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
12139
12140         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
12141         and show how preselection of radio items is done.
12142
12143 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
12144
12145         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
12146         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
12147         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
12148         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
12149         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
12150         * gtk/gtktable.c (gtk_table_attach): 
12151         * gtk/gtklist.c (gtk_list_insert_items): 
12152         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
12153         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
12154         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
12155         * gtk/gtkbin.c (gtk_bin_add): 
12156         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
12157         * gtk/gtkfixed.c (gtk_fixed_put): 
12158         * gtk/gtklayout.c (gtk_layout_put):
12159         general fixups to container_add logic. always realize child if
12160         child->parent is realized, only map the child and queue a resize
12161         if child and child->parent are both visible.
12162
12163 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
12164
12165         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
12166         instead of gtk_container_foreach to walk and unrealize children, so
12167         composite children get also unrealized.
12168         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
12169         (gtk_widget_map): assert that the widget is visible (basic constrain).
12170         (gtk_widget_real_map): assert that the widget is realized (basic
12171         constrain).
12172
12173 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
12174
12175         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
12176
12177 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
12178
12179         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
12180         file for iso-8859-2 locales.
12181
12182         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
12183
12184 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
12185
12186         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
12187          (Pointed out by andy@rz.uni-karlsruhe.de and others).
12188          Remove some suspicious and useless lines. 
12189
12190 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
12193         width,height = 0, 0 to mean - here to edge of window,
12194         instead of -1, -1, since the former is all we support.
12195
12196 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
12197
12198         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
12199         when removing from quit_functions list.
12200
12201 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
12202
12203         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
12204
12205 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
12208          When redrawing characters on non-visible entry, use appropriate
12209          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
12210
12211 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
12212
12213         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
12214         from drag coordinates.
12215         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
12216         use drag_dest_cell.
12217
12218         * gtk/gtktree (drag_dest_cell)
12219         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
12220         (Bug #1129)
12221
12222 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
12223
12224         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
12225         translate_* fields.
12226         (gtk_item_factory_finalize): invoke translate_notify independant from
12227         translate_data.
12228         (gtk_item_factory_set_translate_func): likewise.
12229         (gtk_item_factory_destroy): only remove ifactory pointer from those
12230         widgets that belong to us (stupid me).
12231
12232 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
12233
12234         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
12235         rc_style list when lookup succeeeds.
12236
12237 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
12238
12239         * gtk/gtkctree.c (resync_selection): 
12240         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
12241         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
12242         bug.
12243
12244 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
12245
12246         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
12247         Add some missing GDK_THREADS_ENTER()/LEAVE around
12248         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
12249
12250 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
12251
12252         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
12253         rather than emit_by_name.
12254
12255         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
12256         on the widget across multiple signal emissions.
12257         (gtk_editable_delete_text): same here.
12258         (gtk_editable_class_init): set widget_class->activate_signal after
12259         editable_signals[ACTIVATE] has been created.
12260
12261 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
12262
12263         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
12264         position here prematurely -- we might not have the
12265         right ->min_position and ->max_position yet.
12266
12267 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12268
12269         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
12270         Add error traps so if the other end of the connection
12271         dies, we survive.
12272
12273         * gtk/gtkselection.c (gtk_selection_notify): Clean
12274         up properly when selection property retrieval fails.
12275         
12276         * gtk/gtkselection.c (gtk_selection_request): Correctly
12277         reject SelectionRequest notifies where the handler
12278         returns no data.
12279
12280 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12281
12282         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
12283         when we've previously highlighted.
12284
12285         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
12286         emit two "drag_leave" signals for Motif drops.
12287
12288         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
12289         back the correct status messages when dropping from
12290         Motif onto a proxy window that is rejecting the
12291         drop.
12292
12293 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
12294
12295         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
12296         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
12297         to compare two argument values. added gtk_arg_to_valueloc() to set a
12298         variable from an arg through its location (pointer).
12299
12300         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
12301         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
12302         as gfloat*, uchars are collected as guchar*, ints are collected as
12303         gint*, etc...
12304
12305 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
12306
12307         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
12308         Include <string.h> instead of <strings.h>.
12309
12310         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
12311         (actually, a lot more duplicate includes occur if
12312          you trace through the sequence of #include's)
12313         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
12314         
12315 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12316
12317         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12318         gtk-a-higuti-990322-[0-3]
12319
12320         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12321         that was causing -DX_LOCALE not to work.
12322
12323         * gtk/gtkrc.c (gtk_rc_init):
12324         X_LOCALE will never have LC_MESSAGES defined
12325
12326 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
12327
12328         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
12329         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
12330
12331         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
12332         left/right as well (gtk-michael-980726-0.patch.gz).
12333
12334         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
12335         for pointer values, use gchar instead of char. fixed uline allocation
12336         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
12337         chunks instead of G_ALLOC_ONLY.
12338         (gtk_label_size_request): always alter requisition as passed and leave
12339         widget->requisition alone.
12340         (gtk_label_set_text): allow NULL strings.
12341         (gtk_label_new): likewise.
12342
12343 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
12344
12345         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
12346
12347 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
12348
12349         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
12350         *and* mapped (i.e. drawable).
12351         (gtk_bin_expose): only send exposes to drawable children.
12352
12353         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
12354         (gtk_box_expose): only send exposes to drawable children.
12355
12356         * gtk/gtkhscale.c (gtk_hscale_draw): 
12357         * gtk/gtkvscale.c (gtk_vscale_draw):
12358         hm, this is an ugly one. we first compute the size of our trough area
12359         here (window relative) and then check intersection with the draw_area
12360         which is parent relative because we're a NO_WINDOW widget, so we need
12361         to offset the trough area by allocation.x and allocation.y before the
12362         check. (this must not be done for the background area though, since
12363         that's already computed parent relative).
12364
12365 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
12366
12367         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
12368         unrealize title buttons.
12369
12370 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
12371
12372         * gtk/gtkclist.c (gtk_clist_column_title_passive)
12373         (gtk_clist_column_title_active): 
12374         only connect/disconnect to GtkWidgetClass::event to block mouse events.
12375
12376         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
12377         zero initialize event, removed superfluous gdk_window_get_pointer call
12378
12379         * gtk/gtklist.c (gtk_list_vertical_timeout)
12380         (gtk_list_horizontal_timeout): removed superfluous
12381         gdk_window_get_pointer call
12382
12383 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12384
12385         * plugging problems reported by "Bruce Mitchener, Jr."
12386         <bruce@puremagic.com> due to a purify session.
12387
12388         * gtk/gtkstyle.c:
12389         (gtk_style_ref): 
12390         (gtk_style_unref): assert ref_count to be > 0.
12391
12392         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
12393         the requisition.
12394         (gtk_clist_set_shift): likewise.
12395
12396         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
12397         adjustments.
12398
12399         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
12400         event before sending it and set send_event to TRUE (which needs to
12401         be done for *all* synthesized events).
12402         (gtk_list_vertical_timeout): likewise.
12403
12404         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
12405         leaks.
12406
12407         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
12408         to TRUE when synthesizing events.
12409
12410 [ *** end of merges from 1.2 *** ]      
12411         
12412 1999-11-21  Tor Lillqvist  <tml@iki.fi>
12413
12414         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
12415         (or copied from gdkconfig.h.win32 on Win32, sigh).
12416
12417         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
12418
12419         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
12420
12421         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
12422
12423         * gdk/gdkconfig.h.win32: New file.
12424
12425         * gdk/win32/makefile.cygwin: Build just a static archive here.
12426
12427         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
12428         for the DLL from the static archive built above.
12429
12430         * gdk/gdk.def: Moved here from the win32 subdirectory.
12431
12432         * gdk/win32/*: Adapt for the changed private struct organisation.
12433
12434         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
12435
12436 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
12437
12438         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
12439         for wheel mice (buttons 4 and 5).
12440
12441 1999-11-18  Tor Lillqvist  <tml@iki.fi>
12442
12443         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
12444         drawables use just the pixel field in the foreground and
12445         background GdkColor of the GdkGC.
12446
12447         gdk_gc_set_{fore,back}ground() are called in the GIMP with
12448         GdkColors containing uninitialized (red,green,blue) fields, and
12449         just the pixel field filled in, and furthermore in the
12450         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
12451         It thus turns out that we really don't need to have the full
12452         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
12453         it later to have just the pixel values.
12454
12455 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12456
12457         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
12458
12459 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
12460
12461         * docs/gtkfaq.sgml: threads example from Erik Mouw.
12462         New question on GtkLabel background colors.
12463
12464         * docs/gtk_tut.sgml:
12465           - Correct the example code callback
12466             function definitions.
12467           - Update the gtkdial example code, from Frans van Schaik.
12468           - Update setselection.c to current API.
12469
12470         * examples/Makefile examples/*/*.c: Update to code
12471         listed in tutorial.
12472
12473 1999-11-10  Tor Lillqvist  <tml@iki.fi>
12474
12475         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
12476         subrange table (from the "Developing International Software for
12477         WIndows 95 and Windows NT" book) was missing the Hangul syllable
12478         block... Get the loaded font's charset correctly.
12479
12480         (Note that this, and the other *-win32.c files, still really are
12481         the old ones, the win32 subdirectory is not ready for compilation
12482         yet after the reorg.)
12483
12484 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
12485
12486         * gtk/gtkclist.c: Fix off-by-one bug in parameter
12487         check.
12488
12489 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
12490
12491         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
12492         on results of XQueryDeviceState().
12493
12494 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
12495
12496         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
12497         we need to accesss only ->children. We need an accessor
12498         for the children.
12499
12500         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
12501         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
12502         to get rid of gdkx.h include.
12503         
12504         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
12505         and random references to 'None'.
12506
12507         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
12508         Get rid of unused #include <gdk/gdkx.h>
12509
12510         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
12511         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
12512         gdkconfig.h.
12513
12514 1999-11-08  Tor Lillqvist  <tml@iki.fi>
12515
12516         * gdk/win32/gdkdraw.c
12517         * gdk/win32/gdkfont.c
12518         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
12519         following yesterday's changes. (Unrelated to Owen's reorg.)
12520
12521 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
12522
12523         * gdk/x11/gdkinput-gxi.c: Add missing include,
12524           fix GdkWindowPrivate => GdkDrawablePrivate.
12525
12526         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
12527
12528         * gdk/x11/Makefile.am (xinput_sources): Add missing
12529         backslash to fix building with --with-xinput=none
12530
12531 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
12532
12533         Move all X specific code into the x11/ directory.
12534         Aside from shuffling things around, did the following:
12535
12536        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
12537          gdk_arg_context_* - a simple argument parsing system
12538          in the style of popt.
12539
12540        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
12541          gdk/x11/gdkprivate-x11.h:
12542          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
12543          add ->klass and ->klass_data fields. The klass_data
12544          field points to an auxilliary structure that is
12545          windowing system dependent.
12546
12547        * gdk/gdkfont.c: Make most of the measurement functions
12548          simply wrappers around gdk_text_extents().
12549
12550        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
12551          _gdk_font_strlen() function that hides the weird
12552          behavior in gtk+-1.[02] where a string is interpreted
12553          differently for 8-bit and 16-bit fonts.
12554
12555        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
12556          to store common code for synthesizing double/triple
12557          press events.
12558         
12559        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
12560          Make all the function that modify an existing GC
12561          simply wrappers around gdk_gc_set_values().
12562          
12563        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
12564          for throwing out later.
12565
12566        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
12567          GdkImagePrivate and GdkColormapPrivate to have a
12568          windowing system dependent part (GdkFontPrivateX etc.)
12569          that "derives" from the system-independent part.
12570
12571        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
12572          Got rid of the included-source-files for XInput in
12573          favor of automake conditionals. (Which didn't exist
12574          when XInput support was originally added.)
12575
12576        * gdk/gdkrgb.c: Remove the visual id from the debugging
12577          statements since that is X11 specific; print out
12578          type/depth info instead.
12579          
12580
12581 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
12582
12583         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
12584         loading duplicates of hashed fonts.
12585
12586         * gdk/gdk.c (gdk_keysym_convert_case): rename
12587         gdk_XConvertCase to gdk_keysym_convert_case, allow
12588         results to be NULL in the GTK+ style.
12589
12590         * gdk/gdkcompat.h: Started compatibility header
12591         for renames.
12592
12593 1999-11-07  Tor Lillqvist  <tml@iki.fi>
12594
12595         * gdk/win32/gdkprivate.h: New font private structures, related to
12596         fontsets.
12597
12598         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
12599         gdk_font_list_free(). On X11, will just be wrappers to
12600         XListFonts() and XFreeFontNames(). On Win32, the code previously
12601         in gtkfontsel.c is now here.
12602
12603         New function gdk_font_xlfd_create(). On X11 will get the FONT
12604         property of the font (for GDK_FONT_FONTs), or call
12605         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
12606         builds a XLFD style name from the font information in the LOGFONT
12607         struct(s).
12608
12609         New function gdk_font_xlfd_free(), which correspondingly frees the
12610         string returned by gdk_font_xlfd_create().
12611
12612         Implement fontsets on Win32. Add a function that iterates over a
12613         wide char string and calls a callback function for each substring
12614         of wide chars from the same Unicode subrange (and thus probably
12615         available in the same real font).
12616
12617         Improve the XLFD emulation a bit.
12618
12619         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12620
12621         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12622         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12623         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12624         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12625         ImmGetCompositionStringW() to get the composed Unicode chars.
12626
12627         * gdk/win32/gdkgc.c
12628         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12629         struct changes.
12630
12631         * gdk/win32/gdk.def: Add the new functions.
12632
12633 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12634
12635         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12636         get the Platform SDK to get <dimm.h>.
12637
12638         * gdk/win32/gdkevents.c: More event handling fixes and
12639         simplification. Never generate motion events with is_hint true. We
12640         used to do that on bogus grounds earlier. Windows sends
12641         WM_MOUSEMOVE messages on button events even if the mouse hasn't
12642         moved, ignore these.
12643
12644         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12645
12646         * gdk/win32/gdkglobals.c
12647         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12648         the TrackMouseEvent function, and use it.
12649
12650         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12651         char before calling WideCharToMultiByte in order to get a string
12652         for the window title.
12653
12654         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12655
12656         * gdk/win32/gdk.def: Remove obsolete functions.
12657
12658         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12659         /nodefaultlib and /defaultlib switches.
12660
12661         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12662
12663 1999-10-31  Tor Lillqvist  <tml@iki.fi>
12664
12665         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12666         EuroSign).
12667
12668         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12669         same type as GdkWChar, especially on Win32.
12670
12671         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
12672
12673         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
12674         before passing to Windows GDI for drawing etc. Convert to the
12675         system default codepage before passing to Windows as window
12676         titles.
12677
12678         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
12679         support changing input locale on the fly.
12680
12681         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
12682         on-the-fly changes. Convert incoming characters from the current
12683         codepage to Unicode (and then to a UTF-8 multi-byte string) based
12684         on the current input language. Use keysym<->Unicode mapping tables
12685         and functions borrowed from xterm sources.
12686
12687         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
12688         editions of Win9x, use the ActiveX-based Active IMM (Input Method
12689         Manager) if available. IMEs and the Active IMM are available under
12690         the disguise of Chinese, Korean and Japanese support for IE and
12691         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
12692         support is present in all editions (as long as you install it).
12693
12694         Call DispatchMessage from gdk_events_queue() (and thus
12695         gdk_WindowProc()), instead of duplicating the code in
12696         gdk_WindowProc().
12697
12698         Reworked the grab handling and propagation code, factored out
12699         duplicated code snippets into separate functions. Other cleanups,
12700         too.
12701
12702         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
12703         the <dimm.h> header describing the Active IMM.
12704
12705         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
12706         just do the same as for "single" fonts.
12707
12708         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
12709         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
12710         the new keysyms from gdkkeysyms.h.
12711
12712         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
12713         fontset, so that gtkentry uses wide characters.
12714
12715         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
12716         GTk+'s system directory "gtk+", not "gtk".
12717
12718 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
12719
12720         * docs/gtkfaq.sgml: FAQ update
12721
12722 1999-10-21  Tor Lillqvist  <tml@iki.fi>
12723
12724         * gdk/win32/gdkprivate.h: Add more font private data.
12725
12726         * gdk/win32/gdkfont.c
12727         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
12728         fonts and strings. Now works much better. You still have to
12729         have a correct font selected, though. No fontset emulation yet.
12730
12731 1999-10-19  Tor Lillqvist  <tml@iki.fi>
12732
12733         * gtk/maketypes.awk: Use G_OS_WIN32.
12734
12735         * gtk/gtk.def: Add some missing entry points. Also some non-public
12736         ones, but PyGTK porter claims to need them.
12737
12738         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
12739         built-in type generation.
12740
12741 1999-10-14  Tor Lillqvist  <tml@iki.fi>
12742
12743         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
12744         GDK_FONT_FONT fonts (which is all we have for now, we don't
12745         emulate fontsets). The X11 version uses plain XDrawString in that
12746         case, too. The string passed to gdk_draw_text_wc seems to be in
12747         fact (at least, when used by gtkentry and gtktext) either in a
12748         single-byte charset, or a DBCS. Not Unicode.
12749
12750         This fixes the problem in gtkfontsel, where even if you had
12751         selected a font with a non-Latin1 charset (windows-greek, for
12752         instance), the preview still used Latin-1 glyphs.
12753
12754         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12755         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12756         (gdk_font_load): Recognize the demibold etc weights, even if we
12757         don't have the corresponding constants in the headers.
12758         (gdk_font_hash_insert): Use same hash mechanism as in the X11
12759         version. Should save font resources a bit, when we don't have
12760         multiple HFONTs for the same font.
12761
12762         * gdk/win32/gdkprivate.h: Add the names field as in the X11
12763         version.
12764
12765 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
12766
12767         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12768         X values
12769
12770 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
12771
12772         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12773         layout support (as mentioned on
12774         http://www.jcinteractive.com/gnome-ui/software/widgets/)
12775
12776 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12777
12778         * gtk/fnmatch.c
12779         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12780
12781 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
12782
12783         * configure.in (ALL_LINGUAS): Added Galician (gl)
12784
12785 1999-10-05  Tor Lillqvist  <tml@iki.fi>
12786
12787         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12788
12789         * gdk/win32/gdkcompat.c: New file, actually provide an
12790         implementation for the deprecated functions. (Just temporarily.)
12791
12792         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12793
12794         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12795
12796         * gdk/win32/gdk.def gtk/gtk.def: Updates.
12797
12798 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
12799
12800         * configure.in: Added "uk" to ALL_LINGUAS.
12801         
12802 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12803
12804         * configure.in: correct checking for BeOS check
12805
12806         * gdk/gdktypes.h
12807         * gtk/fnmatch.c
12808         * gtk/gtkfilesel.c
12809         * gtk/gtkitemfactory.c
12810         * gtk/gtkmain.[ch]
12811         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12812
12813 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12814
12815         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12816         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12817         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12818         by Bulgarian). 
12819
12820 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
12821
12822         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
12823         Fix a reference to window_private->destroyed.   
12824
12825         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12826         (ugly) setting of an internal GdkWindow member to use
12827         a _slightly_ cleaner macro.
12828
12829         * gdk/gdkprivate.h: Split GdkWindowPrivate into
12830         GdkDrawablePrivate and GdkWindowPrivate.
12831         Add extra macros for accessing GDK_DRAWABLE_ components.
12832
12833         * *.[ch]: Massive adjustments for the above, use the
12834         new macros in a lot of places.
12835
12836 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
12837
12838         * gdk/gdktypes.h: Make GdkDrawable the base type,
12839         not GdkWindow.
12840
12841 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
12842
12843         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12844
12845 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
12846
12847         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12848
12849 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
12850
12851         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12852         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12853
12854         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12855
12856         * docs/gtk-config.1: Now autogenerated.
12857         * docs/Changes-1.4.txt: started
12858         
12859 1999-10-03  Tor Lillqvist  <tml@iki.fi>
12860
12861         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12862         to #ifdef also here.
12863
12864         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12865         Owen did to the X11 backend.
12866
12867         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12868         ScrollWindowEx when blitting inside a window, it can't be correct
12869         in the general case.
12870
12871         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12872         WM_GETMINMAXINFO is easier.
12873
12874         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12875         depth equal to the bitspixel value, not the visual's depth.
12876
12877         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12878         to 24 even if the bitspixel value is 32.
12879
12880         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12881         need to check for depth==32 when bpp==32, depth will always be 24.
12882
12883 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
12884
12885         * docs/Changes-1.4.txt: Started
12886         
12887         * gtk/Makefile.am (gdk_headers): Include all the new headers.
12888
12889         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12890         
12891         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12892         into C file.
12893         
12894         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12895         header to gdkinputprivate.h.
12896
12897         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12898         unused since before 1.2.
12899
12900 1999-09-30  Tor Lillqvist  <tml@iki.fi>
12901
12902         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12903         expand possible hex escapes in the font family (put there by
12904         logfont_to_xlfd if the font name isn't a legal XLFD font family,
12905         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12906         On Win32, add hex escapes here, too.
12907
12908 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
12909
12910         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12911         to #ifdef GDK_WINDOWING_X11.
12912
12913 [ Merges from gtk-1-2 ]
12914
12915 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
12916
12917         * configure.in: fixed "GNU Make" check to pass with new make version
12918         3.77.95.
12919
12920 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
12921
12922         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12923         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12924         AM_PATH_GTK() macros don't get confused by the -pre1.
12925
12926 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12927
12928         * configure.in (REBUILD): Change check for perl5
12929           to check explicitely for v >= 5.002. (5.001
12930           does not work with our scripts.)
12931
12932 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
12933
12934         * configure.in: evaluate $PERL for the perl version check. added
12935         --disable-rebuilds to give the user an option to completely disable
12936         any source autogeneration rules.
12937
12938 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
12939
12940         * configure.in: evaluate $ac_make when checking for GNU Make.
12941
12942 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12943
12944         * docs/Makefile.am: added generation.txt.
12945
12946         * Makefile.am: require automake 1.4, build README from README.in and
12947         INSTALL from INSTALL.in in dist-hook.
12948         
12949         * README.in:
12950         * INSTALL.in: new files to autogenerate README and INSTALL from.
12951
12952         * configure.in: figure whether we have GNU Make
12953
12954         * docs/generation.txt: minor additions/corrections.
12955
12956 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12957
12958         * docs/gtkfaq.sgml: FAQ Update
12959
12960 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12961         
12962         * configure.in: Fix autoconf warnings about cross compilation by
12963         trying to provide sane defaults for AC_TRY_RUN.
12964
12965 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12966
12967         * ltconfig
12968         * ltmain.sh: upgrade to libtool 1.3.3
12969
12970 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
12971
12972         * INSTALL: Indicate that the --with-glib= configure
12973         time flag is unsupported.
12974
12975 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
12976
12977         * docs/generation.txt: Added a file that gives
12978         documenation about the autogeneration process for
12979         various autogenerated files.
12980         
12981 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12982
12983         * configure.in (LIBS): Look for libgmodule in the
12984         right location.
12985
12986 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
12987
12988         * docs/gtk_tut.sgml: Removed references to
12989         code examples in my directory on gtk.org as
12990         they should all be in the tutorial now.
12991
12992         * docs/gtk_tut.sgml: Added sources for dial-test
12993         and scribble-xinput programs that were previously
12994         missing.
12995
12996 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
12997
12998         * TODO: Added entry about menu keyboard navigation, removed
12999         some finished items.
13000
13001 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
13002
13003         * acinclude.m4: Standardize on func_dgettext
13004         not func_gettext, so that the checks for dgettext
13005         actually are paid attention to.
13006
13007 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
13008
13009         * configure.in (LIBS): Add $INTLLIBS into $LIBS
13010         directly, rather than repeating the checks for
13011         gettext.
13012
13013         * INSTALL: Added information about gettext and
13014         NLS support.
13015
13016         * acinclude.m4 (LIBM): Check for dgettext, not
13017         just gettext. This should hopefully fix things wrt
13018         systems with old versions of GNU gettext installed.
13019
13020 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13021
13022         * configure.in (LIBS): Look for libgmodule in the
13023         right location.
13024
13025 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13026
13027         * autogen.sh: add --enable-maintainer-mode
13028
13029         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
13030
13031 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
13032
13033         * docs/gtk-config.1.in:
13034           docs/Makefile.am:
13035           configure.in: gtk-config is now generated.
13036
13037         * docs/gtk-config.1: Removed, now generated.
13038
13039 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
13040
13041         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
13042         handle CreateNotify itself, still put out a debuging message for
13043         --gdk-debug=events. made the ReparentNotify debugging message more
13044         verbose.
13045         wrap xcoords translation for ConfigureEvents into an error trap,
13046         a destroy event may already be pending, and in that case, the
13047         actuall coordinate values are not at all critical.
13048
13049 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
13050
13051         * gdk/gdkcc.c: Stop leaking the color_hash all over
13052         the place. Simplify and improve the logic.
13053
13054 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13055
13056         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
13057         for prototypes and function implementations consistent (reported
13058         by Tomas Ogren).
13059
13060 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13061
13062         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
13063         send_event set in debugging output.
13064         (gdk_compress_exposures): default initialize the event so we don't
13065         operate on bogus values (namely send_event).
13066
13067 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13068
13069         * gdk/gdkwindow.c: When we receive an unexpected
13070         destroy notify on one of our windows, don't just
13071         warn about it, also mark our windows as destroyed.
13072
13073 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
13074
13075         * gdk/gdkfont.c (gdk_font_hash_insert): Add
13076           name => font and name => fontset hashes. The 
13077           name => fontset hash is a _big_ win since we
13078           weren't previously caching fontsets at all and loading
13079           fontsets is expensive. The name => font hash
13080           is less of a win, but it does save us from doing
13081           repeated XQueryFont calls on the same font.
13082
13083         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
13084           list so we can remove font/fontset from hash.
13085
13086 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13087
13088         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
13089           and slightly confusing test. [ XInternAtom (,,TRUE)
13090           will never return None ].
13091
13092 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
13093
13094         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
13095           gdk/gdkwindow.c (gdk_window_set_hints):
13096
13097         Don't omit setting the properties if flags == 0 -
13098         there may be an existing set of properties there
13099         already. (Very old bug. Would it be better to
13100         delete the property instead?)
13101
13102         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
13103           spelling error in comment.
13104
13105 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
13106
13107         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
13108           to avoid stomping over gdk_error_warnings.
13109
13110         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
13111           as (bits_per_pixel + 7) / 8. This gives the same
13112           result as before for multiples of 8, but actually
13113           a "reasonable" value for 1bit or 4bit displays.
13114
13115 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13116
13117         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
13118         GNU Make.
13119
13120 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13121
13122         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
13123         discarding configure events.
13124
13125 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13126
13127         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
13128         refcount is greater than zero.
13129
13130         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
13131
13132         * gdk/gdkfont.c (gdk_font_unref): Likewise.
13133
13134         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
13135
13136         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
13137
13138 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13139
13140         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
13141         that format 32 => sizeof(item) == 4. It really is
13142         sizeof(long).
13143
13144 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
13145
13146         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
13147         core dump at all on X IO errors, only core dump
13148         if --enable-debug for X errors.
13149
13150 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
13151
13152         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
13153         unknown window:" message. disabled ConfigureNotify discarding code,
13154         because it led to events being processed out of order.
13155
13156 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
13157
13158         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
13159
13160         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
13161         we export this function, supress error warnings and don't reset the
13162         error code in the first half of this function.
13163
13164         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
13165         code (instead of just -1) so gdk_error_trap_pop() reveals something
13166         actually informative about the error that happened.
13167
13168         * gdk/*.c:
13169         don't rely on gdk_error_code being -1 if an error occoured, but just
13170         gdk_error_code != 0.
13171
13172 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
13173
13174         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
13175         pointer *before* invoking the filter function, so we at least don't
13176         crash if a filter is removed that is currently executed. window filters
13177         *really* need to be made truely reentrant at some point.
13178
13179 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
13180
13181         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
13182         PropertyNotify debug messages.
13183
13184 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
13185         
13186         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
13187         
13188         * gdk/gdkim.c: Fix cut-and-paste errors for 
13189         x/y and PreeditAttributes/StatusAttributes.
13190
13191 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13192
13193         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
13194         G_MAXINT to 2^16 to alleviate overflow problems in
13195         various window managers.
13196
13197 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13200         for fontsets.
13201
13202 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
13203
13204         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
13205         Initialize size_hints.x and size_hints.y because kwm
13206         brokenly pays attention to them.
13207         (Bug #1181 -  Lars Heete <hel@admin.de>)
13208
13209 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
13210
13211         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
13212         return value of gdk_list_visuals(). 
13213         (Bug #1193 - Morten Welinder <terra@diku.dk>)
13214
13215 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
13216
13217         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
13218         XSetIMValues to (void *) when comparing to NULL, to workaround
13219         the problem of some compilers barfing since older X headers don't
13220         have the prototype for it.
13221
13222 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
13223
13224         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
13225         for pseudocolor where colormap->colors was double
13226         allocated.
13227
13228         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
13229         color value in the hash table with the pixel filled
13230         in so when we do later hash table lookups, the color
13231         value is correct.
13232         
13233 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
13234
13235         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
13236         making the call
13237
13238 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
13239
13240         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
13241         pointed out by Morten Welinder <terra@diku.dk>.
13242
13243 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13244
13245         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13246           default filter from the list
13247
13248 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13249
13250         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13251           default filter from the list
13252
13253 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
13254
13255         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
13256
13257         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
13258         g_strdup_printf instead of calcing the length separately
13259
13260 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
13261
13262         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
13263         that we don't do in many other places. (Fixing duplicate 
13264         #include of config.h)
13265
13266         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
13267         Otherwise, #ifndef XINPUT_NONE check in the latter
13268         doesn't work. (Bug #546)
13269
13270 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
13271
13272         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
13273         "None" case insensitive.
13274
13275 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13276
13277         * gdk/gdkselection.c: 
13278         Add error traps so if the other end of the connection
13279         dies, we survive.
13280
13281 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13282
13283         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
13284         dest_xid field into two fields - one for the window
13285         to send in messages, one to indicate the last looked
13286         up window for caching purposes. This is needed, so
13287         that Leave messages get the correct window.
13288
13289 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
13290
13291         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
13292         Fix warning created by people mucking around
13293         with the gsource API.
13294
13295         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
13296         Change mapping between GIOCondition and GdkInputCondition
13297         to match the way the Linux kernel does it. This should
13298         fix problems where closed pipes were no longer signalling
13299         GDK_INPUT_READ on systems with a native poll().
13300
13301 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
13302
13303         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
13304         explicitly for the string "None" - it is in the XPM
13305         spec and some servers treat unknown colors in odd ways
13306         (like asking the user!)
13307
13308 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13309
13310         * gdk/gdkevents.c: made "->" into a "." of previous change so
13311         it compiles
13312
13313 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
13314
13315         * gdk/gdkevents.c (gdk_compress_exposures): Set the
13316         window field of the event structure before calling
13317         user filters.
13318
13319 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13320
13321         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
13322         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
13323
13324 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
13325
13326         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
13327         intermediate text property - prevents major memory
13328         leak when gdk_use_mb.
13329         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
13330
13331 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13332
13333         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13334         gtk-a-higuti-990322-[0-3]
13335
13336         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
13337         sizeof(wchar_t) != sizeof (GdkWChar)
13338
13339         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13340         that was causing -DX_LOCALE not to work.
13341
13342         * gtk/gtkrc.c (gtk_rc_init):
13343         X_LOCALE will never have LC_MESSAGES defined
13344
13345         * gdk/gdk.c (gdk_init_check):
13346         Remove --xim-preedit and --xim-status from argv properly.
13347
13348         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
13349         that the client window is present on the X server
13350         before we pass it to the input method.
13351
13352 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13353
13354         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
13355         if --display is specified on the command line, than
13356         the drag window will not be created on that display.
13357         
13358 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
13359
13360         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
13361         lookups with only_if_exists == TRUE were inserting
13362         bogus values into the atom cache.
13363
13364 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13365
13366         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
13367         then reset it to NULL.
13368
13369         * gdk/gdkcolor.c:
13370         (gdk_colors_free): 
13371         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
13372         key for g_hash_table_remove() in both functions, this prevents us
13373         from accessing possibly uninitialized portions of a GdkColor structure
13374         where we are only interested in its pixel value.
13375
13376 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13377
13378         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13379         font hash table, if we have a GdkFontPrivate entry for this font
13380         already, simply increment its reference count, provided by Olaf Dietsche
13381         <olaf.dietsche+list.gtk@netcologne.de>.
13382
13383 1999-09-21  Tor Lillqvist  <tml@iki.fi>
13384
13385         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
13386         just to be sure.
13387
13388         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
13389         unused variables, leftovers from the X11 version.
13390
13391         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
13392
13393         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
13394         downcase fields on X11.
13395
13396 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13397         
13398         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
13399         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
13400
13401 1999-09-17  Tor Lillqvist  <tml@iki.fi>
13402
13403         * gdk/win32/gdk.def: Add gdk_threads_mutex.
13404
13405         * gtk/makefile.msc: Correct path to libintl.
13406
13407         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
13408         use of gint vs. int, and gint vs. gboolean in headers and
13409         definitions. Use GtkType for the *_get_type functions. Note that
13410         these changes preserve binary compatibility.
13411
13412         * gdk/gdk.c
13413         * gdk/win32/gdk.c
13414         * gdk/gdk.h: Fix inconsistencies: gint vs int.
13415
13416         * gtk/gtkmain.c
13417         * gtk/gtkclist.c
13418         * gtk/gtkmenufactory.c
13419         * gtk/gtknotebook.c
13420         * gtk/gtkwidget.c: Fix inconsistencies, also gint
13421         vs. gboolean.
13422
13423         * gtk/gtkcolorsel.[ch]
13424         * gtk/gtkcombo.[ch]
13425         * gtk/gtkdrawingarea.[ch]
13426         * gtk/gtkgamma.[ch]
13427         * gtk/gtkhandlebox.[ch]
13428         * gtk/gtkhpaned.[ch]
13429         * gtk/gtkhruler.[ch]
13430         * gtk/gtkplug.[ch]
13431         * gtk/gtkpreview.[ch]
13432         * gtk/gtkruler.[ch]
13433         * gtk/gtksocket.[ch]
13434         * gtk/gtkstatusbar.[ch]
13435         * gtk/gtktoolbar.[ch]
13436         * gtk/gtkvbbox.[ch]
13437         * gtk/gtkvpaned.[ch]
13438         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
13439         functions.
13440
13441         * gtk/gtkgamma.h: Fix bug, missing () in call of
13442         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
13443
13444 1999-09-14  Tor Lillqvist  <tml@iki.fi>
13445
13446         * gdk/gdkcolor.c (gdk_colormap_new)
13447         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
13448         colormap->colors was allocated twice.
13449
13450         * gdk/win32/gdk.c: Remove some unused stuff.
13451
13452         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
13453         colormap.
13454
13455         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
13456         * gtk/gtklabel.h (gtk_label_get_type)
13457         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
13458         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
13459         in a couple of places, not guint.
13460
13461 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13462
13463         * configure.in,po/et.po: added Estonian language file
13464
13465 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13466
13467         * configure.in,po/da.po: added Danish file
13468
13469 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
13470
13471         * docs/gtkfaq.sgml: Minor FAQ Update
13472
13473 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
13474
13475         * docs/gtkfaq.sgml: FAQ update
13476
13477 1999-08-27  Tor Lillqvist  <tml@iki.fi>
13478
13479         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
13480         way to get window contents continually refreshed while resizing. I
13481         didn't like the effects myself, so it's not on by default.
13482
13483         * gdk/win32/gdkprivate.h: New flag variable
13484         gdk_event_func_from_window_proc, FALSE by default.
13485
13486         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
13487         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
13488         are passed --gdk-event-func-from-window-proc.
13489
13490         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
13491         and we have am event_func, call it instead of enqueing the event.
13492
13493 1999-08-23  Tor Lillqvist  <tml@iki.fi>
13494
13495         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
13496         Kelley: Set expose_count in GdkEventExposes correctly.
13497
13498         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
13499         MULTIPLE_WINDOW_CLASSES).
13500
13501         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
13502         for bug in NT, apparently NT *does* draw the end pixel, too, in
13503         LineTo with a one-pixel pen, so we don't have to do it ourselves.
13504
13505 1999-08-21  Tor Lillqvist  <tml@iki.fi>
13506
13507         Improvements by Hans Breuer: 
13508
13509         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
13510
13511         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
13512         CS_?REDRAW flags as they cause lots of (late) redraws when "show
13513         window contents while dragging" is turned on. Allocate at least
13514         one unique class for every GdkWindowType. If support for single
13515         window-specific icons is ever needed (eg. Dialog specific), every
13516         such window should get its own class.
13517
13518 1999-08-19  Tor Lillqvist  <tml@iki.fi>
13519
13520         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
13521         error that caused crashes.
13522
13523 1999-08-17  Tor Lillqvist  <tml@iki.fi>
13524
13525         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
13526         window, use ScrollWindowEx, and call UpdateWindow. This prevents
13527         bugs when for instance part of the window was outside the
13528         display. Thanks to Philippe Colantoni for finding and fixing this.
13529
13530 1999-08-16  Tor Lillqvist  <tml@iki.fi>
13531
13532         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
13533         endpoint calculations which were totally wrong. (A little RTFMing
13534         helps a lot ;-)
13535
13536         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
13537         from a separate directory, not from gettext, because of licensing
13538         issues (we want to use the LGPL version).
13539
13540         * README.win32: Mention the intl from glibc vs from gettext issue.
13541
13542 1999-08-13  Tor Lillqvist  <tml@iki.fi>
13543
13544         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
13545         in the key event handling: Now AltGr chars work again. Also,
13546         now Alt-digits are passed up as well as Control-digits.
13547         Pass keypad plus and minus as normal plus and minus.
13548
13549 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13550
13551         * docs/gtkfaq.sgml: FAQ Update
13552
13553 1999-07-25  Tor Lillqvist  <tml@iki.fi>
13554
13555         * README.win32
13556         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
13557         the Wintab SDK.
13558
13559         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
13560         OK, but getting closer. Guard against bogus tilt data from Wacom
13561         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
13562         enable easier building without Wintab.
13563
13564         * gdk/win32/gdkinput.h
13565         * gdk/win32/gdkevents.c 
13566         * gdk/win32/gdkwindow.c: Minor changes related related to above.
13567         
13568         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
13569         code. As we have just one visual on Win32, no sense to have it in a
13570         table, and no need for the hash table.
13571
13572         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
13573         better on white background.
13574
13575 1999-07-21  Tor Lillqvist  <tml@iki.fi>
13576
13577         * README.win32: Update gcc build instructions. Mention gettext is
13578         GPL.
13579
13580         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
13581         supported cursor size with GetSystemMetrics.
13582
13583         * gdk/win32/gdkfont.c
13584         * gtk/gtkfontsel.c: Guard against some font weight and charset
13585         symbols being undefined (in mingw32 headers).
13586
13587         * gdk/win32/makefile.cygwin
13588         * gtk/makefile.cygwin
13589         * gtk/gtkthemes.c: No longer need to have differently named
13590         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
13591
13592 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
13593
13594         * docs/gtkfaq.sgml: Long awaited FAQ update.
13595
13596 1999-07-15  Tor Lillqvist  <tml@iki.fi>
13597
13598         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
13599         it. Obscure bit manipulation needed.
13600
13601         * gdk/win32/gdkevents.c: Logging.
13602         
13603         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
13604         style (file name include compiler name) for theme engines.
13605
13606 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13607
13608         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13609
13610         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13611         events. The key.string wasn't zero-terminated, still we strdup'ed
13612         it in gdk_event_copy(). Synthesize crossing events for button
13613         events before possible propagation.
13614
13615         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13616
13617         * gdk/win32/makefile.cygwin
13618         * gtk/makefile.cygwin: Use new DLL naming style for the
13619         GCC-compiled ones.
13620
13621         * gdk/win32/makefile.msc
13622         * gtk/makefile.msc: Cosmetics mostly.
13623
13624         * gtk/gtk.def: Add missing entry points.
13625
13626         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13627
13628 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13629
13630         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13631         or height is zero. Don't print a warning if Pie or Arc fails, they
13632         always fail (?) for very narrow ellipses.
13633
13634         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13635         the part or the destination window corresponding to source area
13636         outside of the source drawable's boundary.
13637
13638         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13639         anything if less than two points.
13640
13641         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13642         return NULL. Gtk cut-and-paste inside a single program works
13643         better this way. (It always gets the clipboard contents from
13644         Windows, not from its own copy, which is cleared anyway. I can't
13645         say I fully understand what happens... Emulating the X selection
13646         and property stuff is a bit of a mess.)
13647
13648         * gdk/win32/gdkevents.c
13649         * gdk/win32/gdkproperty.c: A bit more verbose logging.
13650
13651         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13652         that never got deleted). Revamp gdk_region_shrink.
13653
13654         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13655         after use.
13656
13657         * gtk/gtk.def: Add some missing entry points.
13658
13659         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13660         component.
13661
13662 1999-07-04  Tor Lillqvist  <tml@iki.fi>
13663
13664         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13665         Control-digits specially.
13666
13667 1999-07-03  Tor Lillqvist  <tml@iki.fi>
13668
13669         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13670
13671 1999-06-28  Tor Lillqvist  <tml@iki.fi>
13672
13673         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
13674         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
13675         finding this.)
13676
13677 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
13678
13679         * gtk+.spec.in: Corrected some typos in files section.
13680         
13681 1999-06-15  Tor Lillqvist  <tml@iki.fi>
13682
13683         * README.win32: Mention using GNU gettext.
13684         * config.h.win32: Enable NLS stuff.
13685         * gtk/makefile.msc: Use GNU gettext.
13686         * gdk/win32/gdkdnd.c: Minor header reorg.
13687         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
13688         cosmetics.
13689         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
13690         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
13691
13692 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
13693
13694         * acinclude.m4
13695         * config.guess
13696         * config.status
13697         * ltconfig
13698         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
13699
13700 1999-05-30  Tor Lillqvist  <tml@iki.fi>
13701
13702         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
13703         SafeAdjustWindowRectEx. Don't override all calls to
13704         AdjustWindowRectEx by it, but use it only in two places: When
13705         creating a new top-level window and when moving a top-level
13706         window.
13707
13708         Use screen coordinate rectangle, not client rectangle, in
13709         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
13710         when we try to place a window so that the decoration (mainly,
13711         title bar) isn't visible.
13712
13713         These changes fix the bug that showed up for instance as the
13714         GIMP's saved top-level windows moving right and down (by an amount
13715         equal to the window decoration) for each session. This bug showed
13716         up also in testgtk's "Saved Position".
13717
13718         gdk_window_resize also redone a bit.
13719
13720 1999-05-25  Tor Lillqvist  <tml@iki.fi>
13721
13722         * gtk/testgtkrc: Add (commented out) Windows-style theme
13723         include line.
13724
13725         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
13726
13727 1999-05-18  Tor Lillqvist  <tml@iki.fi>
13728
13729         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
13730         gdkx.h to a gdk subdirectory, so that applications can include
13731         these with <gdk/*.h> without trouble.
13732
13733         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
13734         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
13735         have their bitmap destroyed.
13736
13737         * gdk/win32/gdk.def: Add gdk_root_parent.
13738
13739 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
13740
13741         * configure.in
13742           gtk-config.in
13743           ltconfig
13744           ltmain.sh     
13745           gtk/Makefile.am: changes to compile nicely (with xlib) 
13746           on BeOS
13747
13748 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13749
13750         * acinclude.m4
13751         * config.guess
13752         * config.sub
13753         * ltconfig
13754         * ltmain.sh: upgrade to libtool 1.3
13755
13756 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
13757
13758         * gtk/gtkclist.c:
13759         * gtk/gtkctree.c: merges from gtk-1-2
13760
13761 1999-04-25  Tor Lillqvist  <tml@iki.fi>
13762
13763         Support added for building using a GNU toolchain on Win32,
13764         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13765
13766         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13767         * config.h.win32: Changes for gcc.
13768         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13769         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13770         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13771         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13772         Protect shl stuff unavaiilable with mingw32 headers.
13773         * gdk/win32/gdkevents.c: Fix typo.
13774         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13775         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13776         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13777         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13778         the mingw32 headers.
13779         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13780         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13781         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13782         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13783         Test for NATIVE_WIN32, not _MSC_VER.
13784         * gtk/gtkmain.c: No use warning about developer version on Win32,
13785         there aren't any non-developer versions anyhow.
13786         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13787         * gtk/makefile.msc: Use pthread from another directory. Minor other
13788         changes. 
13789
13790 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13791
13792         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13793           default filter from the list
13794
13795 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
13796
13797         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13798          when gtk_widget_grab_default() is called for a widget that
13799          is not within a GtkWindow.
13800
13801 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
13802
13803         * docs/gtk_tut.sgml, examples/clist.c: use a
13804           scrolled window in the clist example. Minor
13805           tutorial fixes.
13806
13807 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
13808
13809         * docs/gtk_tut.sgml: Style check from David King
13810           <dking@youvegotmail.net>
13811
13812 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
13813
13814         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13815         compile with unknown value of GDK_WINDOWING
13816
13817 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
13818
13819         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13820         after the rule is fired.
13821         (install-exec-local): Install gdkconfig.h only if the contents are
13822         different from the currently installed gdkconfig.h.
13823
13824 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
13825
13826         * gdk/Makefile.am (configexecincludedir): Rename from 
13827         configincludedir so that gdkconfig.h will be installed 
13828         as part of `make install-exec'. 
13829
13830 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13831
13832         * acinclude.m4
13833         * config.guess
13834         * config.sub
13835         * ltconfig
13836         * ltmain.sh: upgrade to libtool 1.2f
13837
13838         * autogen.sh: libtool is not required to autogen gtk+
13839
13840         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13841         needed)
13842
13843 1999-03-18  Tor Lillqvist  <tml@iki.fi>
13844
13845         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13846         declaring gdk variables exported/imported from the DLL. New image
13847         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13848         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13849         GDK_DRAG_PROTO_OLE2.
13850
13851         * gdk/gdk.h: Merge in Win32 version: Two new functions,
13852         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13853         declared only for the Win32 version, but could be in the X11
13854         version as well. (Needed for a Xlib-less gdk_imlib.)
13855         gdk_color_hash should have only one parameter. Declare
13856         gdk_threads_mutex with GDKVAR.
13857         
13858         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13859         just one parameter.
13860
13861         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13862         per pixel, not bits.
13863
13864         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13865         Fetch bpp (which means bits-per-pixel here) from another place on
13866         Win32. Accept also depth==32 (which we might get on Win32) with
13867         bpp==32.
13868
13869         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13870         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13871         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13872         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13873         in the backend-dependent directory, not in the common gdk
13874         directory.
13875
13876         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13877         headers.
13878
13879 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
13880
13881         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13882         want to use the Gtk+ devel version (which is true, and yes - even i am
13883         currently working with the 1.2.x branch). so everyone reading this, you
13884         probably want to issue
13885         cvs checkout -r glib-1-2 glib
13886         and
13887         cvs checkout -r gtk-1-2 gtk+
13888         as your next two comands.
13889
13890 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
13891
13892         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13893         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13894
13895         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13896         file. strongly deprecated the GTK_HAVE_* macros, we provide
13897         GTK_CHECK_VERSION() for people that need to check for certain
13898         Gtk+ versions.
13899
13900         * gtk/gtkcompat.h: removed this from CVS.
13901         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13902         idea right from the start, it just didn't seem like that back then.
13903
13904 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
13905
13906         * merges from gtk-1-2:
13907
13908 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
13909
13910         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13911         item factory class has been created.
13912         (gtk_item_factory_parse_rc): likewise.
13913
13914         * gtk/gtkmenu.c:
13915         keep proper references for old_active_menu_item.
13916         (gtk_menu_reparent): unset the usize of the new parent,
13917         so the menu can sanely be size requested and we don't get nasty screen
13918         artefacts upon next reparentation.
13919         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13920         enter notify. only synthesize enter notifies if the pointer really is
13921         inside the event window.
13922         (gtk_menu_popdown): use gtk_menu_shell_deselect().
13923         (gtk_menu_popup): move the background setting stuff into
13924         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13925
13926         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13927         gtk_menu_shell_select_item() to select the new item.
13928         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13929         do the right thing for deselection as well.
13930
13931 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
13932
13933         * gtk/gtkwidget.[hc]:
13934         (gtk_widget_accelerators_locked): return whether a widget's accelerators
13935         are locked.
13936
13937         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13938         existing accelerators if the widget's accelerators are locked.
13939
13940 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
13941
13942         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13943
13944         * gtk/gtkmenu.c: truely forward key press and key release events to
13945         the menu widget from the toplevel or tearoff window. we can't simply
13946         connect to that, we need to stop further processing of the events as
13947         well.
13948
13949 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
13950
13951         * gtk/gtkmenu.c:
13952         (gtk_menu_key_press): pass event->keyval, event->state to
13953         gtk_accelerator_valid, instead of event->keyval twice.
13954         refuse to install single letter accelerators for menus that use
13955         single letter shortcuts.
13956
13957         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13958         gtk_menu_ensure_uline_accel_group().
13959
13960         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13961         which will always return an uline accel group, made
13962         gtk_menu_get_uline_accel_group() return NULL if the group isn't
13963         yet created.
13964
13965 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
13966
13967         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13968
13969         * gtk/gtkclist.c (gtk_clist_column_title_passive):
13970         Leave button sensitive, trap  button_press, button_release,
13971         motion_notify, enter_notify and leave_notify events instead.
13972         (gtk_clist_column_title_active): disconnect event handler.
13973         (gtk_clist_drag_data_get): fixed memory leak. Reported by
13974         Guillaume Laurent <glaurent@worldnet.fr>
13975
13976 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
13977
13978         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13979         width/height mixups.
13980
13981         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13982         if needed.
13983
13984 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
13985
13986         * gtk/testgtk.c (create_item_factory): unref the item factory after
13987         window's destruction.
13988
13989         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13990         count on the menu shell around the menu item's activation, since the
13991         signal emission may cause menu shell destruction.
13992
13993         * gtk/gtkitemfactory.c:
13994         the previous code leaked one accel group per menu. we use
13995         gtk_menu_get_uline_accel_group() now to fix that, and with that
13996         also create the underline accelerator group of the menus only if
13997         required (i.e. an underline accelerator has been specified).
13998         (gtk_item_factory_construct):
13999         (gtk_item_factory_create_item): removed code that would create an
14000         extra accel group for the menu (and leak references).
14001         (gtk_item_factory_create_item): adapted the underline accelerator
14002         installation code to properly feature gtk_menu_get_uline_accel_group().
14003
14004         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
14005         menu->accel_group, this may return NULL if the accelerator group
14006         hasn't been set yet.
14007         added gtk_menu_get_uline_accel_group() to retrive the underline
14008         accelerator group of the menu, this will be created on demand
14009         and proper care is taken about its reference count.
14010
14011         * gtk/gtkitemfactory.h:
14012         * gtk/gtkitemfactory.c:
14013         dumped the approach of keeping a widgets by action list on the
14014         factory since the factory<->widget destroy negotiation didn't work
14015         and would be hard to get going at all. instead we keep a list of
14016         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
14017         persistant throughout a program's life time).
14018         also, i removed the static const gchar *key_* variables, and made
14019         them inline strings (they weren't actually used anyways).
14020         (gtk_item_factory_add_item): update ifactory->items.
14021         (gtk_item_factory_destroy): destroy ifactory->items (and remove
14022         the item factory pointer from the remaining ifactory widgets).
14023         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
14024         list to find the widget.
14025         (gtk_item_factory_get_item): new function that works around
14026         gtk_item_factory_get_widget() limitations, this function will only
14027         return menu items, even for <Branch> entries.
14028
14029 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14030
14031         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14032         font hash table, if we have a GdkFontPrivate entry for this font
14033         already, simply increment its reference count, provided by Olaf Dietsche
14034         <olaf.dietsche+list.gtk@netcologne.de>.
14035
14036         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14037         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14038
14039 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
14040
14041         * gtk/gtkcontainer.c:
14042         (gtk_container_add_with_args):
14043         (gtk_container_addv):
14044         (gtk_container_add): before adding a child to a conatiner, make sure
14045         it is (default) constructed, this is neccessary because under certain
14046         circumstances the child will get relized and mapped immediatedly, in
14047         which case it has to be constructed already.
14048
14049 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
14050
14051         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
14052         values > 1 as TRUE also.
14053
14054 1999-03-16  Tor Lillqvist  <tml@iki.fi>
14055
14056         * README.win32: New file.
14057                 
14058         * configure.in: Check for lstat.
14059
14060         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
14061         completeness.
14062
14063         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
14064
14065         * gtk/gtk.def: Removed CRs.
14066
14067         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
14068         ..\gdk\win32).
14069
14070         * gdk/win32/makefile.msc: Correct upwards relative paths.
14071         
14072 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
14073
14074         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
14075           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
14076           it was connecting a void function to expose_event and the int
14077           returning function to the draw signal
14078
14079 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
14080
14081         * configure.in:
14082         Use correct path to libgmodule.la when ref'ing uninstalled copy
14083         of glib.  (Already in stable branch, Bug #417)
14084
14085 1999-03-15  Tor Lillqvist  <tml@iki.fi>
14086
14087         Win32 merge and general portability stuff:
14088                 
14089         * acconfig.h,configure.in: Check for <sys/time.h>.
14090
14091         * gdk/win32: New directory (actually, been there for a while).
14092         
14093         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
14094         NATIVE_WIN32, and use these. Always case fold on Win32. No
14095         backslashed escapes on native Win32.
14096
14097         * gtk/{gtk.def,makefile.msc}: New files.
14098
14099         * gtk/Makefile.am: Add above new files.
14100         
14101         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
14102         instead of <strings.h>.
14103
14104         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
14105         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
14106         <unistd.h> appropriately.
14107
14108         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
14109         Use ABS() (from <glib.h>) instead of abs().
14110         
14111         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
14112         of gtk (and thus glib) headers, so that WIN32 will be
14113         defined. With MS C, include <direct.h> for mkdir prototype.
14114
14115         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
14116         some casts, needed by MS C.
14117
14118         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
14119         implemented).
14120
14121         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
14122         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
14123         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
14124
14125         * gtk/gtkmain.h: Mark variables for export/import on Win32.
14126                 
14127         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
14128         the event is not a hint, or its window is not the slider. Needed
14129         on Win32, at least.
14130
14131         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
14132         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
14133         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
14134         a subdirectory of the Windows directory as gtk system
14135         configuration directory.
14136
14137         * gtk/gtkselection.c: No chunks on Win32.
14138
14139         * gtk/gtksocket.c: Not implemented on Win32.
14140
14141         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
14142
14143         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
14144
14145         * gtk/maketypes.awk: Declare variables with a macro that expands to
14146         necessary export/import magic in the case of Win32.
14147                 
14148         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
14149
14150 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
14151
14152         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
14153         since those were meant only for gdki18n.h.  
14154         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
14155         for widechar tests.
14156         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
14157
14158 1999-03-13  Tor Lillqvist  <tml@iki.fi>
14159
14160         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
14161         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
14162
14163         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
14164         installed) to CFLAGS.
14165
14166         * gdk/Makefile.am: Add rules for gdkconfig.h.
14167
14168         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
14169         APIs.
14170
14171         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
14172         gdkx.h anyway when compiling for X11.
14173         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
14174         general): Merge in Win32 version.
14175         
14176         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
14177         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
14178         expansion (if we don't have HAVE_PWD_H), allow for drive
14179         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
14180         included code from Craig Setera's port to Win32 (the one that uses
14181         X11, and the cygwin dll), even if it probably will be abandoned.
14182
14183         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
14184         the user entered one herself.  This way one can complete *.h and
14185         don't get matches on any .help files, for instance.
14186         
14187 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14188
14189         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14190         font hash table, if we have a GdkFontPrivate entry for this font
14191         already, simply increment its reference count, provided by Olaf Dietsche
14192         <olaf.dietsche+list.gtk@netcologne.de>.
14193
14194         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14195         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14196
14197 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14198
14199         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
14200         the number of calls to gdk_draw_point() (and thus to X) by
14201         clipping the points by hand.
14202
14203         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
14204         the clip parameter.
14205         (gtk_handle_box_paint): Only paint the handle if the expose area
14206         intersects it.
14207
14208 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14209
14210         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
14211
14212 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
14213
14214         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
14215         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
14216
14217 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14218
14219         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
14220          textmode (O_TEXT) for OS/2 version.
14221
14222 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
14223
14224         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
14225         GtkSpinButton, "input" and "output", to make the output more flexible.
14226         The user has to provide a mapping between adjustment->value and the
14227         output string (and vice versa, if the spin button is editable). 
14228         See testgtk for examples.
14229
14230 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
14231
14232         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
14233         new one.
14234         
14235         * configure.in: set gtk+ version to 1.3.0.