]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
fix busted /* comment */
[~andy/gtk] / ChangeLog.pre-2-4
1 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtkimmodule.h: fix busted /* comment */
4
5 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
6
7         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
8         object properties.
9
10 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
11
12         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
13         add object properties.
14
15         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
16         to add object properties.
17
18         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
19         object properties.
20
21         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
22         add object properties.
23
24         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
25         object properties.
26
27 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
28
29         * gtk/gtktreemodel.c: renamed "child_toggled" to
30         "has_child_toggled".
31
32         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
33         handle new signal name.
34
35         * gtk/gtktreestore.c: Updated to handle new signal name.
36         * gtk/gtklisttore.c: Updated to handle new signal name.
37         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
38
39 2001-03-05  Alexander Larsson  <alexl@redhat.com>
40
41         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
42         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
43
44 2001-03-05  Michael Natterer  <mitch@gimp.org>
45
46         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
47         pixbuf-engine coincidentially also failed to make one of it's
48         parent_class pointers static, causing overwriting of GtkLabel's
49         parent_class pointer in pixbuf_style_class_init().
50         (Will commit the fix to the pixbuf-engine too).
51
52 2001-03-05  Alexander Larsson  <alexl@redhat.com>
53
54         * gdk/gdkwindow.h:
55         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
56         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
57         gdk_window_set_icon_list for net wmspec functionality.
58
59         * gdk/x11/gdkwindow-x11.c:
60         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
61         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
62         gdk_window_set_icon_list.
63         Added gdk_wmspec_change_state helper function and used it in the code.
64         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
65
66         * gtk/gtkdialog.c (gtk_dialog_init):
67         Set GDK_WINDOW_TYPE_HINT_DIALOG.
68
69         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
70         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
71
72         * gtk/gtkwindow.c:
73         new function gtk_window_set_type_hint.
74         On realize, set type hint and modal hint.
75
76         * gtk/gtkwindow.h:
77         Added type_hint field and gtk_window_set_type_hint.
78
79 2001-03-05  Alexander Larsson  <alexl@redhat.com>
80
81         * gtk/gtklabel.[ch]:
82         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
83         New function gtk_label_get_accel_keyval () to get the underline accelerator
84         of the label. Setting the label pattern overrides other attributes.
85
86 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
87
88         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
89         Added missing initializers to gtk_rc_style_init().
90
91 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
92
93         * gtk/gtktextview.c: fixed bug #51097 about setting 
94         gtk_text_view_set_border_window_size() if the widget is 
95         already realized.
96
97 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
98
99         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
100
101         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
102         comment. Won't do to have duplicated doc comments between
103         the platform subdirs.
104
105 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
106
107         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
108           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
109
110         Detectable auto-repeat - make a repeating key generate
111         press/press/press/release instead of press/release pairs.
112
113         If we have Xkb and XkbSetDectableAutoRepeat supports
114         that, we do it that way. Otherwise, when we get
115         a release event, we check ahead with XPending to see
116         if the next key is a KeyPress with the same keycode
117         and timestamp. (Not 100% reliable, but pretty close.)
118           
119 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
120         
121         * gtk/gtkmain.c (gtk_propagate_event): Only do special
122         special key-press grab handling for widgets within
123         GtkWindows. Otherwise, fall through to normal case.
124  
125         This prevents key events being sent twice to GtkInvisible
126         widgets, which can cause all sorts of mischief.
127  
128 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
129  
130         * gtk/gtkmain.c (gtk_propagate_event): When a grab
131         widget is in effect, give the grab widget a first
132         crack at KEY_PRESS/RELEASE events. (#424)
133  
134 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
135
136         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
137         to extend the selection. (Roughly based on patch
138         from Jay Cox, #50939)
139
140         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
141         to properly handle previous GDK_BUTTON_PRESS. 
142         (Patch from Jay Cox, #50938)
143
144         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
145         '\0' back along with the deleted text. (#51148)
146
147 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
148
149         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
150         the group when extracting it from the X keyboard event.
151
152         * modules/input/Makefile.am modules/input/imipa.c: 
153         Simple module for entering IPA. (Do we need a 
154         gtk-stupid-input-tricks CVS module?)
155
156 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
157
158         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
159         const.
160
161         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
162
163         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
164         is no focus widget for the dialog currently, grab the focus as well
165         as the default.
166
167         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
168         the action area's children to iterate through, not the
169         dialog's children.
170
171 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
172
173         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
174         Add plug-socket tests. (Won't work worth a darn until I commit
175         the rest of the plug-socket changes, but no reason these
176         can't go into CVS now.)
177
178 2001-03-02  Havoc Pennington  <hp@redhat.com>
179
180         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
181         _gdk_region_get_xrectangles()
182
183         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
184
185         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
186
187         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
188         function, contributed by Ron Steinke    
189
190         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
191         gdk_net_wm_supports
192
193         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
194         New function, contributed by Ron Steinke
195
196         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
197         used to line up the text in the entry when using the entry for
198         editable sheet cell hacks
199
200         * gtk/testgtk.c (create_entry): test the activate_default setting
201         on GtkEntry
202
203         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
204         cause the entry to activate the default button for a dialog when 
205         activated
206         (gtk_entry_get_activates_default): new function
207
208 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
209
210         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
211         Hwang to move call to sync_selection() up a few lines
212         to before the row list is modified, to fix crash when
213         removing rows in the undo_selection list.
214
215         (Test case provided by Daniel Elstner:
216
217         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
218
219 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
220
221         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
222         of tree->root_tree in parent_set rather than _map(), 
223         fixing #50892 in a bit better manner.
224
225 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
226
227         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
228
229 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
230
231         * gtk/gtkstyle.c : Remove duplicate fwd decl for
232         gtk_default_draw_shadow.
233
234 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
235
236         * gdk/gdkimage.c (gdk_image_new): Remove excess 
237         warning, make warnings more verbose, treat a error
238         in shmat as permanent, and don't try again.
239         (#51163, Ed Randall.)
240
241 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
242
243         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
244         delay for the first click before starting to scroll.
245         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
246
247         * gtk/gtktext.c: GtkText should have I-beam cursor. 
248         (based on gtk-enf-990513-1.patch, Eric Fisher.)
249
250 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
251
252         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
253         cleanup to remove some references to unused
254         ->xoffset, ->yoffset.
255
256 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
257
258         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
259         mask. (#51039, fix from Martin Maierhofer)
260
261 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
262
263         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
264         for unshifted + and shifted = for non-us keyboards.
265         Make <Control>+ and <Control>- work as well as 
266         <Control>KP_Plus, <Control>KP_Minus for recursive
267         open/close.  (#2682, René Seindal)
268
269 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
270
271         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
272         the active menu item before deactivating the menu,
273         so gtk_menu_popdown doesn't change the history. (#50964)
274         
275 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
276
277         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
278         draw lines with text_gc rather than black_gc.
279         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
280
281 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
282
283         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
284         Move handling of buttons fully in gtktreeviewcolumn.  This code is
285         less interrelated then it was, but it still requires the
286         GtkTreeView to map it.
287
288         * test/testtreecolumn.c: Now I can add a column to one view,
289         remove it, add it to the another view, remove it, then re-add it
290         to the first.  Nifty.
291
292 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
293
294         * docs/tutorial/gtk-tut.sgml: Minor corrections
295
296 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
297
298         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
299         GtkRowReference.
300
301 2001-02-28  Havoc Pennington  <hp@redhat.com>
302
303         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
304         draw_default
305         (gtk_widget_draw_focus): remove this function; we could instead
306         make it just gtk_widget_draw(), but in most cases I think the
307         result would be broken user code, so think it's better to have
308         that code not compile and get fixed
309         (gtk_widget_draw_default): ditto
310
311         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
312         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
313         
314         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
315         widgets lose/get the default, instead of calling draw_default
316         
317         * docs/Changes-2.0.txt: note about all this
318
319         Then fixed every widget in GTK, I won't list all the filenames.
320
321 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
322
323         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
324         _gtk_tree_row_reference_deleted.
325         (inserted_callback): Proxy out to
326         _gtk_tree_row_reference_inserted.
327         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
328         get around signal emission ordering problem.
329
330         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
331         fix to work with SINGLE 
332         (_gtk_tree_selection_internal_select_node): Major sanitization on
333         selections.  SINGLE now seems to work.
334
335         * tests/Makefile.am: add testtreecolumn.c:
336
337         * tests/testtreecolumn.c: New test.  Mostly points out selection
338         bugs currently, but will test columns later.
339
340         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
341         selection bug.  I hate touching this code -- it's scary.
342
343 2001-02-26  Havoc Pennington  <hp@redhat.com>
344
345         * gtk/testgtk.c: test the window state stuff
346
347         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
348         window come to the user's attention as if it were just created
349         (gtk_window_iconify): new function
350         (gtk_window_deiconify): new function
351         (gtk_window_stick): new function
352         (gtk_window_unstick): new function
353         (gtk_window_maximize): new function
354         (gtk_window_unmaximize): new function
355
356         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
357
358         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
359
360         * gdk/x11/gdkevents-x11.c: create window state events when
361         appropriate
362         (gdk_wmspec_supported): new function
363
364         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
365         iconification before showing the window
366         (gdk_window_deiconify): new function
367         (gdk_window_stick): new function
368         (gdk_window_unstick): new function
369         (gdk_window_maximize): new function
370         (gdk_window_unmaximize): new function
371
372         * gdk/gdkwindow.c: store the window state in the window; 
373         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
374         window->mapped.
375         (gdk_window_get_state): return the current window state
376
377         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
378         (gdk_event_get_state): handle GDK_WINDOW_STATE
379         (gdk_synthesize_window_state): function to create the window state
380         events
381
382         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
383         event, for changes to "window state" such as maximized, sticky, 
384         etc.
385         
386         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
387         focuses a window
388
389         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
390         finds out if we support a given WM spec hint
391
392 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
393
394         * docs/faq/gtk-faq.sgml: New question re memory leaks.
395
396 2001-02-25  Hans Breuer  <hans@breuer.org>
397
398         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
399         cause we want to loose those prototypes only in the latter case
400
401         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
402         GdkPixmapImplWin32 because it itsn't derived from it. Use the
403         impl member variable instead
404
405         * gtk/gtk.def : updated
406
407         * gtk/gtklist.c : 
408         * gtk/gtkmenus.c : include <string.h> for memset ()
409
410         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
411         for everthing built here, but for gtk-x.x.dll only. This solves
412         problem of indifferent gtk type definitions
413
414 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
415
416         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
417
418 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
419
420         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
421         column that is exposed.
422
423         (_gtk_tree_view_update_size): Changed name from set_size, and
424         changed function to do more work, and not force people calling it
425         to figure out the size.  Simplifies a lot of code elsewhere.
426
427 2001-02-23  Alexander Larsson  <alexl@redhat.com>
428
429         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
430         return solid masks for xpms that have no transparent color.
431         This makes the ..._create_from_xpm... API backwards
432         compatible.
433
434 2001-02-23  Tor Lillqvist  <tml@iki.fi>
435
436         * README.win32: Update. Mention the gtk-1-3-win32-production
437         branch.
438
439         * gdk/win32/bdfcursor.c: New file. A program that generates
440         xcursors.h. Thanks to Stefan Ondrejicka.
441
442         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
443         compact format.
444
445         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
446
447         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
448         function, uses xcursors.h.
449         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
450         cursor from inline data instead of using LoadCursor() to generate
451         it from a resource.
452
453         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
454         event, must check the Windows message for mouse button state, as
455         the GDK event state might not have been built if it is
456         undelivered. Remove one goto.
457
458         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
459         SetCursor() if the current cursor as returned by GetCursor() is
460         the window's previous cursor. The ChildWindowFromPoint() test
461         apparently didn't work correctly.
462
463         * gdk/win32/rc/*.cur: Remove.
464
465         * gdk/win32/rc/gdk.rc.in: Remove cursors.
466
467         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
468
469         * gtk/makefile.{mingw,msc}.in: Updates.
470
471 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
472
473         * gtk/gtktreemodel.h: add functions for signal emission.
474
475         * gtk/gtktreestore.c: move to use above functions instead of
476         g_signal_emit.
477
478         * gtk/gtkliststore.c: ditto
479
480 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
481
482         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
483         GObject instead of GtkObject.
484
485         * gtk/gtkliststore.c: ditto.
486
487         * gtk/gtktreemodelsort.c: ditto.
488
489         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
490         GtkTreeModelIface, instead of in each model.
491
492 2001-02-21  Havoc Pennington  <hp@redhat.com>
493
494         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
495         unbreak this function
496
497         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
498         properties
499
500         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
501         properties
502
503         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
504         properties
505
506         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
507         mean unset the max length
508
509 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
510
511         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
512         Changed name to be set_cell_data_func to make it clear what
513         the functino does.  Close bug #51069.
514
515 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
516
517         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
518         have memory actually freed.  Keeps box running longer.
519
520 2001-02-21  Alexander Larsson  <alexl@redhat.com>
521         
522         * gtk/gtkseparatormenuitem.[ch]:
523         Added new menu separator item. The drawing and size handling
524         is still done in GtkMenuItem, but the API is a bit more sane.
525         
526         * gtk/Makefile.am:
527         Add gtkseparatormenuitem.[ch].
528
529         * gtk/gtk.h:
530         Add gtkseparatormenuitem.h.
531         
532         * gtk/gtkentry.c:
533         * gtk/gtkmenufactory.c:
534         * gtk/gtktextview.c:
535         Use the new API for menu separators.
536         
537         * demos/gtk-demo/menus.c (create_menu):
538         Add some GtkSeparatorMenuItem demo code.
539
540 2001-02-20  Havoc Pennington  <hp@redhat.com>
541
542         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
543         Lee Mallabone
544
545         * gtk/gtkarrow.c: Convert to new property API, patch from 
546         Lee Mallabone
547
548 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
549
550         * tests/testtreeview.c (toggled_callback): fix to reflect change
551         in GtkTreeModelStore.
552
553 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
554
555         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
556         function to create an icon set from a pixbuf.
557
558 2001-02-20  Alexander Larsson  <alexl@redhat.com>
559
560         * gtk/gtkcellrenderertext.[ch]:
561         Add a "markup" property.
562
563         * gtk/treestoretest.c:
564         Use the markup property, remove some leftover stuff from
565         GtkTreeModelMapping.
566
567 2001-02-20  Alexander Larsson  <alexl@redhat.com>
568
569         * gtk/gtklabel.c (gtk_label_set_selectable):
570         Queue a redraw if the selectable setting was changed.
571
572 2001-02-20  Alexander Larsson  <alexl@redhat.com>
573
574         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
575         Actually copy the whole gc, not just the public parts.
576         
577         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
578         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
579         labels.
580
581 2001-02-19  Havoc Pennington  <hp@pobox.com>
582
583         * gdk/gdkwindow.c: docs
584
585         * gdk/gdkrgb.c: docs
586
587         * gdk/gdkregion-generic.c: docs
588
589         * gdk/gdkgc.c (gdk_gc_set_values): docs
590
591         * gdk/gdkdraw.c: docs
592
593         * gdk/gdkdrawable.h: deprecate drawable get/set data
594
595 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
596
597         * demos/gtk-demo/dialog.c: Add simple new demo.
598
599 2001-02-19  Havoc Pennington  <hp@redhat.com>
600
601         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
602         insert_child_anchor signal, bug #50245
603
604         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
605         from create_child_anchor, so the anchor is passed in
606
607         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
608         (_gtk_widget_segment_new): have the child anchor object passed in, 
609         instead of creating it.
610
611         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
612         to gtk_text_buffer_get_modified
613
614 2001-02-19  Havoc Pennington  <hp@redhat.com>
615
616         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
617         changed GLib without fixing GTK
618
619         * gtk/gtkrange.h: Rename all the stupid implementation detail 
620         functions to have an underscore in front. Most of them should 
621         probably just go away, but for starters don't export them.
622         Bug #50482
623
624 2001-02-19  Havoc Pennington  <hp@redhat.com>
625
626         * gdk/gdkcolor.h: test was backward, so deprecated functions were
627         excluded by default
628
629         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
630         clean up the old code a bit
631
632         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
633         inconsistent state
634
635         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
636         draw inconsistent state
637
638         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
639         (create_menu): add inconsistent test
640
641         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
642         new function
643         (gtk_check_menu_item_get_inconsistent): new function
644         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
645         state (using etched in for now)
646
647         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
648         draw inconsistent state
649
650         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
651         function, used when the user has selected a range of stuff in
652         different states
653         (gtk_toggle_button_get_inconsistent): accessor for that
654         (gtk_toggle_button_paint): draw inconsistent state (etched in?
655         don't know what else to do)
656
657 2001-02-19  Hans Breuer <hans@breuer.org>
658
659         * gtk/gtk.def : updated exported symbols
660
661         * gtk/makefile.msc.in : updated
662
663         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
664         a colormap, when invoked from testgtk::entry. I'm not sure where
665         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
666         avoids immediate crashing ...
667
668         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
669         any objections ?
670
671         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
672         0 parameter. At least msvc doesn't like macros with var args. 
673         I simply removed the extra 0, was it a feature or a typo ?
674
675         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
676         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
677         because the value assignment to the internal struct wasn't working.
678         I'm not absolutely sure. The problem could have been resolved by
679         changing the "func" declartion in the struct, but was the pointer
680         to the function pointer intended ?
681
682         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
683
684         * gdk/gdk.def : updated exported symbols
685
686         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
687         only use SetDIBitsToDevice if there is a palette at the drawable
688         and the image is GDK_VISUAL_PSEUDO_COLOR
689
690         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
691
692         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
693
694         * gdk/*/makefile.msc : updated
695
696 2001-02-19  Havoc Pennington  <hp@redhat.com>
697
698         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
699         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
700
701         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
702         (gdk_key_repeat_restore): nuke
703
704         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
705         (gdk_init_check): no atexit func
706
707         * gdk/gdkrgb.h: mark some stuff deprecated
708
709         * gdk/gdkcolor.h: mark some stuff deprecated
710         
711         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
712
713         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
714
715 2001-02-16  Havoc Pennington  <hp@redhat.com>
716
717         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
718         scroll steps.
719
720         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
721         steps, and add Ctrl-arrow shortcuts for paging visually as with
722         HScale, since Page Up and Page Down move logically.
723
724         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
725         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
726         
727         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
728         steps
729         (gtk_range_scroll): handle the visual steps
730
731         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
732         scroll steps
733
734         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
735         steps, not the logical ones.
736
737         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
738         (scroll_vertical): handle up/down steps
739
740 2001-02-19 Alexander Larsson  <alexl@redhat.com>
741
742         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
743         Copy data and free data with free().
744
745         * gdk-pixbuf/gdk-pixbuf.c:
746         * gdk-pixbuf/io-jpeg.c:
747         * gdk-pixbuf/io-png.c:
748         Use g_try_malloc/g_free instead malloc/free.
749         
750         * gdk-pixbuf/test-gdk-pixbuf.c:
751         Must... initialize... gobject...
752         
753         * gdk-pixbuf/pixops/timescale.c:
754         * gtk/gtkcalendar.c:
755         Use g_malloc instead of malloc.
756         
757 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
758
759         * gtk/testgtkrc:
760         Comment out property assignments, these don't work yet.
761
762 2001-02-17  Havoc Pennington  <hp@pobox.com>
763
764         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
765         bit.
766
767 2001-02-17  Havoc Pennington  <hp@pobox.com>
768
769         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
770         shadowed variables that had broken size request in some cases,
771         leading to bogus tooltips (#50996)
772
773 2001-02-06  Jon K Hellan  <hellan@acm.org>
774
775         Implement fast browsing of tooltips, bug #50619
776         
777         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
778         and last_popdown
779         
780         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
781         use_sticky_delay and last_popdown.
782         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
783         time of popdown.
784         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
785         is NULL.
786         (gtk_tooltips_recently_shown): New static function.  Return true
787         if < sticky_delay has elapsed since last popdown.
788         (gtk_tooltips_event_handler): Display window after sticky_delay
789         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
790         since last popdown.
791         
792 2001-02-17  Havoc Pennington  <hp@pobox.com>
793
794         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
795         instead of (). #6394
796
797         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
798         G_CONST_RETURN, make it return by reference, #50473
799         
800 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
801
802         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
803         generated ENTER_NOTIFY event with 0, otherwise not explicitely
804         setup fields contain garbage (e.g. subwindow, breaking
805         gdk_drawable_ref() upon event copy).
806         (gtk_menu_stop_navigating_submenu_cb): same here.
807
808         * gtk/gtklist.c (gtk_list_vertical_timeout): 
809         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
810         * gtk/gtkclist.c (vertical_timeout): 
811         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
812         default-zero-intialization for unions to memset(,0,), as unions are
813         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
814         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
815
816         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
817         g_closure_sink() warning.
818
819         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
820         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
821         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
822         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
823         
824 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
825
826         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
827         gtk_*_store_get, and moved to GtkTreeModel.
828
829         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
830
831         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
832
833         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
834
835         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
836         set the func.
837
838         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
839         freeze/thaw notify between setting all the properties for a cell.
840
841         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
842
843 2001-02-15  Havoc Pennington  <hp@redhat.com>
844
845         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
846         the X coordinates so they're with respect to the line, rather than 
847         with respect to the layout.
848
849         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
850         Mallabone
851
852         * gtk/testgtk.c (create_range_controls): add vscale tests, 
853         and inverted test
854
855         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
856         #50806
857
858         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
859
860         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
861         gtk_text_iter_is_end
862
863         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
864         rename gtk_text_buffer_get_end_iter
865
866         * gtk/testgtk.c (create_labels): Add test for selectable
867
868         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
869         the selection stuff. This code is kind of broken since it doesn't 
870         use the theme engine.
871
872         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
873         fix infinite loop and y offset problem
874         (gdk_draw_layout_line_with_colors): fix foreground color handling
875
876         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
877         that makes the label selectable.
878         
879         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
880         layout when the style is set, since fonts etc. could have changed.      
881
882 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
883
884         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
885
886         * gtk/gtktreemodelsimple.[ch]: removed.
887
888 2001-02-16  Alexander Larsson  <alexl@redhat.com>
889
890         * gtk/gtktreemodelmapping.[ch]:
891         New files. Implement GtkTreeModelMapping.
892         
893         * gtk/Makefile.am:
894         Add gtktreemodelmapping.[ch].
895         
896         * gtk/gtk.h:
897         Add gtktreemodelmapping.h
898
899         * gtk/treestoretest.c:
900         Test the GtkTreeModelMapping
901
902 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
903
904         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
905         have a demo, we might as well pass in real values.  Thanks to
906         clahey for pointing this out.
907
908 2001-02-14  Havoc Pennington  <hp@pobox.com>
909
910         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
911         "static" to a private function
912         (gtk_image_menu_item_class_init): remove destroy handler,
913         add "image" object property
914
915 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
916
917         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
918         Add a shortcut if the window and the current clip_region doesn't
919         overlap. This is needed when there are a lot of windows in a
920         window. The layout test in testgtk is a good test.
921
922         * gdk/linux-fb/gdkwindow-fb.c:
923         Whitespace fix.
924
925 2001-02-13  Sven Neumann  <sven@convergence.de>
926
927         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
928
929 2001-02-13  Alexander Larsson  <alexl@redhat.com>
930
931         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
932         Don't reference last_cursor if it is null. Fixes crash when rotating
933         the screen before having moved the mouse.
934
935         * gdk/linux-fb/gdkcc-fb.c: Zapp!
936
937         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
938
939         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
940         when using 90 or 270 degrees rotation.
941
942 2001-02-12  Havoc Pennington  <hp@pobox.com>
943
944         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
945         it always set the foreground, even if we were only using
946         a stipple.
947         (gdk_draw_layout_line_with_colors): new function, allow
948         override colors
949         (gdk_draw_layout_with_colors): new function, allow override
950         colors
951         (gdk_pango_layout_line_get_clip_region): function to get the clip
952         region for a logical text range
953         (gdk_pango_layout_get_clip_region): get the clip region for a
954         logical text range
955
956         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
957         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
958         the right number of arguments.
959
960         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
961         enhance the function to check that node data corresponds to a 
962         view still belonging to the tree.
963
964         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
965         GtkTreePath
966         (gtk_tree_view_inserted): ditto
967         (gtk_tree_view_child_toggled): ditto
968
969         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
970         simplify this code.
971
972         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
973         a PangoAttrList
974
975         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
976
977         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
978
979         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
980         size in the size request 
981         (gtk_menu_bar_size_allocate): consider toggle size here
982
983         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
984         that displays a widget in the toggle slot
985
986         * gtk/testgtk.c: test GtkImageMenuItem
987
988         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
989         
990         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
991         request and allocation
992
993         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
994
995         * gtk/gtkcheckmenuitem.c
996         (gtk_check_menu_item_toggle_size_request): ditto
997         
998 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
999
1000         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
1001         reference.
1002
1003         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
1004         and refuse to initialize GTK+ if they fail.
1005
1006 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
1007
1008         * configure.in: Add check for gtk-doc version.
1009
1010 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1011
1012         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
1013         where the xpad/ypad was only being used on one side!
1014
1015 2001-02-11  Tor Lillqvist  <tml@iki.fi>
1016
1017         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
1018         function, copied from X11 version.
1019
1020         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
1021         DestroyCursor failures. The reason for the problem (despite the
1022         inconsistent messages from GetLastError()) was that
1023         DestroyCursor() cannot be called while a cursor is set in a
1024         window. Set the new cursor first and then destroy the old one.
1025         Thanks to jpe@archaeopteryx.com.
1026
1027         * gdk/win32/gdkcc-win32.c: Remove.
1028
1029         * gdk/win32/Makefile.am: Remove from here, too.
1030         
1031         * gdk/gdk.def
1032         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
1033
1034         * gtk/gtk.def
1035         * gtk/makefile.mingw.in: Updates.
1036
1037 2001-02-08  Havoc Pennington  <hp@redhat.com>
1038
1039         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
1040         add a widget to a bin that already has a child.
1041
1042         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
1043
1044         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
1045         
1046         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
1047
1048         * gdk/gdk.h: remove gdkcc.h
1049
1050         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
1051
1052         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
1053         GdkPixbuf, since the previous implementation was GdkColorContext
1054         dependent.
1055
1056         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
1057         
1058 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
1059
1060         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
1061         a sane value!
1062
1063 2001-02-08  Havoc Pennington  <hp@redhat.com>
1064
1065         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
1066         lighten them.
1067
1068 2001-02-08  Havoc Pennington  <hp@redhat.com>
1069
1070         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
1071         validation idle
1072
1073         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
1074         cell renderer
1075
1076         * demos/pixbuf-demo.c (timeout): remove deprecated
1077         gtk_widget_draw
1078
1079         * demos/testpixbuf-save.c (main): remove deprecated
1080         gtk_drawing_area_size
1081
1082         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
1083         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
1084         at the start of the allocation.
1085         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
1086         unsetup or NULL model.
1087
1088         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
1089         even/odd/sorted cells in the tree view.
1090
1091         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1092         bugfixes
1093
1094         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
1095         backgrounds with draw_flat_box using different detail for even/odd
1096         rows.
1097
1098         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
1099         row, so we can draw the alternating colors thing
1100
1101         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
1102         property from a synonym property, notify for the synonym.
1103         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
1104         (gtk_text_tag_get_property): Always return the font, even if
1105         all its fields aren't set
1106
1107         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
1108         store the attr list; it leaves us with no way to change attributes
1109         in _render according to the render flags, and no way to implement
1110         get_property. Instead store all the specific text attributes. 
1111         Separate whether an attribute is enabled from its value. Sync all
1112         properties with GtkTextTag, make them all consistent, etc.
1113
1114         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
1115         renderers can highlight the sort row/column     
1116
1117         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
1118         accessor functions to get values; this has the side effect of
1119         showing up which accessor functions were missing. Added those.
1120
1121         * gtk/gtktreeviewcolumn.h: Replace set_justification with
1122         set_alignment, to be consistent with GtkLabel, GtkMisc
1123
1124         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
1125         arrow.
1126
1127         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
1128
1129         * gtk/gtktreesortable.h: updates in here
1130
1131 2001-02-07  Sven Neumann  <sven@convergence.de>
1132
1133         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
1134         pango dimensions after painting the background. We used to draw
1135         gigantic flat boxes here.
1136
1137 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
1138
1139         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
1140         error introduced with earlier commit) (pointed out by
1141         Ollie Lho)
1142
1143 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
1144
1145         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
1146         which are no longer necessary.
1147
1148 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
1149
1150         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
1151
1152 2001-02-04  Tor Lillqvist  <tml@iki.fi>
1153
1154         * gdk/gdk.def
1155         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1156         Provide dummy implementations.
1157
1158 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1159
1160         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1161
1162         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1163         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1164         deprecated this function.
1165
1166         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1167         argument.
1168
1169 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1170
1171         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1172
1173 2001-02-03  Havoc Pennington  <hp@pobox.com>
1174
1175         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1176         Mikael Hermansson with patch from Mikael (if there was a toggle
1177         start one after the first character in the range, this function
1178         was broken). Bug #50380
1179
1180 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1181
1182         * configure.in: Remove confusing comment about X11.
1183
1184 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
1185
1186         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1187         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1188         
1189 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
1190
1191         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1192         it breaks things on BSD. If you want to compile GTK+ with
1193         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
1194         when configuring, since GTK+ simply can't be "pure ANSI" 
1195         in the header files it uses. (#8170, Greg Hudson)
1196
1197 2001-02-02  Havoc Pennington  <hp@redhat.com>
1198
1199         * gtk/gtkwindow.c: docs
1200
1201         * gtk/gtkwidget.c: docs
1202         (gtk_widget_set_colormap): add a reference to the colormap
1203         (gtk_widget_get_default_colormap): add a reference to the colormap
1204
1205         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1206
1207         * gtk/gtktextiter.c: docs
1208
1209         * gtk/gtkmain.c (gtk_propagate_event): docs
1210
1211         * gtk/gtkpaned.c (gtk_paned_get_position): docs
1212         (gtk_paned_set_position): docs
1213
1214         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1215         sort interface, no implementation yet.
1216
1217         * demos/testpixbuf.c (new_testrgb_window): replace
1218         gtk_drawing_area_size() with gtk_widget_set_usize()
1219
1220         * demos/testpixbuf-drawable.c (main): ditto
1221         
1222         * gtk/testgtk.c: remove use of GtkStatusbarMsg
1223
1224         * gtk/gtktextbuffer.c: docs
1225
1226         * gtk/gtkstock.c: docs
1227
1228         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
1229
1230         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
1231
1232         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
1233         
1234         * gtk/gtkimage.c: add some docs in here
1235         (gtk_image_size_request): change name of
1236         gtk_widget_render_stock_icon
1237         (gtk_image_get_icon_set): don't dup returned string
1238         (gtk_image_get_icon_set): don't dup returned string
1239
1240         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
1241         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
1242         and gtkiconfactory.h functions
1243
1244         * gtk/gtkiconfactory.c: add some docs in here
1245
1246         * gtk/gtkmain.c (gtk_get_default_language): document
1247         (gtk_get_current_event): document
1248         (gtk_get_current_event_state): document
1249         (gtk_get_event_widget): document
1250
1251         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
1252
1253         * gtk/gtkcontainer.c: Add some documentation
1254         (gtk_container_add): give a more explanatory warning on adding an
1255         already-parented widget, this is kind of a FAQ and also a common
1256         typo that's easier to debug with a nice warning 
1257
1258         * gtk/gtkcellrenderertoggle.c
1259         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
1260         adding this, it's useless
1261         (gtk_cell_renderer_toggle_set_active): remove
1262         (gtk_cell_renderer_toggle_get_radio): add
1263
1264         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
1265         the NULL cell renderer, that doesn't make any sense to me. 
1266
1267         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
1268         demo code should never use deprecated features.
1269
1270         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
1271         code should never use deprecated features.
1272
1273         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
1274         gtk_widget_queue_clear_area deprecated
1275
1276         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
1277         deprecated
1278
1279         * gtk/gtklabel.h: mark gtk_label_get() deprecated
1280
1281         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
1282         a GdkImage deprecated, replaced by new consistently-named
1283         functions       
1284
1285         * gtk/gtkmain.h: Mark gtk_exit() deprecated
1286
1287         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
1288
1289         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
1290         deprecated
1291
1292         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
1293         so it won't appear in docs and confuse people.
1294
1295         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
1296
1297         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
1298         macros deprecated. (can't mark the type itself deprecated, since
1299         GtkProgressBar is not deprecated and we need the type decl to use
1300         GtkProgressBar)
1301
1302         * gtk/gtkpixmap.h: Mark deprecated
1303
1304         * gtk/gtkoldeditable.h: Mark deprecated
1305
1306         * gtk/gtklist.h: Mark deprecated
1307
1308         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
1309         for anything anymore.
1310
1311         * gtk/gtkctree.h: Mark deprecated
1312
1313         * gtk/gtkclist.h: Mark deprecated
1314
1315         * gtk/gtkpreview.h: Mark deprecated
1316
1317         * gtk/gtkpacker.h: Mark deprecated
1318
1319         * gtk/gtktipsquery.h: Mark deprecated
1320
1321         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1322
1323         * gtk/gtkvruler.h: Add comment that it will move out of GTK
1324
1325         * gtk/gtkhruler.h: Add comment that it will move out of GTK
1326
1327         * gtk/gtkruler.h: Add comment that it will move out of GTK
1328
1329         * gtk/gtkgamma.h: Add comment that it will move out of GTK
1330
1331         * gtk/gtkcurve.h: Add comment that it will move out of GTK
1332
1333 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
1334
1335         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1336         gdk_colormap_sync private since it was never exported
1337         in a header file.
1338
1339         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1340         colormap->colors[] for StaticGray, StaticColor colormaps.
1341
1342         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1343         was being used as if it was image->bits_per_pixel.
1344
1345         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1346         for the image in the GdkImage structure since it isn't
1347         reconstructable, and we need it to handle packed types
1348
1349         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1350         the assumption that on Win32 image->bits_per_pixel == image->depth,
1351         always.
1352
1353         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1354
1355         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1356         warning message if no converter can be found. 
1357
1358 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
1359
1360         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1361         chars to isupper() / tolower(). (#567)
1362
1363         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1364         to clear up 64-bit warnings. (#567)
1365
1366 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
1367
1368         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1369         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1370
1371         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1372         since some people set $(libdir) separately. (#1290, David Kaelbling)
1373
1374 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
1375
1376         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1377         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1378         MAXPATHLEN, but the code here depends on a fixed value.)
1379         (#4524)
1380
1381 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
1382
1383         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1384         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1385
1386 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
1387
1388         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1389         viewable there is no way that moving the node will cause the 
1390         focus row to become not viewable, so omit check on the visibility
1391         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1392
1393 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
1394
1395         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1396         selection before inserting new text.
1397
1398 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
1399
1400         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1401         Make the sensitivity of the reparented child track that of
1402         the original parent menu item. (#34218, David Hodson)
1403
1404         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1405         the case where the current item is destroyed properly.
1406
1407         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1408         some edge cases with child-less menuitems.
1409         
1410 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
1411
1412         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1413         key pop down window. (#12074, Jon K Hellan)
1414
1415 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
1416
1417         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1418         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
1419         The solution here isn't perfect - you get an extraneous
1420         emission of "toggle", which could conceivably confuse an app,
1421         but better than the current situation. LXR search seems to
1422         indicate that no apps in GNOME CVS connect to "toggle".
1423
1424 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
1425
1426         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1427         gtk_public_h_sources to directly here to avoid warning when
1428         building srcdir != builddir. (#9656)
1429
1430 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
1431
1432         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1433         handlers in gtkrange.c return the proper values (TRUE == handled)
1434         (#10316).
1435
1436         This is just the tip of the iceberg, but gtkrange.c is the
1437         most common place where the propagation is problematical,
1438         and also a place where it is almost certainly safe to change
1439         this in the stable branch.
1440
1441         (You don't want right click popups on a range control or anything...)
1442
1443 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
1444
1445         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1446         area on focus out, even if a background pixmap isn't set.
1447         (#13941)
1448         
1449 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
1450
1451         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1452         to deal with setting the shape properly when scrolling arrows are
1453         turned on, but not visible because there is sufficient space.
1454         (#13432)
1455
1456 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
1457
1458         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1459         items with submenus, destroy the item along with the submenu.
1460         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
1461         properly.
1462
1463         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1464         later.
1465
1466 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
1467
1468         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1469         the focus widget sometimes wasn't drawn with the default if there
1470         was no default widget.
1471
1472         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1473         unreference pixmaps. 
1474
1475         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1476         for some extra safety.
1477
1478 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
1479
1480         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1481         the text of a cell to the old pointer value better, by
1482         copying the new text before freeing the old text. Some code
1483         cleanup. (#8079, Karl Nelson)
1484
1485 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
1486
1487         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1488         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1489
1490 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
1491
1492         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1493         item from a menu, check to see if it matches 
1494         menu->old_active_menu_item, and if so, unref and clear
1495         old_active_menu_item (Patch from Pavel Cisler)
1496
1497         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
1498         menu_shell->active_menu_item, if it is the child being
1499         removed. (Patch based on that of Gene Ragan, #50337)
1500
1501 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
1502
1503         * gdk/linux-fb/gdkselection-fb.c: 
1504         * gdk/linux-fb/gdkcolor-fb.c: 
1505         * gdk/linux-fb/gdkdrawable-fb2.c: 
1506         * gdk/linux-fb/gdkfont-fb.c: 
1507         * gdk/linux-fb/gdkim-fb.c: 
1508         * gdk/linux-fb/gdkinput.c: 
1509         * gdk/linux-fb/gdkkeyboard-fb.c: 
1510         * gdk/linux-fb/gdkmain-fb.c: 
1511         * gdk/linux-fb/gdkrender-fb.c: 
1512         A bunch of whitespace cleanup.
1513         
1514 2001-01-30  Havoc Pennington  <hp@pobox.com>
1515
1516         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
1517         #ifdef GTK_ENABLE_BROKEN.
1518
1519         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1520         GTK_ENABLE_BROKEN just before including the broken headers.
1521         
1522         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1523         deprecated types registered.
1524
1525         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1526         we have to test the broken stuff.
1527
1528         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1529         
1530 2001-01-30  Havoc Pennington  <hp@redhat.com>
1531
1532         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1533         here where prev pointer was set to the wrong thing
1534
1535         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1536         (gtk_tree_path_is_descendant): new function
1537
1538         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1539         cached length
1540         (gtk_list_store_get_iter): don't modify iter if we can't get the
1541         path.
1542
1543         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1544         
1545         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1546         GtkTreeDragDest
1547
1548         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
1549         was causing segfault
1550
1551         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
1552         pointer to NULL
1553
1554         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
1555
1556         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
1557         on returning FALSE
1558         (gtk_list_store_iter_children): ditto
1559         (gtk_list_store_iter_nth_child): ditto
1560         (gtk_list_store_iter_nth_child): ditto
1561         (gtk_list_store_iter_parent): ditto
1562
1563         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
1564         on iter->user_data != NULL instead of silently accepting it.
1565         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
1566         we are returning TRUE.
1567         (gtk_tree_store_iter_children): ditto
1568         (gtk_tree_store_iter_nth_child): ditto
1569         (gtk_tree_store_iter_parent): ditto
1570         (gtk_tree_store_insert): remove handling of parent->user_data ==
1571         NULL, replace with parent == NULL       
1572
1573         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
1574         and a comment explaining things
1575
1576         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
1577         interface support to GtkTreeStore.
1578
1579         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
1580         FALSE if no prev, fix
1581
1582         * gtk/gtktreeview.c (set_source_row): use a row reference
1583         (set_dest_row): use a row reference
1584
1585 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
1586
1587         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
1588         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
1589         (gtk_tree_selection_select_iter): The same as above.
1590
1591 2001-01-26  Havoc Pennington  <hp@redhat.com>
1592
1593         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
1594         which holds a handle to a specific row (particular set of values
1595         in the model, i.e. pointer-identity row).
1596
1597         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
1598         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
1599         Still need to use it for the src/dest row saved on the drag context.
1600
1601 2001-01-26  Havoc Pennington  <hp@redhat.com>
1602
1603         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
1604
1605         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
1606         not offset by TREE_VIEW_HEADER_HEIGHT
1607         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
1608         TREE_VIEW_HEADER_HEIGHT
1609
1610         * configure.in (included_loaders): for me, --with-included-loaders
1611         generates the error "the specified loader yes does not exist",
1612         i.e. the arg defaults to "yes", so change test for value ""
1613         to test for value "yes", and include all loaders in that case.
1614
1615         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
1616
1617         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
1618         handle TREE_VIEW_VERTICAL_SEPARATOR
1619         (gtk_tree_view_bin_expose): fix to consider the row offset as
1620         pointing halfway into vertical separator.       
1621         (gtk_tree_view_draw_node_focus_rect): ditto
1622
1623         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1624         --gtk-debug=updates, which causes gdk_window_set_debug_updates
1625         (TRUE) to be called.
1626
1627         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1628         debug mode where the invalid region is colored in on invalidate,
1629         so you can see the flicker and know whether your redraw code is 
1630         doing a good job.
1631
1632         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
1633         tree window coordinates (clip rect is in tree window coords)
1634
1635         * gtk/Makefile.am: add gtktreednd.[hc]
1636
1637         * gtk/gtkliststore.c: implement gtktreednd interfaces.
1638
1639         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1640         drag-and-drop data operations on a model (so we can set up tree
1641         drag-and-drop automatically)
1642
1643         * gtk/testgtk.c: Add a window to change sensitivity in the
1644         GtkLabel test; add a way to change the entry frame in GtkEntry
1645         test
1646
1647         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
1648         (gtk_entry_get_has_frame): new functions to remove the frame
1649         around an entry
1650         (gtk_entry_size_request): shrink requisition if no frame
1651         (gtk_entry_draw_focus): don't draw frame if no frame
1652
1653         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1654         checks inside a cell renderer
1655         (gtk_default_draw_option): ditto for options
1656
1657         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1658         children from the alignment, not the button
1659         (gtk_tree_view_column_init): ref/sink the column, to emulate
1660         GObject refcounting.
1661
1662         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1663         
1664         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1665         Use theme functions to draw the toggles 
1666
1667         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1668
1669         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1670         GdkPangoAttrEmbossed to use in rendering insensitive text
1671
1672         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1673
1674         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1675         using new GDK features
1676         
1677 2001-01-24  Alexander Larsson  <alexl@redhat.com>
1678
1679         * gtk/gtkimage.c:
1680         Splitted gtk_image_clear into gtk_image_clear() and
1681         gtk_image_reset(). Call gtk_image_clear() in ::destroy
1682         to avoid leaks.
1683
1684         * gtk/gtklabel.c (set_markup):
1685         Don't leak text.
1686
1687         * gtk/gtktextlayout.c:
1688         Always free display->shaped_objects.
1689
1690         * gtk/testgtk.c (create_clist):
1691         Don't leak custom style.
1692
1693 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1694
1695         * gtk/gtkcolorsel.c (grab_color_at_mouse):
1696         Don't leak image. Simplify using gdk_colormap_query_color().
1697         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1698
1699         * linux-fb/gdkcolor-fb.c:
1700         Implemented gdk_colormap_query_color.
1701
1702 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1703
1704         * linux-fb/gdkcursor-fb.c:
1705         Don't leak built-in cursors.
1706
1707         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1708         Don't leak tmp_points.
1709
1710         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1711         Don't modify desc. Don't leak font if the PangoFont
1712         isn't found.
1713         
1714         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1715         Free dash_list.
1716
1717         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1718         Don't leak string.
1719         
1720 2001-01-20  Havoc Pennington  <hp@pobox.com>
1721
1722         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1723         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
1724         me, matches Pango
1725
1726 2001-01-22  Havoc Pennington  <hp@redhat.com>
1727
1728         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1729
1730         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1731
1732         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
1733         Remove, move back to gdk-pixbuf
1734
1735         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1736         to all the word functions
1737
1738         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1739         before doing anything on NULL layout or if we don't have the focus
1740
1741         * gtk/testtext.c (fill_example_buffer): "justification"
1742
1743         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1744         to be called "justification" not "justify"
1745
1746         * demos/gtk-demo/textview.c (create_tags): "justification"
1747         
1748         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1749
1750 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1751
1752         * gdk/gdkwindow.c (gdk_window_invalidate_region):
1753         Don't leak visible_region. Use visible_region instead of region.
1754         
1755         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1756         Don't do extra gdk_drawable_ref(). This is not X.
1757         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1758         gdk_fb_focused_window is ref:ed.
1759         (gdk_fb_window_send_crossing_events): Watch out for destroyed
1760         windows.
1761
1762 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1763
1764         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1765         Don't leak the PangoFontDescriptor.
1766
1767 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
1768
1769         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1770         when not realized.
1771         (gtk_tree_view_scroll_to_cell): Make work when not realized.
1772         (gtk_tree_view_realize): add scroll_to support
1773         (gtk_tree_view_finalize): add a finalize method.  Populate.
1774         (gtk_tree_view_insert_column): ref and sink the column.
1775         (gtk_tree_view_append_column): ref and sink the column.
1776         (gtk_tree_view_queue_draw_node): New function to handle redrawing
1777         individual nodes.  Should make the code much more efficient, if
1778         actually used.
1779
1780 2001-01-19  Havoc Pennington  <hp@redhat.com>
1781
1782         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1783         byte_offset variable was being used to mean both "offset into
1784         layout" and "offset into buffer line" which was no longer true
1785         with addition of preedit string; fix
1786
1787 2001-01-19  Havoc Pennington  <hp@redhat.com>
1788
1789         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1790
1791         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1792         function
1793
1794         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1795         implement
1796
1797         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1798         scroll_to_cell, matches TextView scroll functions better
1799         (gtk_tree_view_tree_to_widget_coords): new function
1800         (gtk_tree_view_widget_to_tree_coords): new function
1801         (gtk_tree_view_get_visible_rect): new function
1802         (gtk_tree_view_get_path_at_pos): accept negative coordinates
1803         (gtk_tree_view_draw_node_focus_rect): new function moved from
1804         draw_focus, also, use width of bin_window as width of the focus
1805         rect
1806         (gtk_tree_view_expand_row): fix bug where it didn't recognize
1807         already-expanded rows
1808         (gtk_tree_view_get_cell_rect): new function
1809         (gtk_tree_view_get_path_at_pos): return the click position
1810         relative to the passed-in cell
1811         (gtk_tree_view_set_expander_column): new function
1812
1813         * configure.in: remove gtk-config-2.0 chmod
1814
1815         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1816         and properly handle drags with targets we don't understand
1817         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1818         scrolling anyway
1819         (gtk_text_view_drag_drop): stop scrolling here though, and set the
1820         mark invisible
1821
1822         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1823         function
1824         (gtk_drag_dest_get_target_list): new function
1825         (gtk_drag_dest_set_target_list): new function
1826         
1827         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1828
1829         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1830         related to drag-and-drop
1831
1832 2001-01-19  Alexander Larsson  <alexl@redhat.com>
1833
1834         * gdk/linux-fb/gdkprivate-fb.h:
1835         Define EMULATE_GDKFONT.
1836         Add extra pango_font stuff to GfkFontPrivate.
1837         
1838         * gdk/linux-fb/gdkdrawable-fb2.c:
1839         * gdk/linux-fb/gdkfont-fb.c:
1840         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1841         emulation using PangoFont.
1842
1843 2001-01-17  Havoc Pennington  <hp@pobox.com>
1844
1845         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1846         all the non-deprecated set_foo functions. Added missing object
1847         properties, and added g_object_notify() to setters. 
1848         Wrote docs.
1849         
1850 2001-01-18  Tor Lillqvist  <tml@iki.fi>
1851
1852         * gtk/gtkmain.c
1853         * gtk/gtkrc.c: (Win32) Use the new
1854         g_win32_get_package_installation_(sub)directory() functions.
1855
1856         * config.h.win32.in: New file.
1857         
1858         * config.h.win32: Removed.
1859
1860         * configure.in: Output config.h.win32.
1861
1862         * Makefile.am: Add it to EXTRA_DIST.
1863
1864         * gtk/gtk.def: Update.
1865
1866 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
1867
1868         * gtk/gtklabel.c (gtk_label_size_request): Set the
1869         attributes onto the PangoLayout even if they are newly
1870         created from label->pattern.
1871
1872 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
1873
1874         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1875
1876         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1877         structures in functions. Fixes bug where gtk_dataset_*
1878         was accidentally still being used in one place, causing
1879         every dest side event to be treated independently.
1880
1881         * gtk/gtkdnd.c: Remove last vestages of handling
1882         ::draw (fixes warning)
1883         
1884         * gtk/gtkentry.[ch]: Add drag and drop support.
1885
1886         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1887         new function gtk_check_drag_threshhold() for checking
1888         to check if (dx,dy) has exceeded the threshhold for starting
1889         a drag and use it everywhere.
1890
1891 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
1892
1893         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1894         add -I{includedir}/gtk-2.0.
1895
1896         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1897         gdk/gdk-pixbuf.h: Doc fixups.
1898         
1899         * gtk/gtkobject.h: Remove trailing , from enum
1900
1901 2001-01-17 Alexander Larsson <alexl@redhat.com> 
1902
1903         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1904         Doh! Mixed up x and y.
1905
1906         * gdk/linux-fb/gdkglobals-fb.c:
1907         Removed gdk_fb_pointer_grab_window_events,
1908         added _gdk_fb_pointer_grab_owner_events and
1909         _gdk_fb_keyboard_grab_owner_events.
1910
1911         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1912         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1913         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1914         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1915         Send crossing events after ungrab finished.
1916         (gdk_keyboard_grab): Set ..._owner_events
1917         (type_masks): Move out of function.
1918         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1919         gdk_fb_keyboard_event_window): New functions, return the
1920         window an event should be targeted at. Handles grabs and
1921         event propagation. Can return NULL.
1922         (gdk_event_make): Remove event_mask checking. Now always
1923         returns an event.
1924                 
1925         * gdk/linux-fb/gdkkeyboard-fb.c:
1926         * gdk/linux-fb/gdkproperty-fb.c:
1927         * gdk/linux-fb/gdkselection-fb.c:
1928         Use new event_window/gdk_event_make() behaviour.
1929         
1930         * gdk/linux-fb/gdkmouse-fb.c:
1931         Use new event_window/gdk_event_make() behaviour.
1932         Only send motion events if in the same window.
1933         If grabbed, use cursor from window if sibling of grabbed
1934         window, and cursor from grabbed window otherwise.
1935
1936         * gdk/linux-fb/gdkprivate-fb.h:
1937         Update gdk_fb_window_send_crossing_events, gdk_event_make
1938         and grab varaible declarations. Add gdk_fb_*_event_window().
1939
1940         * gdk/linux-fb/gdkwindow-fb.c:
1941         Use new event_window/gdk_event_make() behaviour.
1942         Keep correct track of focus window.
1943         (gdk_window_set_events): Set all specific button motion masks
1944         if GDK_BUTTON_MOTION_MASK set.
1945
1946         * gtk/gtkdnd.c (gtk_drag_update):
1947         Free info->last_event if gdk_drag_motion returned FALSE.
1948
1949 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1950
1951         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1952         Eliminate redraws when input-only windows are shown or
1953         hidden. Thanks to jpe@archaeopteryx.com.
1954
1955 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
1956
1957         * docs/faq/gtk-faq.sgml: FAQ update:
1958           - Update to bugzilla
1959           - Add GTK+ and security/SUID/SGID
1960           - Add DnD question
1961
1962 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
1963
1964         * gdk/linux-fb/gdkdnd-fb.c:
1965         Some cleanups.
1966         
1967 2001-01-15  Havoc Pennington  <hp@pobox.com>
1968
1969         * tests/testtreeview.c: add test stuff for CellRendererToggle
1970
1971         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1972         accessor
1973
1974         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1975         only toggle on button press (would do release like GtkButton, but
1976         we'd need implicit grab code for treeview cells)
1977
1978 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1979
1980         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1981
1982         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1983         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1984
1985         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1986         to g_{locale,filename}_{to,from}_utf8 to match current API.
1987
1988         * gtk/makefile.msc.in (gtk_OBJECTS)
1989         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1990
1991         * gtk/gtk.def: Update.
1992
1993 2001-01-15  Tor Lillqvist  <tml@iki.fi>
1994
1995         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1996         implementaion that more closely mimics the events that an X server
1997         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1998         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1999         with nested preview widgets, for instance, more responsive when
2000         you move the mouse quickly into them.
2001         (find_window_for_pointer_event): Make it actually compile.
2002         (gdk_event_translate): Set send_event to the value of
2003         InSendMessage (). This doesn't really mean the same as X11's
2004         send_event flag, but is close enough, says jpe@archaeopteryx.com
2005
2006 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2007
2008         * gdk/linux-fb/gdkdnd-fb.c:
2009         Implemented drag and drop.
2010         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
2011         when it tries to free and then copy the same event (info->last_event).
2012         I am not sure about why this happens, but will continue looking.
2013
2014 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2015
2016         * gdk/linux-fb/gdkwindow-fb.c:
2017         Use gdk_window_invalidate_rect instead of
2018         gdk_window_invalidate_rect_clear to minimise flashing.
2019         When hiding windows you need to clear the root window though.
2020
2021 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2022
2023         * gdk/linux-fb/gdkdrawable-fb2.c:
2024         For optization, add an full_shapes argument to gdk_fb_clip_region.
2025         If this is false, only the cliprects of the shapes are used.
2026
2027         * gdk/linux-fb/gdkprivate-fb.h:
2028         Export gdk_fb_window_peek_shape.
2029         Add full_shapes to gdk_fb_clip_region.
2030
2031         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2032         When moving a window, don't clear everything under the it, just the
2033         root window. Makes stuff faster and flash less.
2034         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
2035         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
2036         offset of the shape.
2037         
2038
2039 2001-01-12  Havoc Pennington  <hp@redhat.com>
2040
2041         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
2042         current invalid region, fixes redraw bug while scrolling the 
2043         text widget
2044
2045         * gtk/gtktextview.c, gtk/gtktextview.h:
2046         Rearrange the scrolling/validation/etc. code in a major way, 
2047         so it seems to make sense to me. Probably isn't genuinely that
2048         much better, but...
2049
2050         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
2051         notifies
2052
2053         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2054
2055 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
2056
2057         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
2058         Hide mouse pointer while rotation. Show it afterwards.
2059
2060 2001-01-12  Alexander Larsson  <alexl@redhat.com>
2061
2062         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
2063         windows in consideration when generating clip region.
2064
2065         * gdk/linux-fb/gdkfb.h:
2066         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
2067
2068         * gdk/linux-fb/gdkprivate-fb.h:
2069         Add shape to GdkWindowFBDatat.
2070         exported gdk_fb_window_get_abs_shape().
2071         removed gdk_fb_draw_lines declaration.
2072
2073         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
2074         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
2075         send focus changes when there is a grabbed window.
2076         (gdk_window_get_pointer): Handle shaped windows.
2077         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
2078         (gdk_fb_window_peek_shape): Returns the shape for a window,
2079         handles GDK_FB_USE_CHILD_SHAPE.
2080         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
2081         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
2082         (gdk_window_shape_combine_mask): Implement.
2083
2084         * gtk/gtkwindow-decorate.c:
2085         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
2086         setting the shape of a window makes the window transparent.
2087
2088 2001-01-11  Havoc Pennington  <hp@redhat.com>
2089
2090         * gtk/gtktreemodelsimple.h: Oops, broke some macros
2091
2092 2001-01-10  Havoc Pennington  <hp@redhat.com>
2093
2094         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
2095         add this function, bug 40251
2096
2097         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
2098         of type macro   
2099
2100 2001-01-11  Alexander Larsson  <alexl@redhat.com>
2101
2102         * acconfig.h:
2103         Added ENABLE_SHADOW_FB
2104
2105         * configure.in:
2106         Added --disable-shadowfb
2107
2108         * gdk/linux-fb/gdkcursor-fb.c:
2109         Update shadowfb when updating cursor
2110
2111         * gdk/linux-fb/gdkdrawable-fb2.c:
2112         Added wrappers for shadowfb that calls  the normal drawable
2113         methods, but calls gdk_shadow_fb_update(bounding box) when
2114         GdkWindows are drawed to.
2115         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
2116         which also returns the bounding box.
2117
2118         * gdk/linux-fb/gdkfb.h:
2119         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
2120
2121         * gdk/linux-fb/gdkgeometry-fb.c:
2122         Update shadowfb when scrolling window.
2123
2124         * gdk/linux-fb/gdkglobals-fb.c:
2125         Add _gdk_fb_screen_angle.
2126         
2127         * gdk/linux-fb/gdkkeyboard-fb.c:
2128         Test code for screen rotation. Shift-F2 in the xlate driver
2129         rotates the screen.
2130
2131         * gdk/linux-fb/gdkmain-fb.c:
2132         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
2133
2134         * gdk/linux-fb/gdkmouse-fb.c:
2135         Use fb_width/height instead of modeinfo.xres/yres.
2136
2137         * gdk/linux-fb/gdkprivate-fb.h:
2138         Added fb_men, fb_width, fb_height & fb_stride. When using
2139         shadow fb these can differ from the framebuffer stuff.
2140         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
2141         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
2142         _gdk_fb_screen_angle. Removed CM, RP.
2143
2144         * gdk/linux-fb/gdkrender-fb.c:
2145         Added code for shadowfb handling and screen rotation using
2146         shadowfb.
2147
2148         * gdk/linux-fb/gdkwindow-fb.c:
2149         Use fb_mem, fb_stride, fb_width, fb_height.
2150         Added recompute_rowstride to reset the rowstride of all windows.
2151         Added gdk_fb_recompute_all() which recomputes rootwindow size,
2152         window abs positions and window rowstrides. Usefull when the
2153         rotation has changed.
2154
2155 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2156
2157         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2158
2159 2001-01-10  Havoc Pennington  <hp@redhat.com>
2160
2161         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2162         where sibling == iter
2163         (gtk_tree_store_insert_after): handle sibling == iter
2164         (gtk_tree_store_prepend): remove stamp checks
2165         (gtk_tree_store_insert_before): ditto
2166         (gtk_tree_store_append): ditto
2167         (gtk_tree_store_get_path): ditto
2168         (gtk_tree_store_get_value): ditto
2169         (gtk_tree_store_iter_has_child): ditto
2170         (gtk_tree_store_iter_n_children): ditto
2171         (gtk_tree_store_iter_nth_child): ditto
2172         (gtk_tree_store_insert_after): ditto
2173         (gtk_tree_store_is_ancestor): ditto
2174         (gtk_tree_store_iter_depth): ditto
2175         (gtk_tree_store_insert_before): assert that sibling's parent is
2176         the same as the passed-in parent
2177         (gtk_tree_store_insert_after): assert that sibling's parent is
2178         the same as the passed-in parent
2179
2180         
2181         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2182         function to get the first iterator in a model
2183         
2184         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2185         conventionally the "root" in this sense is just NULL afaict.
2186
2187         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2188         where sibling == iter
2189         (gtk_list_store_insert_after): handle case where sibling == iter
2190
2191         * tests/testtreeview.c (run_automated_tests): fairly lame basic
2192         automated tests for ListStore, TreeStore
2193
2194         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2195         (gtk_list_store_insert): update tail pointer, and fix it to work
2196         (gtk_list_store_insert_before): update tail pointer, and fix it to work
2197         (gtk_list_store_append): use tail to be faster
2198         (gtk_list_store_prepend): fix it, update tail pointer
2199         (gtk_list_store_insert_after): fix it, update tail pointer
2200
2201         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
2202         the list
2203
2204 2001-01-09  Havoc Pennington  <hp@redhat.com>
2205
2206         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2207         is NULL due to a pending resize
2208
2209         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2210         column width to values less than 1
2211
2212         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2213         width to be between min/max width, and still set the width 
2214         even if autosize is turned on, so the tree view can use this 
2215         function in order to autosize.
2216         (gtk_tree_view_column_init): set initial width to 1 not 0
2217
2218         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
2219         setter function to modify column width, so we get notification
2220         (gtk_tree_view_insert_iter_height): ditto
2221         (gtk_tree_view_calc_size): ditto
2222         (gtk_tree_view_check_dirty): ditto
2223
2224         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
2225         properties to change all the interesting attributes of the tree
2226         view column.
2227         (gtk_tree_view_column_set_header_clickable): rename set_clickable
2228         (gtk_tree_view_column_get_clickable): add
2229         (gtk_tree_view_column_set_cell_renderer): don't unset the current
2230         attributes; assume a cell renderer with equivalent object
2231         properties has been swapped in. Do g_object_notify().
2232         (gtk_tree_view_column_set_visible): g_object_notify
2233         (gtk_tree_view_column_get_sizing): rename from get_col_type
2234         (gtk_tree_view_column_set_sizing): g_object_notify
2235         (gtk_tree_view_column_set_width): add g_object_notify
2236         (gtk_tree_view_column_set_min_width): ditto
2237         (gtk_tree_view_column_set_max_width): ditto
2238         (gtk_tree_view_column_set_title): ditto
2239         (gtk_tree_view_column_set_clickable): ditto
2240         (gtk_tree_view_column_set_widget): ditto
2241         (gtk_tree_view_column_set_justification): ditto
2242
2243 2001-01-09  Havoc Pennington  <hp@redhat.com>
2244
2245         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
2246         there are no rows in the model
2247
2248         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
2249         NULL, then return the start of the list
2250
2251         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
2252         if we can't get any rows from an empty model 
2253
2254         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
2255         extraneous * after function pointer typedef usage
2256
2257         * Makefile.am: don't specify full path to cp and rm
2258
2259         * gtk/gtkcellrenderertextpixbuf.c
2260         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
2261         NULL before dereferencing, fixes a segfault that happened from
2262         time to time
2263
2264         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
2265         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
2266         and reindent the function
2267         (gtk_cell_renderer_pixbuf_get_size): indentation
2268
2269         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
2270         we quit it
2271         (gtk_dialog_add_buttons_valist): add g_return_if_fail
2272         (gtk_dialog_set_default_response): New function, to set default
2273         button
2274         (gtk_dialog_set_response_sensitive): New function, to set 
2275         sensitivity of buttons
2276
2277         * gtk/gtkcellrendererpixbuf.c
2278         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
2279         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
2280
2281         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2282         handle any G_TYPE_OBJECT subclass, not just the base class, and 
2283         also boxed types.
2284         (_gtk_tree_data_list_value_to_node): ditto
2285
2286         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
2287         --gtk-debug=tree
2288
2289         * gtk/gtkmain.c: add GTK_DEBUG_TREE
2290
2291         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
2292
2293 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2294
2295         * gdk/win32/gdkevents-win32.c: Implement better mouse
2296         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
2297         (find_window_for_pointer_event): New function.
2298         (gdk_event_translate): Use it when handling mouse events.
2299
2300 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
2301
2302         * configure.in:
2303         Added --with-included-loaders option
2304
2305         * gdk-pixbuf/Makefile.am:
2306         * gdk-pixbuf/gdk-pixbuf-io.c:
2307         Add support for including selected gdk-pixbuf loaders only.
2308
2309         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2310         gtk_window_set_has_frame):
2311         Added inline documentation.
2312
2313         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2314         * docs/reference/gdk/tmpl/windows.sgml:
2315         Added inline documentation.
2316
2317 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
2318
2319         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2320         realizing buttons that have already been realized.
2321
2322 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
2323
2324         * tests/testtreeview.c (main): Show menu items before adding to
2325         option menu.
2326
2327         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2328         around if we kill them.
2329
2330         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2331         Return if we pass in a NULL model.
2332
2333 2001-01-08  Havoc Pennington  <hp@redhat.com>
2334
2335         * tests/testtreeview.c: hack on this some
2336
2337         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2338         gtk_tree_store_set_valist, v is for arrays, valist for varargs
2339         list
2340         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2341
2342         * gtk/gtkliststore.h: Add varargs set() and get() convenience
2343         functions
2344
2345 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2346
2347         * gtk/gtkwindow-decorate.[hc]:
2348         * gtk/Makefile.am:
2349         New files. Contains an implementation of a minimal WM for
2350         linux-fb.
2351
2352         * gtk/gtkwindow.h:
2353         Add the possibility for GtkWindows to specify a frame. This
2354         is used for the window decoration code, but could concievably
2355         be used for X programs too (xmms style windows).
2356         GtkWindow->frame is the toplevel window if the window is framed.
2357         The signal frame_event gets all events that are targeted to
2358         GtkWindow->frame.
2359         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2360         
2361         * gtk/gtkwindow.c:
2362         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2363         Call out to gtkwindow-decorate.c for WM support in linx-fb.
2364
2365 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2366
2367         * docs/README.linux-fb:
2368         Correct filename ~/.pangoft2_aliases
2369
2370         * gdk/gdkwindow.h:
2371         Added new function gdk_window_get_decorations.
2372
2373         * gdk/linux-fb/gdkfb.h:
2374         Removed _gdk_window_get_decorations declaration.
2375         Renamed _gdk_window_set_child_handler to
2376         gdk_fb_window_set_child_handler.
2377
2378         * gdk/linux-fb/gdkwindow-fb.c:
2379         Renamed _gdk_window_set_child_handler to
2380         gdk_fb_window_set_child_handler.
2381
2382         * gdk/x11/gdkwindow-x11.c:
2383         New function gdk_window_get_mwm_hints().
2384         Implemented gdk_window_get_decorations.
2385
2386         * docs/reference/gdk/tmpl/windows.sgml:
2387         * docs/reference/gdk/gdk-sections.txt:
2388         Added gdk_window_get_decorations docs.
2389         
2390 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
2391
2392         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2393         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2394         gdk_fb_window_send_crossing_events):
2395         Possibly send focus events when the mouse moves from one
2396         window to another.
2397
2398 2001-01-07  Tor Lillqvist  <tml@iki.fi>
2399
2400         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2401         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2402         to match current API.
2403
2404         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2405         environment variable is set, don't call g_error when on a
2406         palettized (PseudoColor) display. Some people want to use GTK+ 
2407         in 256-colour mode even though works only partially.
2408
2409         * gdk/gdk.def
2410         * gtk/gtk.def
2411         * gtk/makefile.mingw.in: Update.
2412
2413 2001-01-05  Havoc Pennington  <hp@redhat.com>
2414
2415         * tests/testtreeview.c: hack on this a bit
2416
2417         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2418         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2419
2420         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
2421         was spelled incorrectly
2422         (GTK_IS_TREE_MODEL_SIMPLE): ditto
2423
2424         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2425         from gtk_tree_view_set_headers_active   
2426
2427         * gtk/gtktexttag.c:
2428         (gtk_text_tag_get_property): handle PROP_DIRECTION
2429         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2430         properties, bug 40235
2431
2432         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2433         forward_to_line_end
2434
2435 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
2436
2437         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2438         modules/input/gtkimcontextxim.c: Adapt to new prototypes
2439         for unicode,locale,filename conversion functions.
2440
2441 2001-01-05  Havoc Pennington  <hp@redhat.com>
2442
2443         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2444         broken if called on the first position in the buffer.
2445
2446         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2447         forward_to_delimiters to be called only if we aren't already at
2448         the delimiters.
2449
2450 2001-01-05  Havoc Pennington  <hp@redhat.com>
2451
2452         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2453
2454 2001-01-05  Alexander Larsson  <alexl@redhat.com>
2455
2456         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2457         colormap in here. Sync from X port.
2458         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2459         Sync from X port.
2460         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2461         This happens now and then, and i don't think it is a bug.
2462         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2463         != endpoint.
2464         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2465         GDK_LINE_SOLID.
2466
2467         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2468         some of the fields filled in at least.
2469
2470         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2471         miLineArcD is no more, remove it from the function definition.
2472
2473 2001-01-04  Havoc Pennington  <hp@redhat.com>
2474
2475         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2476         this
2477
2478         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2479         user_data instead of tree_node
2480
2481         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2482         TREE_VIEW_COLUMN_SIZE
2483
2484         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2485         "size" field to "width" finishes bug 40061
2486
2487         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2488         for bitfields, bug 40268
2489
2490 2001-01-04  Havoc Pennington  <hp@redhat.com>
2491
2492         Rename some stuff:
2493         
2494         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2495
2496         s/GtkModelSimple/GtkTreeModelSimple/g;
2497         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2498         s/gtk_model_simple/gtk_tree_model_simple/g;
2499         s/gtkmodelsimple/gtktreemodelsimple/g;
2500
2501         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2502
2503         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2504         s/column_set_col_type/column_set_sizing/g;
2505
2506         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2507         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2508
2509         s/GtkCellRendererType/GtkCellRendererState/g;
2510         
2511         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2512         (gtk_cell_renderer_toggle_class_init): change "state" property to
2513         "active", to match GtkToggleButton
2514         (gtk_cell_renderer_toggle_get_active): new function, bug
2515         40269
2516         (gtk_cell_renderer_toggle_set_active): new function
2517         (gtk_cell_renderer_toggle_set_property): route changes to toggle
2518         state through gtk_cell_renderer_set_active
2519
2520 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
2521
2522         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2523         temporarily until they work again.  Brought up to date with
2524         changes in the model.
2525         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2526         model.
2527
2528 2001-01-04  Havoc Pennington  <hp@redhat.com>
2529
2530         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2531         equal to the line length, then position iterator before paragraph 
2532         separators. Fixes crash reported by Mikael Hermansson when
2533         pressing left arrow from the start of a line.   
2534
2535         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2536         about byte indexes off the end
2537         (iter_set_from_char_offset): add g_error about char offsets
2538         off the end
2539
2540 2001-01-03  Havoc Pennington  <hp@redhat.com>
2541
2542         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2543
2544         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
2545         of private functions; remove inclusion of private headers.
2546
2547         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
2548         function, so we don't need private functions in gtktextdisplay.c
2549
2550         * gtk/gtktextiterprivate.h: underscore-ification
2551
2552         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
2553         to instead say "only useful to implement widgets"
2554
2555         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
2556         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
2557         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
2558
2559         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
2560         This function was completely broken
2561
2562         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
2563
2564         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
2565
2566         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
2567
2568         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
2569
2570         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
2571
2572         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
2573
2574         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
2575         gtk_paint_layout
2576
2577         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
2578         gtk_paint_layout
2579
2580         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
2581         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
2582         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
2583         which were not implemented.     
2584
2585         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
2586         insert_pixbuf signal. Rename delete_text to delete_range since it
2587         also deletes pixbufs and child anchors. This almost closes bug
2588         40245 (still need to deal with child anchors)
2589
2590         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
2591         insert_pixbuf, change signal names as appropriate, change types of
2592         signals taking marks/tags to have the specific type, not just
2593         G_TYPE_OBJECT
2594         
2595         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
2596         closes bug 40051
2597
2598         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
2599         unnecessary remove_contents() call
2600         (gtk_option_menu_class_init): add a "changed" signal, closes
2601         bug 40039
2602         (gtk_option_menu_update_contents): emit "changed" if the 
2603         active menu item changes
2604
2605         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
2606         cast to GtkObject, reported by Jonas Borgstrom
2607         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
2608         we can't do stuff with side effects in finalize. Instead, spew a
2609         warning if the loader isn't closed.
2610
2611         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
2612         colormap in here, non-X ports probably need to sync to this change
2613
2614         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
2615         assertion that colormap != NULL, you can set the colormap to NULL
2616         if you like.
2617         
2618         * Makefile.am: remove gtk-config-2.0
2619
2620         * configure.in: Use pkg-config to locate GLib. Remove
2621         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2622         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2623         Use pkg-config to locate Pango. Output correct Pango libs to
2624         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2625
2626         * Makefile.am (pkgconfig_DATA): install only target-specific pc
2627         files
2628         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2629         X11 pc files
2630
2631         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2632         unref from here
2633
2634 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
2635
2636         * configure.in:
2637         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2638
2639 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2640
2641         * gtk/gtktextlayout.c
2642         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2643         variable when moving back onto a single line.
2644
2645 2001-01-01  Havoc Pennington  <hp@redhat.com>
2646
2647         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2648
2649         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2650
2651         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2652         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2653
2654 2001-01-01  Havoc Pennington  <hp@redhat.com>
2655
2656         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2657
2658         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
2659         GtkTextAttributes
2660
2661         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
2662         #40246
2663         (gtk_text_attributes_copy_values): rename from 
2664         gtk_text_attributes_copy
2665         (gtk_text_attributes_copy): a more standard GTK copy function, 
2666         which returns a new object
2667
2668 2001-01-01  Havoc Pennington  <hp@redhat.com>
2669
2670         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2671         
2672         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2673         don't fill in tree_view->priv->selection, kind of an unexpected
2674         side effect
2675
2676         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2677         gtkintl.h
2678         
2679         * gtk/gtkcellrenderer.c: Remove definition of _ and include
2680         gtkintl.h
2681         (gtk_cell_renderer_get_property): remove calls to g_value_init
2682
2683         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2684         gtkintl.h
2685
2686         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2687         and include gtkintl.h
2688         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2689         property names
2690
2691         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2692         GtkTreeSelection
2693         (_gtk_tree_selection_new_from_with_view): rename, return
2694         GtkTreeSelection
2695         (_gtk_tree_selection_set_tree_view): rename with uscore
2696         (gtk_tree_selection_get_selected): fill in the "model" out param
2697         first, so it gets filled in even if we return at the top of the 
2698         function
2699         (gtk_tree_selection_real_select_all): add a comment and an else{}
2700         to clarify this a bit
2701         (gtk_tree_selection_real_unselect_all): add the same else{}
2702
2703         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2704         set_tree_view to have underscore prefixes, move them to the
2705         private header, fix return type of new_with_tree_view
2706         (struct _GtkTreeSelection): mark struct
2707         fields private  
2708
2709         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2710         GtkTreeModelFlags, not a guint
2711         (gtk_tree_path_prev): return gboolean not gint
2712         (gtk_tree_path_up): return gboolean not gint
2713
2714         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2715         return GtkTreeModelFlags, not a guint
2716
2717         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2718         that child model is non-null before unrefing it
2719         (g_value_int_compare_func): make this a qsort compare func, not 
2720         a boolean predicate
2721
2722         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2723         (add -umn to the end), and mark it unimplemented
2724         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
2725         I don't see what it's for - doesn't the model always sort itself?
2726         (gtk_tree_model_sort_set_compare): this had the wrong signature
2727
2728         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2729         Fix the docs to say that it destructively replaces existing
2730         attributes (previously said that it added attributes).
2731         (gtk_tree_view_column_set_visible): canonicalize bool before
2732         equality testing. Also, check for realization before
2733         hiding/showing the tree_column->window; if this window could exist
2734         before realization, then it's busted and needs fixing, we can't 
2735         create GDK resources pre-realization. Also, remove
2736         superfluous queue_resize(), since set_size() does that for us.
2737         (gtk_tree_view_column_set_col_type): check realization before 
2738         using tree_column->window
2739
2740         * gtk/gtktreedatalist.c: fix filename in copyright notice
2741
2742 2000-12-31  Havoc Pennington  <hp@pobox.com>
2743
2744         * gtk/gtktextview.c: Rearrange all the
2745         scroll-while-dragging-or-selecting code to be different, not
2746         necessarily better. ;-)
2747         (gtk_text_view_scroll_to_mark): Change this
2748         function to take within_margin as a fraction instead of a pixel
2749         value, and to take alignment arguments (indicating where to align 
2750         the mark inside the visible area)
2751         
2752         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2753         to GtkObject
2754
2755         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2756         behavior so that offsets past the end of the line are not 
2757         allowed, and an offset equal to the line length moves the iterator
2758         to the next line
2759         (gtk_text_iter_set_line_index): make parallel change
2760         (gtk_text_iter_get_bytes_in_line): add this function
2761         
2762         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2763         of byte indexes off the end of the line; byte index at the end of
2764         the line now returns FALSE and doesn't fill in the requested
2765         values, byte index past the end of the line is an error.  Also,
2766         don't allow -1 offset anymore, since its meaning is unclear.
2767
2768         This change exposes some bug in visual cursor motion, where we
2769         end up with a huge invalid byte index; needs fixing. Symptom of 
2770         bug is a crash when you hit up arrow.
2771         
2772         (_gtk_text_line_char_locate): match the change to byte_locate
2773
2774         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2775         from start of line properly. fixes bug reported by Mikael
2776         Hermansson where backspace would delete all text before the
2777         cursor.
2778
2779 2000-12-30  Tor Lillqvist  <tml@iki.fi>
2780
2781         * gdk/win32/gdkwindow-win32.c
2782         (gdk_window_impl_win32_get_visible_region): New function, as in
2783         the X11 backend.
2784         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2785         instead of duplicating the same code here.
2786
2787         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2788         GDK_COLORMAP macro.
2789
2790         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2791         destroy function.
2792         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2793         access that.
2794
2795         * gtk/gtk.def: Update.
2796
2797         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2798
2799 2000-12-30  Havoc Pennington  <hp@pobox.com>
2800
2801         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2802         colormap on input only windows, to avoid special cases all over
2803         the code for these windows.
2804
2805 2000-12-26  Tor Lillqvist  <tml@iki.fi>
2806
2807         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2808         we are on a palettized display ("PseudoColor" in X11), as the code
2809         for that doesn't work anyway, and never has.
2810
2811 2000-12-22  Alexander Larsson  <alexl@redhat.com>
2812
2813         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2814         Don't use isprint() for chars > 255.
2815
2816 2000-12-21  Havoc Pennington  <hp@redhat.com>
2817
2818         * tests/testtreeview.c: more work
2819
2820 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2821
2822         * docs/README.linux-fb:
2823         Update the docs to the new pangoft2 way.
2824
2825 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2826
2827         * configure.in:
2828         For linux-fb get the pangoft2 cflags and libs. This needs a recent
2829         pango version.
2830         Remove modules/linux-fb/Makefile.
2831
2832         * gdk/linux-fb/gdkdrawable-fb2.c:
2833         Render glyphs using freetype.
2834
2835         * gdk/linux-fb/gdkfb.h:
2836         Add new fb-specific functions needed for managing windows.
2837
2838         * gdk/linux-fb/gdkmain-fb.c:
2839         Remove gdk_font_init/fini() calls.
2840
2841         * gdk/linux-fb/gdkpango-fb.c:
2842         Remove old implementation. Use pangoft2 instead.
2843
2844         * gdk/linux-fb/gdkprivate-fb.h:
2845         Remove PangoFBFont and related stuff.
2846
2847         * gdk/linux-fb/gdkwindow-fb.c:
2848         Implement drawable->get_visible_region.
2849         Implement support for _gdk_window_set_child_handler () and
2850         _gdk_window_get_decorations().
2851
2852         * modules/Makefile.am:
2853         Remove linux-fb subdir.
2854
2855         * modules/linux-fb/*:
2856         Removed all.
2857         
2858 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
2859
2860         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2861         calls, as they are no longer needed.
2862
2863         * gtk/gtktreemodelsort.c: Fix up the comparison code.
2864         
2865         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
2866         figure out how to emit a signal on an interface.
2867
2868 2000-12-20  Havoc Pennington  <hp@redhat.com>
2869
2870         * tests: new directory to contain tests, gtk/test* should move
2871         here sometime (with appropriate on-cvs-server hackery)
2872
2873         * tests/testtreeview.c, tests/Makefile.am: a test
2874         
2875         * configure.in (AC_OUTPUT): add tests/Makefile
2876
2877         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2878         and "invisible_set" which were missing
2879
2880         * gtk/gtkrbtree.h: some cheesy indentation fix
2881         
2882 2000-12-20  Alexander Larsson  <alexl@redhat.com>
2883
2884         * gtk/gtkinvisible.c (gtk_invisible_realize):
2885         Attach the style to the window so that the style it is not
2886         leaked when unrealizing the window.
2887
2888 2000-12-18  Havoc Pennington  <hp@redhat.com>
2889
2890         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2891         begin/end user action where appropriate
2892         (gtk_text_view_commit_handler): add begin/end user action
2893
2894         * gtk/gtktextbuffer.c: add begin/end user action signals, and
2895         bracket interactive operations with begin/end user action pair.
2896         
2897         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2898         "interactive" arg from insert_text and delete_text signals.
2899         Add begin_user_action, end_user_action signals
2900         (gtk_text_buffer_begin_user_action): 
2901         (gtk_text_buffer_end_user_action): New functions to delimit 
2902         a user-visible action
2903
2904         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2905         signals.
2906         
2907 2000-12-18  Havoc Pennington  <hp@redhat.com>
2908
2909         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2910         was pretty non-working.
2911
2912         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2913         by passing the length to g_utf8_validate().
2914
2915 2000-12-16  Havoc Pennington  <hp@pobox.com>
2916
2917         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
2918         Port to GObject, can go back in gdk-pixbuf after setting up 
2919         a gdk-pixbuf-marshal.h header over there.
2920
2921         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2922         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2923         args
2924         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2925         set
2926         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2927         here, do it when we create the buttons later
2928         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
2929         (gtk_tree_view_map): paranoia checks that column->button is shown 
2930         and unmapped
2931         (gtk_tree_view_size_request): only request visible children.
2932         Move header size calculation in here, for cleanliness, and 
2933         to maintain invariants for child widgets if we eventually 
2934         let users set different children inside the buttons
2935         (gtk_tree_view_map_buttons): factor out code to map buttons,
2936         since it was being called several times
2937         (gtk_tree_view_size_allocate_buttons): move_resize the drag
2938         windows instead of just moving them; their height may change 
2939         if we allow random widgets in there, or the theme changes.
2940         (gtk_tree_view_size_allocate): move button size allocation 
2941         above emitting the scroll signals, to ensure a sane state when we
2942         hit user code
2943         (gtk_tree_view_button_release): remove queue_resize after
2944         tree_view_set_size(), set_size() will handle any resize queuing
2945         that's needed
2946         (gtk_tree_view_focus_in): just queue a draw, don't fool with
2947         draw_focus goo
2948         (gtk_tree_view_focus): use gtk_get_current_event() and
2949         gdk_event_get_state()
2950         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2951         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2952         semicolon
2953         (gtk_tree_view_create_button): show the button here
2954         (gtk_tree_view_button_clicked): actually emit the clicked signal
2955         on the column
2956         (_gtk_tree_view_set_size): return right away if the size is
2957         unchanged, as a cheesy optimization
2958         (gtk_tree_view_setup_model): rename set_model_realized to 
2959         setup_model to match the flag that indicates whether we've 
2960         called it
2961         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2962         exist, because set_scroll_adjustment does that and it shouldn't
2963         matter what order you call these in
2964         (gtk_tree_view_get_vadjustment): ditto
2965         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
2966         for paranoia
2967         (gtk_tree_view_set_headers_visible): call
2968         gtk_tree_view_map_buttons() instead of using cut-and-paste code
2969         (gtk_tree_view_append_column): clarify whether the return value
2970         is the count of columns before or after, and do the increment 
2971         separately from the return statement so you can tell from the code.
2972         (gtk_tree_view_remove_column): ditto
2973         (gtk_tree_view_insert_column): ditto
2974         (gtk_tree_view_get_column): remove g_return_if_fail for columns
2975         outside the existing range, the docs say that outside-range
2976         columns are allowed, so we handle them as documented. (Presumably
2977         this allows a nice loop with column != NULL as test.)
2978         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
2979         mean (left/right/center etc.).
2980         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2981         (gtk_tree_view_expand_row): add docs
2982         (gtk_tree_view_collapse_row): add docs
2983
2984         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2985         function to emit the clicked signal on a column
2986         
2987         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2988         state of an event
2989         (gdk_event_get_time): don't treat GDK_SCROLL 
2990         as a button event, remove default case from switch so gcc 
2991         will whine if we don't explicitly handle all event types
2992
2993         * gtk/gtktreeselection.h: added some FIXME 
2994         
2995         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2996         "columns" to "n_columns" and "column" to "columns" for clarity
2997
2998 2000-12-16  Havoc Pennington  <hp@pobox.com>
2999         
3000         * gtk/gtktextiter.c: General cleanup of the log attr iteration
3001         stuff. This should make e.g. the delete key work again in the
3002         text widget...
3003         (gtk_text_iter_forward_cursor_positions): handle negative count
3004         (gtk_text_iter_backward_cursor_positions): handle negative count
3005         (gtk_text_iter_forward_word_ends): handle negative count
3006         (gtk_text_iter_backward_word_starts): handle negative count
3007
3008         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
3009         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
3010         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
3011         GObject. No doubt will cause breakage.
3012
3013         * demos/gtk-demo/textview.c: remove hacks around
3014         non-GObject-ification of the text objects
3015
3016         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
3017         the text tag
3018         
3019 2000-12-14  Havoc Pennington  <hp@pobox.com>
3020
3021         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
3022         that we have Xrender
3023
3024 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
3025
3026         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
3027         Add two virtualized functions gdk_drawable_get_clip_region - to
3028         get the clip region when drawing.
3029         
3030         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
3031         use invalidate_region.
3032
3033         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
3034         region.
3035
3036         * acconfig.h configure.in: Check for Xft. For now, assume
3037         that if Xft is found, Pango was compiled with Xft support
3038         as well.
3039
3040         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
3041         gdk_colormap_query_color().
3042         
3043         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
3044         with Xft if appropriate.
3045
3046         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
3047         a pangoxft context if we have XFT and the environment
3048         variable GD_USE_XFT is set.
3049         
3050         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
3051         and also possibly an XftDraw structure.
3052
3053         * gtk/gtkfontsel.c: Handle the case where the font from the
3054         style doesn't match any of the fonts a bit better.
3055         
3056         * gtk/testgtk.c: Add tabs between directional segments for
3057         hebrew/arabic test. (Not really necessary, just a little
3058         prettier.)
3059
3060 2000-12-14  Havoc Pennington  <hp@redhat.com>
3061
3062         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
3063         reading a file
3064
3065 2000-12-14  Havoc Pennington  <hp@redhat.com>
3066
3067         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
3068         unused call to get_last_line()
3069
3070         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
3071         here until boxed is working (and maybe after that - we should
3072         really not gratuitously break old code)
3073
3074         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
3075         specific types for font_desc and tabs args, move them to
3076         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
3077         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
3078
3079         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
3080         use GTK_TYPE_POINTER for signal signatures as a hack-around
3081
3082         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
3083         PangoTabArray
3084
3085         * gtk/gtktextlayout.c (line_display_iter_to_index): 
3086         make static
3087         (line_display_index_to_iter): make static
3088
3089         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3090         to marshal a string not a boxed
3091
3092         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
3093
3094         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
3095         since the UTF-8 isn't validated yet
3096
3097         * gtk/gtktextsegment.c (char_segment_check_func): don't require
3098         lines to end in '\n'
3099         
3100         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
3101         forward_to_delimiters, and grapheme boundaries
3102         (gtk_text_view_delete_from_cursor): properly handle non-newline
3103         delimiters, and grapheme boundaries
3104
3105         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
3106         to gtk_text_iter_forward_to_delimiters, and make it work properly
3107         if empty lines end with a character other than '\n'
3108
3109         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
3110         position
3111
3112 2000-12-15  Tor Lillqvist  <tml@iki.fi>
3113
3114         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
3115
3116         * gtk/gtk.def
3117         * gdk/gdk.def: Update.
3118
3119         * gdk/win32/gdkmain-win32.c
3120         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
3121         gdkmain-win32.c here.
3122
3123         * gdk/win32/makefile.mingw.in (all): No need to make
3124         gdk-win32res.o here, the makefile one step up will call us to make
3125         it.
3126
3127         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
3128         gdkkeys-win32.
3129
3130         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
3131
3132         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
3133         call to g_source_add().
3134
3135         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
3136         leak. Thanks to Andreas Kemnade.
3137
3138 2000-12-13  Havoc Pennington  <hp@pobox.com>
3139
3140         * gtk/gtktextbtree.h: Remove double _ in front of some functions
3141
3142         * gtk/gtktext*.[hc]: update accordingly
3143         
3144 2000-12-13  Havoc Pennington  <hp@pobox.com>
3145
3146         * gtk/gtktextbtree.h: Put _ in front of every function in this 
3147         header file
3148
3149         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
3150
3151 2000-12-13  Alex Larsson  <alexl@redhat.com>
3152
3153         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
3154         Add support for ps2 intellimouse.
3155
3156         * gdkkeyboard-fb.c:
3157         Move shift-F1 repaint handling to xlate handler only.
3158         
3159         * docs/README.linux-fb:
3160         Add imps2 to docs.
3161         Document the new refresh keys.
3162         
3163 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3164
3165         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3166
3167         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3168         ::position and ::padding.
3169
3170         * gtk/gtkcontainer.c: make ::border_width an INT property.
3171
3172         * gtk/gtkpacker.c: make ::position an INT property.
3173
3174         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3175         guard against NULL h/v scrollbars, since this is used at construction
3176         time.
3177
3178         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3179         internal gtk_clist_constructor().
3180
3181         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3182         gtk_ctree_constructor().
3183
3184         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3185         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3186
3187         * docs/reference/Makefile.am: fun stuff, disabled docs generation
3188         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3189
3190         * gtk/gtkwidget.[hc]:
3191         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3192         and gtk_widget_get().
3193         (gtk_widget_new): use g_object_new_valist().
3194         (gtk_widget_set): use g_object_set_valist().
3195
3196         * gtk/gtkobject.[hc]:
3197         removed gtk_object_arg_get_info(), gtk_object_getv(),
3198         gtk_object_query_args(), gtk_object_newv(),
3199         gtk_object_class_add_signals(),
3200         gtk_object_class_user_signal_new(),
3201         gtk_object_class_user_signal_newv(),
3202         gtk_object_arg_set(), gtk_object_arg_get(),
3203         gtk_object_args_collect(),
3204         gtk_object_default_construct(),
3205         gtk_object_constructed(),
3206         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3207         removed nsignals, signals and n_args members from GtkObjectClass.
3208         (gtk_object_new): use g_object_new_valist().
3209         (gtk_object_set): use g_object_set_valist().
3210         (gtk_object_get): use g_object_get_valist().
3211         
3212         * gtk/gtkcompat.h: define gtk_object_default_construct().
3213         
3214         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3215         g_object_new().
3216
3217         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3218         fucntions, cleaned up method assignments (make sure your structures
3219         are setup properly before calling out). removed all GTK_CONSTRUCTED
3220         hacks ;)
3221
3222 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
3223
3224         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
3225         off-by-one error in checks. (Dave Lambert)
3226
3227 2000-12-12  Alexander Larsson  <alexl@redhat.com>
3228
3229         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
3230         Don't free gdk_fb_keyboard twice.
3231
3232 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
3233
3234         * gtk/testgtk.c:
3235         (create_tooltips): 
3236         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
3237         use GObject swapped_signal:: properties instead.
3238
3239         * gtk/gtkcellrenderertoggle.c: 
3240         * gtk/gtkcellrenderertextpixbuf.c: 
3241         * gtk/gtkcellrenderertext.c: 
3242         * gtk/gtkcellrendererpixbuf.c: 
3243         * gtk/gtkcellrenderer.c:
3244         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
3245         missing warnings for invalid property ids, install properties
3246         with g_object_class_install_property() now.
3247         
3248         * gtk/gtksignal.c:
3249         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
3250         
3251 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
3252         
3253         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
3254         to determine if a window is the focus widget within
3255         its toplevel.
3256
3257         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
3258         to be boolean.
3259
3260         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
3261         of the case where the container CAN_FOCUS to here instead
3262         of having it in each individual move-the-focus place.
3263
3264         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
3265         focusing to be geometric in a much more obvious sense. Arrowing
3266         around is still non-intuitive because it isn't perfect and
3267         because entries, etc, grab the arrow keys, but it at least
3268         usually will do what you expect now.
3269         
3270         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
3271         file.
3272
3273         * gtk/gtknotebook.c: Change tabs to be a single item in
3274         the focus chain. Make movement of focus on tabs with arrow
3275         keys wrap around.
3276         
3277         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
3278         CHECK_FIND_CHILD macro to give informative error messages
3279         instead of silent returns.
3280
3281         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
3282         flag since we handle GdkReturn on the tabs.
3283
3284         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
3285         windows rather than sending expose events directly.
3286
3287         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
3288         definition for GtkNotebookPage into .c file, since it is private.
3289
3290         * gtk/testgtk.c (create_notebook): Add option for 
3291         testing borderless notebook.
3292
3293         * gtk/testgtk.c (page_switch): Removed egregious poking
3294         around in GTK+ internals.
3295
3296         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
3297
3298         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
3299         properly through gtk_clist_focus. Make the title headers a
3300         single item in the tab-focus chain, and make left-right wrap
3301         around.
3302
3303         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3304         focus method so that wrapping around works properly.
3305
3306         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
3307         that is handled for the widget now. 
3308
3309 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
3310
3311         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3312         widgets as TOPLEVEL.
3313
3314         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3315         TOPLEVEL widgets are containers.
3316
3317         * gtk/gtkinvisible.h: Remove useless include.
3318
3319 2000-12-11  Havoc Pennington  <hp@redhat.com>
3320
3321         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
3322         Handle chopping off \r\n and 0x2029 in addition to \n before
3323         passing to PangoLayout
3324
3325         * gtk/gtkimcontextsimple.c
3326         (gtk_im_context_simple_get_preedit_string): 
3327         return an empty string if no match is pending
3328
3329         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3330         assertion that the returned preedit string was sane
3331
3332         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3333         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3334         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3335
3336 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
3337
3338         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
3339         Fix up finalizer to chain to its parent.
3340
3341 2000-12-11  Alexander Larsson  <alexl@redhat.com>
3342
3343         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3344         Clearified the difference between the keyboard types. Wrote a note
3345         about the magic sysrq key to get out of raw mode.
3346
3347 2000-12-09  James Henstridge  <james@daa.com.au>
3348
3349         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3350         member to hold masks for detecting the start of a protocol packet.
3351         (mouse_devs): add packet start masks for ps2 and ms device types.
3352         Left the mask for fidmour blank, as I have no idea what it should
3353         be.
3354         (handle_mouse_io): skip bytes until we get to the start of a
3355         packet.  My Logitech mouse seems to be passing an extra NULL pad
3356         byte, and GPM does a similar thing here.
3357         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3358         this is the ms mouse driver.
3359         (gdk_fb_mouse_ms_packet): fix up button handling, which was
3360         completely broken except for button1.  It was checking the wrong
3361         bit in the packet for the status of the right mouse button, and
3362         wrongly assuming right == button2 rather than 3.  I fixed that and
3363         also added support for middle button (button2).
3364
3365 2000-12-08  Havoc Pennington  <hp@redhat.com>
3366
3367         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3368         that cause a segfault on text insertion
3369
3370         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
3371         warning
3372
3373         * gtk/gtktextiter.c (test_log_attrs): use
3374         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3375
3376         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
3377         Get log attrs for a line, using a cache stored on the buffer
3378         
3379         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3380         reported by Jeff Franks
3381
3382 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3383
3384         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3385         /dev/ttyS0 -> /dev/mouse
3386
3387 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3388
3389         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3390         Added dummy gdk_fontset_load.
3391
3392 2000-12-08  Alexander Larsson  <alexl@redhat.com>
3393
3394         * docs/README.linux-fb:
3395         * docs/Makefile.am:
3396         Initial GtkFB docs.
3397         
3398         * gdk/linux-fb/Makefile.am:
3399         Define GDK_DATA_PREFIX.
3400
3401         * gdk/linux-fb/gdkmain-fb.c:
3402         Fix typo.
3403         Change default display to /dev/fb0.
3404
3405         * gdk/linux-fb/gdkpango-fb.c:
3406         Add $(prefix)/share/fonts/ to font path.
3407         
3408 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3409
3410         * gdk/linux-fb/gdkkeyboard-fb.c:
3411         New file containing the abstracted keyboard driver. Most code
3412         taken from gdkinput-ps2.c
3413
3414         * gdk/linux-fb/gdkinput-ps2.c:
3415         Removed file.
3416         
3417         * gdk/linux-fb/Makefile.am:
3418         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3419
3420         * gdk/linux-fb/gdkcolor-fb.c:
3421         display->fb was renamed to display->fb_fd.
3422
3423         * gdk/linux-fb/gdkcursor-fb.c:
3424         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3425
3426         * gdk/linux-fb/gdkinput.c:
3427         Moved gdk_input_init here from gdkinput-ps2.c
3428
3429         * gdk/linux-fb/gdkmain-fb.c:
3430         display->fb was renamed to display->fb_fd.
3431         Now the tty and the console is opened here instead
3432         of in the keyboard driver. Also check GDK_VT to see what
3433         tty to open.
3434         Move gdk_beep () here from gdkinput-ps2.c
3435         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3436
3437         * gdk/linux-fb/gdkmouse-fb.c:
3438         Add header.
3439         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3440         Return correct keyboard modifiers.
3441         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3442
3443         * gdk/linux-fb/gdkprivate-fb.h:
3444         Add tty and vt info to display.
3445         Add orignal modeinfo storage to display
3446         Update global functions
3447
3448         * gdk/linux-fb/gdkwindow-fb.c:
3449         Added gdk_fb_window_find_focus().
3450         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3451
3452 2000-12-07  Havoc Pennington  <hp@pobox.com>
3453
3454         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
3455         function, noticed by Alex
3456
3457 2000-12-06  Elliot Lee  <sopwith@redhat.com>
3458
3459         * configure.in: Detect freetype properly
3460
3461         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3462         above.
3463
3464 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3465
3466         * gdk/linux-fb/Makefile.am:
3467         Add gdkmouse-fb.c
3468         
3469         * gdk/linux-fb/gdkmouse-fb.c:
3470         New file. Abstracted the mouse drivers a bit.
3471
3472         * gdk/linux-fb/gdkcursor-fb.c:
3473         The cursor hide/show functions was moved here from gdkinput-ps2.c.
3474
3475         * gdk/linux-fb/gdkinput-ps2.c:
3476         Removed old mouse handling code. Moved cursor handling code
3477         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3478         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3479         gdk_mouse_get_info.
3480
3481         * gdk/linux-fb/gdkmain-fb.c:
3482         Pass NULL pointers for x,y in gdk_mouse_get_info call.
3483
3484         * gdk/linux-fb/gdkprivate-fb.h:
3485         Removed public gdk_fb_find_common_ancestor, added and renamed
3486         functions for the new mouse handling code.
3487
3488         * gdk/linux-fb/gdkwindow-fb.c:
3489         Moved gdk_fb_window_send_crossing_events here. added global
3490         variable gdk_fb_window_containing_pointer. made
3491         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3492         renamed to gdk_mouse_get_info.
3493
3494 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3495
3496         * gdk/linux-fb/gdkevents-fb.c:
3497         Update to match latest gmain/gsource changes.
3498
3499         * gdk/linux-fb/gdkinput-ps2.c:
3500         Bogus gdk_keymap_get_entries_for_keycode implementation so that
3501         it links. Will be implemented later.
3502
3503 2000-12-03  Havoc Pennington  <hp@pobox.com>
3504
3505         * gdk/Makefile.am: add gdkkeys.[hc]
3506
3507         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3508         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3509
3510         * acconfig.h, configure.in: add checks and command line options
3511         for XKB
3512
3513         * gdk/x11/gdkkeys-x11.c: Implement the above functions
3514         
3515         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3516         and group in the key event
3517
3518         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3519         field with the low-level hardware key code, and a group
3520         field with the keyboard group
3521
3522         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3523         and declare a couple globals used for keymap handling
3524         
3525         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3526         hold down Shift-Control and type a hex number to get a Unicode 
3527         character corresponding to the hex number
3528         (gtk_im_context_simple_get_preedit_string): Fix cursor position
3529         (return bytes not chars)
3530
3531 2000-12-05  Elliot Lee  <sopwith@redhat.com>
3532
3533         * gdk/gdkcolor.h: Make GdkColor specify element sizes
3534         to avoid waste on 64-bit platforms.
3535
3536 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
3537
3538         * INSTALL: Fix link to PNG home, remove reference
3539         to fribidi.
3540
3541         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3542         
3543         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3544         tested.)
3545
3546         * gtk/gtkcheckmenuitem.c: Permanently turn on
3547         always_show_toggle.
3548
3549         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
3550         be NULL. (Vladimir Klebanov, #26545)
3551
3552         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
3553         some signed/unsigned comparison problems. (#6510,
3554         David Kaelbling)
3555
3556         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
3557         return type to boolean (Oskar Liljeblad, #18648)
3558
3559 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3560
3561         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
3562         Remove bogus colormap setting.
3563
3564 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3565
3566         * gdk/linux-fb/gdkcolor-fb.c:
3567         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
3568
3569         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
3570         Must set colormap.
3571         
3572 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
3573
3574         * docs/tutorial/gtk-tut.sgml: DND updates
3575
3576 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
3577
3578         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3579         Remove old debug g_warning().
3580         (gdk_fb_draw_drawable): The src argument can be either a wrapper
3581         or an implementation, just pass the implementation to draw_drawable_2.
3582         
3583         * gdk/linux-fb/gdkprivate-fb.h:
3584         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
3585
3586         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3587         clear and invalidate area when window is destroyed.
3588         (send_map_events): Remove old commented out code.
3589
3590 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3591
3592         * gdk/linux-fb/gdkpango-fb.c:
3593         Use italic instead of oblique in font aliases.
3594         
3595         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
3596         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
3597         other unsupported functions.
3598
3599 2000-12-04  Havoc Pennington  <hp@redhat.com>
3600
3601         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
3602
3603         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
3604
3605         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
3606
3607         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
3608         hack to avoid infinite loops (synthetic expose event) - 
3609         Owen has more appropriate fixes in a branch he'll check in later.
3610
3611         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
3612         separator, CR, and CRLF as line ends
3613
3614         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
3615         into lines using pango_find_paragraph_boundary(); other bits of
3616         the widget are still going to be broken if the boundary isn't '\n'
3617         though
3618
3619 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3620
3621         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3622         multiply.
3623
3624         * gdk/linux-fb/gdkpango-fb.c:
3625         Copied some 26.6 scaling macros from pango to clean up the rounding.
3626         (pango_fb_font_get_glyph_info): Correct sign on x value.
3627
3628         * gdk/linux-fb/gdkprivate-fb.h:
3629         Removed unreferenced external functions.
3630
3631         * modules/linux-fb/Makefile.am: Use ` instead of '.
3632
3633         * modules/linux-fb/basic.c:
3634         Remove dead code. In particular the dummy lang engine which broke all
3635         pango layouts in GtkFB. Don't include tables-big.i anymore.
3636
3637         * modules/linux-fb/tables-big.i:
3638         Upgrade to latest version from pango. Left for reference, basic_ranges
3639         moved to basic.c.
3640         
3641 2000-12-04  Havoc Pennington  <hp@redhat.com>
3642
3643         Fix bugs Alex found:
3644         
3645         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3646         to "draw"
3647
3648         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3649
3650         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3651
3652         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
3653         implementation in here, apparently the expose() implementation was
3654         dead code.
3655
3656 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3657
3658         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3659         Return positive descent.
3660
3661 2000-12-02  Havoc Pennington  <hp@pobox.com>
3662
3663         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3664         method and signal
3665         
3666         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3667         calls gdk_window_process_updates() to push the exposes through
3668         (gtk_widget_class_init): No more draw signal, no
3669         gtk_widget_real_draw()  
3670         
3671         * gtk/gtkbin.c (gtk_bin_draw): remove
3672
3673         * gtk/gtkbox.c (gtk_box_draw): remove
3674
3675         * gtk/gtkbutton.c (gtk_button_draw): remove
3676
3677         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3678
3679         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3680
3681         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3682
3683         * gtk/gtkclist.c (gtk_clist_draw): remove
3684
3685         * gtk/gtkentry.c (gtk_entry_draw): remove
3686
3687         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3688
3689         * gtk/gtkfixed.c (gtk_fixed_draw): remove
3690
3691         * gtk/gtkframe.c (gtk_frame_draw): remove
3692
3693         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3694
3695         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3696
3697         * gtk/gtklayout.c (gtk_layout_draw): remove
3698
3699         * gtk/gtklist.c (gtk_list_draw): remove
3700
3701         * gtk/gtklistitem.c (gtk_list_item_draw): remove
3702
3703         * gtk/gtkmenu.c (gtk_menu_draw): remove
3704
3705         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3706
3707         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3708
3709         * gtk/gtknotebook.c (gtk_notebook_draw): remove
3710
3711         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3712
3713         * gtk/gtkpacker.c (gtk_packer_draw): remove
3714
3715         * gtk/gtkrange.c (gtk_range_draw): remove
3716
3717         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3718
3719         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3720
3721         * gtk/gtktable.c (gtk_table_draw): remove
3722
3723         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3724
3725         * gtk/gtktext.c (gtk_text_draw): remove
3726
3727         * gtk/gtktextview.c (gtk_text_view_draw): remove
3728
3729         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3730
3731         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3732
3733         * gtk/gtktree.c (gtk_tree_draw): remove
3734
3735         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3736
3737         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3738
3739         * gtk/gtkviewport.c (gtk_viewport_draw): remove
3740
3741         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3742
3743         * gtk/gtkvscale.c (gtk_vscale_draw): remove
3744
3745         * gtk/gtkwindow.c (gtk_window_draw): remove
3746
3747 2000-20-01  Anders Carlsson  <andersca@gnu.org>
3748
3749         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3750         a GtkToggleButton is both insensitive and active, it was being
3751         drawn by the GtkButton draw handler which doesn't check the
3752         state. Now it's calling gtk_toggle_button_paint instead.
3753         
3754 2000-12-01  Havoc Pennington  <hp@redhat.com>
3755
3756         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3757         dangling pointers to the appearance attributes from the 
3758         line display
3759
3760         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3761         width/height to mean "full width/height of drawable"
3762
3763         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3764         click to select word/line
3765         
3766         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
3767         when getting log attrs. Get a slice, so that pixmaps and stuff
3768         are properly handled.
3769
3770         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3771         paste into the selection (replaces selection now, previously
3772         crashed or added to selection). Reveals longstanding btree bug -
3773         select multiple lines, middle-click on the selection, boom. This
3774         isn't related to my changes though.
3775
3776         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3777         PangoLogAttrs changes
3778         (gtk_entry_move_backward_word): ditto
3779
3780         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3781         functions return bool whether the iter moved onto a
3782         dereferenceable position.
3783  
3784         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3785         functions for motion in terms of display lines.
3786
3787         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3788         get the buffer a mark is inside
3789         
3790 2000-12-01  Alexander Larsson  <alexl@redhat.com>
3791
3792         * gdk/linux-fb/Makefile.am:
3793         * modules/linux-fb/Makefile.am:
3794         Freetype 2 final uses freetype-config
3795
3796         * gdk/linux-fb/gdkpango-fb.c:
3797         Upgrade to use Freetype 2 final.
3798         More flexible support for font aliases, this also fixes a bug with
3799         GtkFontSelector, as the aliases must be visible in the font/family list,
3800         or GtkFontSelector reads uninitialized memory.
3801
3802 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
3803
3804         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3805         XGetIMValues to properly terminate variable argument list, and do
3806         NULL return check for ic_values and xim_styles.
3807
3808         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3809         Restore preedit state after XmbResetIC().
3810         
3811         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3812         XvaCreateNestedList() should take XvaNestedList, but not
3813         XvaNestedList*.
3814
3815         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3816         preedit_draw_callback, preedit_caret_callback): Match
3817         "preedit-changed" signal name to "preedit_changed" to be
3818         consistent to the spec.
3819
3820         * gtk/gtkimcontextsimple.c (check_table):
3821         Match "preedit-changed" to "preedit_changed" to be consistent
3822         to the spec.
3823
3824 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
3825
3826         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3827         gc->clip_region == NULL>
3828
3829 2000-11-30  Tor Lillqvist  <tml@iki.fi>
3830
3831         Changes by Hans Breuer:
3832         
3833         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3834         Dont't use negative width and height as max_hints. This fixes
3835         Owen's recent testgtk changes for win32.
3836
3837         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3838         gdk_win32_hdc_release): These are exported and may be called with
3839         other drawable types than our GdkDrawableImplWin32 (?).
3840
3841         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3842         so always #define USE_BACKING_STORE.
3843
3844         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3845         of printf for debugging output.
3846
3847         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3848         
3849         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3850
3851         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3852         declaration.
3853
3854         * gtk/gtktexttypes.h: Ditto.
3855
3856         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3857         (GDK_VoidSymbol) also if in case of arg check failure.
3858
3859         * gtk/gtkimcontextsimple.c
3860         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3861         position to the pointer, but to the variable it points to.
3862
3863         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3864
3865         * gtk/gtk.def: Updates.
3866
3867 2000-11-29  Elliot Lee  <sopwith@redhat.com>
3868
3869         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3870         GTK_TYPE_TREE_MODEL.
3871
3872 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3873
3874         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3875         Set the size of the font from the description.
3876         (gdk_text_width): Gross hack that calculates the width
3877         of text by text_length * size/2. This is necessary because
3878         GtkLabel does some ugly gtk_string_width call to calculate
3879         an good size.
3880         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3881
3882 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
3883
3884         * docs/tutorial/gtk-tut.sgml: DND updates
3885
3886 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3887
3888         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3889         If you pass width or height == 0 to gdk_window_clear_area they
3890         should be calculated from the window size.
3891
3892 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3893
3894         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3895         a grab, but no grab-cursor, use the cursor from the grabbed
3896         window. (gdk_fb_window_send_crossing_events): Send normal
3897         enter/leave notifications if grab and owner_events == TRUE.
3898
3899 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3900
3901         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3902         Do implicit button grabs, even if the window doesn't
3903         want the event.
3904         (gdk_fb_window_send_crossing_events): If there is a
3905         grab, only the grabbed window gets normal enter/leave
3906         notifications. On ungrab go from grabbed window to current.
3907         Don't send any notification to b when propagating from c -> b.
3908         If setting a grab on window, don't set prev_window.
3909         (handle_mouse_input): Send enter/leave events to the window the
3910         mouse is over, not the grabbed one.
3911         
3912 2000-11-28  Elliot Lee  <sopwith@redhat.com>
3913
3914         * gdk/gdkregion-generic.c: Zap warning.
3915         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3916         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3917
3918 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
3919
3920         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3921         The cursor should be hidden if it is part of either the
3922         source or destination region. Not only if it is in both.
3923         (gdk_window_set_transient_for): Silence warnings.
3924
3925 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3926
3927         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3928         The default mode in X is Pie Arcs, therefore that is
3929         what Gtk+ uses.
3930
3931 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3932
3933         * gdk/linux-fb/gdkinput-ps2.c:
3934         Implement correct EnterNotify/LeaveNotify:
3935         (gdk_fb_window_send_crossing_events): New function that sends
3936         all GdkCrossingEvents from the last mouse-window to the specified
3937         destination.
3938         (gdk_fb_window_visibility_crossing): Removed function.
3939         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3940         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3941         instead of gdk_window_get_pointer() for better readability.
3942
3943         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3944         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3945
3946         * gdk/linux-fb/gdkprivate-fb.h:
3947         removed gdk_fb_window_visibility_crossing, added
3948         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3949
3950         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3951         New function that finds the least common ancestor of two windows.
3952         (gdk_window_show, gdk_window_hide):
3953         Use gdk_fb_window_send_crossing_events.
3954         (gdk_fb_window_move_resize): Send configure events to toplevel
3955         windows. Use gdk_fb_window_send_crossing_events.
3956
3957 2000-11-27  Havoc Pennington  <hp@redhat.com>
3958
3959         * gtk/gtkprivate.h (enum): Remove a trailing comma
3960
3961 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
3962
3963         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3964         the "changed" callback of the adjustment.  We need to redraw the
3965         spin button's arrows when the adjustment's range changes.
3966         (adjustment_changed_cb): Draw the arrows.
3967         (gtk_spin_button_value_changed): Draw the arrows.
3968
3969 2000-11-23  Alexander Larsson  <alexl@redhat.com>
3970
3971         * gdk/linux-fb/gdkselection-fb.c:
3972         Initial selection implementation.
3973
3974         * gtk/gtkselection.c:
3975         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3976         requestor in gtk_selection_request.
3977         
3978         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3979         Added gdk_selection_property atom.
3980
3981         * gdk/linux-fb/gdkprivate-fb.h:
3982         Export _gdk_selection_window_destroyed.
3983         Removed mask_off_x/y from GdkCursorPrivateFB.
3984         Removed hbearing, added top, left to PangoFBGlyphInfo.
3985
3986         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3987         Call _gdk_selection_window_destroyed
3988         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3989         the root window has been created.
3990         (static_dx_hack, static_dy_hack, compare_draw_rects,
3991         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3992         in region. They are already sorted. Instead just traverse them in
3993         reverse if draw_direction < 0.
3994         
3995         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3996         Double-clicks must be sent after the normal button_press.
3997         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3998         
3999         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
4000         Pass _gdk_fb_screen_gc instead of NULL.
4001
4002         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4003         Initialize gdk_selection_property.
4004         (gdk_event_make): Remove unused code.
4005
4006         * gdk/linux-fb/gdkcursor-fb.c:
4007         Make the pixmap for the cursor the same size as the mask. Also remove
4008         the mask_off_x/y fields in GdkCursorPrivateFB and combine
4009         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
4010         Now the whole cursor is visible.
4011
4012         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4013         Fix bug where xdest+height instead of ydest+height was used
4014         to calculate if the source and dest overlapped. This fixes the
4015         redraw bug when the main window in testgtk was scrolled when
4016         partially covered by a tall window.
4017         Copy rectangles in region in order depending on draw_direction.
4018         Also moved the draw_direction flipping of start_y and end_y into
4019         the gc functions, as this might not be what all of them want.
4020         (gdk_fb_draw_lines): Support dashed lines.
4021         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
4022         so that the text is positioned correctly (was 1 pixel high).
4023
4024         gdk/linux-fb/gdkgc-fb.c:
4025         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
4026         all lines were drawn a pixel to short. Also checked the default of
4027         the rest of the values, and they're the same as X now.
4028
4029         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
4030         Clean up pixel positioning of the glyphs. Just use bgy->top and
4031         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
4032         to all divisions to get correct rounding behaviour.
4033
4034         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
4035         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
4036         Moved start_y/end_y flip into draw_drawable implementations.
4037         Flip also x rendering when draw_direction < 0.
4038         Remove unneccesary multiply with draw_direction.
4039
4040 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
4041
4042         * docs/tutorial/gtk-tut.sgml:
4043           - get rid of gtk_toggle_button_toggled FUD
4044           - start DND section - needs work - based on:
4045                 http://wolfpack.twu.net/docs/gtkdnd/
4046
4047 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4048
4049         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4050         Correct calculation of font metrics. Now GtkEntrys have sane
4051         size.
4052
4053 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4054
4055         * gdk/gdktypes.h:
4056         Add new type GdkSpan
4057         
4058         * docs/reference/gdk/gdk-sections.txt,
4059         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
4060         gdk/gdkregion.h:
4061         Implement and document gdk_region_spans_intersect_foreach.
4062
4063         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
4064         Add new file gdkrender-fb.c which contains all core
4065         rendering code.
4066         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
4067         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
4068         (optimized rectangle fillers).
4069
4070         * gdk/linux-fb/gdkdrawable-fb2.c:
4071         Move all rendering code to gdkrender-fb.c.
4072         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
4073         Use the new span intersection functions in gdk_fb_fill_spans.
4074         gdk_fb_draw_rectangle() clips filled rectangles and calls
4075         gc->fill_rectangle with the result.
4076         gdk_fb_fill_spans() gets extra argument "sorted".
4077
4078         * gdk/linux-fb/gdkevents-fb.c:
4079         Remove unused includes and defines.
4080         New function gdk_fb_get_time() to get correct time for events.
4081
4082         * gdk/linux-fb/gdkinput-ps2.c:
4083         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
4084         Make sure to set the time of all events.
4085
4086         * gdk/linux-fb/gdkmain-fb.c:
4087         Use gdk_fb_get_time ().
4088
4089         * gdk/linux-fb/gdkprivate-fb.h:
4090         New virtual GC calls: fill_span & fill_rectangle.
4091         Export gdk_fb_get_time().
4092         gdk_fb_fill_spans() gets extra argument "sorted".
4093
4094         * gdk/linux-fb/mi*.c:
4095         Use GdkSpan instead of GdkRectangle.
4096         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
4097         from XFree 4 source)
4098         
4099 2000-11-22    <jrb@redhat.com>
4100
4101         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
4102         reversing the order in an if statement will do.  Doing so managed
4103         to make the treemodelsort half work.  Other half will follow after
4104         I get the insert function fully fixed.
4105
4106 2000-11-21  Elliot Lee  <sopwith@redhat.com>
4107         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
4108         more than 2 bits. Besides, I need to implement an evil hack. :)
4109
4110 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
4111
4112         * docs/tutorial/gtk-tut.sgml: minor corrections
4113
4114 2000-11-20  Jonathan Blandford <jrb@redhat.com>
4115         * gtk/gtktreemodelsort.h: Add convertion functions to let you
4116           convert to and from relative path's and iters.
4117
4118         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
4119           testing sorting functions a bit better.  Currently broken -- will
4120           fix in morning.
4121
4122 2000-11-20  Havoc Pennington  <hp@redhat.com>
4123
4124         * gtk/gtkwidget.c: Documented a bunch of functions in here
4125         (gtk_widget_realize): Warn if you try to realize
4126         a widget with no parent that isn't a toplevel
4127         (gtk_widget_intersect): return a gboolean
4128
4129 2000-11-20  Havoc Pennington  <hp@redhat.com>
4130
4131         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
4132         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
4133         scrolling to be implemented in GDK to finish. Also, right now
4134         we just size_allocate all children on every layout change,
4135         which is pretty lame. Test commented out of testtext.c, 
4136         until it works better.
4137
4138 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
4139
4140         * gdk/linux-fb/gdkdrawable-fb2.c:
4141         Removed unused arguments from gdk_fb_drawable_get_pixel().
4142
4143         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
4144         Renamed fidur specific mouse packet data in MouseDevice to
4145         generic. Used it in ps2 mouse handling code to avoid blocking
4146         reads.
4147
4148 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
4149
4150         * demos/gtk-demo/main.c: Changed to have the list become
4151         non-italic when the demo window is destroyed through an external
4152         event (like a close button).  Doing so found three bugs in the
4153         widget.
4154
4155         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4156
4157         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4158         we actually set the cell.
4159
4160         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4161
4162         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4163         free a leaked path.  Thanks memprof.
4164
4165 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4166
4167         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4168         off-by-one error when destroying allocated segments
4169         on failure. (Elliot)
4170
4171 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4172
4173         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4174         memleaks found by Evan Martin.
4175
4176 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4177
4178         * Released 1.3.2
4179         
4180         * NEWS: Updates for 1.3.2
4181
4182 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4183
4184         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4185         but in general for window system specific events.
4186
4187         * gtk/gtk.def
4188         * gtk/makefile.mingw.in
4189         * gtk/makefile.msc.in: Update.
4190         
4191         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4192
4193 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
4194
4195         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4196         distribute gtk.immodules.
4197
4198         * gtk/Makefile.am (install-data-local): Don't install the
4199         gtk.immodules file created for the uninstalled modules;
4200         instead run gtk-query-immodules after install
4201
4202 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4203
4204         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4205         -rpath to the right install location.
4206
4207         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4208         -export-dynamic.
4209
4210         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4211         properly.
4212
4213 2000-11-15  Havoc Pennington  <hp@pobox.com>
4214
4215         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4216         patch from Mikael Hermansson to temporarily stop blinking while
4217         the user is using the keyboard to type or navigate. 
4218
4219         Also, when blinking, stay on for longer than we stay off. Also,
4220         return from start_cursor_blink if !cursor_visible, to save
4221         checking that flag all over the place before we call
4222         start_cursor_blink.
4223
4224 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
4225
4226         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
4227         only contain a "fontset" line, which is now ignored.
4228
4229         * gtk/gtkentry.c (gtk_entry_button_release): Make 
4230         double-click-to-select-word work.
4231         
4232 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
4233
4234         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
4235         Don't move back one char when we are actually at the end of the 
4236         paragraph.
4237
4238 2000-11-15  Robert Brady  <robert@suse.co.uk>
4239
4240         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
4241         'o' < 'p'.
4242         
4243         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
4244         bind_textdomain_codeset.
4245
4246         (gtk_init_check): Make the warning about translating default:LTR
4247         sterner.
4248         
4249 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
4250
4251         * **/Makefile.am : remove unecessary rules for win32-specific
4252         config-substituted targets. If you want these rules, use
4253         --enable-maintainer-mode (called automatically by autogen.sh).
4254         Stops a lot of unneccessary make-time warnings.
4255
4256         * gtk/gtktext{layout,display}.c: Factor in total width as
4257         well as screen when figuring alignment for word-wrap as well as
4258         no wrap; this is necessary to handle lines that cannot be wrapped
4259         at all.
4260
4261 2000-11-15  Havoc Pennington  <hp@redhat.com>
4262
4263         * gtk/testtext.c: Implement essential color cycling feature
4264
4265 2000-11-15  Havoc Pennington  <hp@redhat.com>
4266
4267         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
4268         when we invalidate the main window.
4269
4270         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
4271         GtkTextView will now invalidate the side windows for us when text
4272         changes.
4273
4274 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
4275
4276         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
4277         unconditionally, since we may need to update the horizontal
4278         scrollbars even if the height didn't change.
4279
4280         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
4281         the extra attrs, since some of them affect size.
4282
4283         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
4284         x_offset correctly.
4285
4286 2000-11-15  Havoc Pennington  <hp@redhat.com>
4287
4288         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
4289         don't move the first line out into the margin, instead move the
4290         whole paragraph in order to make space for the first line within 
4291         the margin
4292
4293 2000-11-15  Havoc Pennington  <hp@redhat.com>
4294
4295         * gtk/gtktextview.c (changed_handler): offset redraw rect by
4296         xoffset in addition to yoffset, so horizontal scrolling doesn't
4297         break redraws
4298
4299 2000-11-15  Havoc Pennington  <hp@redhat.com>
4300
4301         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4302         from the cursor
4303         (render_layout_line): fix reversed test that caused weird
4304         underlines to get drawn
4305
4306 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4307
4308         * gdk/linux-fb/gdkprivate-fb.h:
4309         Fix debug macros.
4310         
4311 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4312
4313         * gdk/linux-fb/gdkprivate-fb.h:
4314         Added virtual functions set_pixel, get_color,
4315         fill_span and draw_drawable to the GC.
4316         Added global _gdk_fb_screen_gc to use instead of
4317         NULL when drawing to the screen.
4318         Added _gdk_fb_gc_calc_state() prototype.
4319
4320         * gdk/linux-fb/gdkgc-fb.c:
4321         Call _gdk_fb_gc_calc_state() on any gc state change.
4322
4323         * gdk/linux-fb/gdkglobals-fb.c:
4324         Add _gdk_fb_screen_gc
4325                 
4326         * gdk/linux-fb/gdkdrawable-fb2.c:
4327         _gdk_fb_gc_calc_state() calculates best functions
4328         for the GC state and depth.
4329         Moved bpp specialized code to separate functions.
4330         Added optimized 24 bpp AA draw_drawable.
4331
4332         * gdk/linux-fb/gdkevents-fb.c:
4333         Silence gcc warning.
4334
4335         * gdk/linux-fb/gdkimage-fb.c:
4336         Use _gdk_fb_screen_gc
4337
4338         * gdk/linux-fb/gdkwindow-fb.c:
4339         Init and use _gdk_fb_screen_gc
4340
4341         * gdk/linux-fb/mitypes.h:
4342         Remove unused types.
4343
4344 2000-11-14  Havoc Pennington  <hp@pobox.com>
4345
4346         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4347         to pixels
4348
4349 2000-11-14  Havoc Pennington  <hp@pobox.com>
4350
4351         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4352
4353         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4354         unknown char, no real reason we were using a variable. 
4355         Remove gtk_text_unknown_char variable. Fix all the text widget
4356         files accordingly.
4357
4358         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
4359         since the Unicode spec seems to prefer that character for our
4360         purposes.
4361
4362 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
4363
4364         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
4365         value of g_getenv() isn't freeable, so g_strdup it.
4366
4367         * modules/input/inuktitut.c: Inuktitut input method.
4368
4369         * modules/input/Makefile.am: Build this.
4370         
4371 2000-11-14  Elliot Lee  <sopwith@redhat.com>
4372
4373         * gtk/Makefile.am: Install gtk.immodules, needed for operation
4374         of gtk programs.
4375
4376 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
4377
4378         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4379         reversed > that was causing Home to go to end of previous line.
4380
4381         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4382         modified-keypresses (leave for bindings.)
4383
4384         * modules/input/Makefile.am: Remove useless -export-dynamic
4385         from module LDFLAGS.
4386
4387 2000-11-14  Havoc Pennington  <hp@redhat.com>
4388
4389         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4390         higher.
4391
4392         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4393         account. Also, render rise, underline, background, etc. for
4394         pixbufs as well as text. Also, draw underlines one pixel higher.
4395
4396         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4397         PangoAttribute for the rise, so it gets drawn properly. Also,
4398         add the GtkTextAppearance attribute for pixbuf/widget segments
4399         as well; we should go ahead and have rise, underline, background,
4400         stipple work for those
4401
4402         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4403         Pango
4404
4405 2000-11-15  Tor Lillqvist  <tml@iki.fi>
4406
4407         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4408
4409         * gtk/gtk.def: Update.
4410
4411         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4412         included.
4413         (gtk_rc_get_im_module_file): Use run-time installation directory
4414         on Win32.
4415
4416         * gdk/win32/rc/gdk.rc: Remove.
4417         * gdk/win32/rc/gdk.rc.in: New file.
4418         * gdk/win32/rc/Makefile.am: New file
4419         * gdk/win32/Makefile.am: Corresponding changes.
4420
4421         * gtk/gtk.rc: Remove.
4422         * gtk/gtk-win32.rc.in: New file.
4423         * gtk/Makefile.am: Corresponding changes.
4424
4425         * configure.in: Corresponding changes.
4426
4427         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4428         has a built gtkcompat.h. Developers using CVS code on Win32 can
4429         hand-edit it from gtkcompat.h.in.
4430
4431         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4432         gtkcompat.h from gtkcompat.h.win32.
4433
4434 2000-11-14  Havoc Pennington  <hp@redhat.com>
4435
4436         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4437         to default to GDK_ACTION_MOVE if the drag is within a single
4438         widget. Defaults to GDK_ACTION_COPY between widgets.
4439
4440 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
4441
4442         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4443
4444         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4445
4446         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4447         srcdir != builddir
4448
4449         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4450
4451         * configure.in (GTK_VERSION): Up to 1.3.2
4452
4453         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
4454         gtkimcontextxim.h
4455
4456         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4457         missing doc comment.
4458
4459 2000-11-14  Alexander Larsson  <alexl@redhat.com>
4460
4461         * modules/linux-fb/basic.c:
4462         Use the glib iconv wrappers.
4463
4464 2000-11-13  Havoc Pennington  <hp@pobox.com>
4465
4466         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4467         still more bugs.
4468
4469         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4470         scroll the GdkWindows before realization.
4471
4472 2000-11-13  Havoc Pennington  <hp@redhat.com>
4473
4474         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
4475         where GC didn't always get updated properly
4476
4477         * demos/gtk-demo/textview.c (create_tags): Use subattributes
4478         of fonts instead of setting the entire font
4479
4480         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4481         setting entire font
4482
4483         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4484
4485         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
4486         a bunch of individually-settable font attributes. You can still 
4487         use the "font" and "font_desc" args, they just set all the font
4488         attributes at once.
4489
4490 2000-11-13 Elliot Lee <sopwith@redhat.com>
4491
4492         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4493
4494 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
4495
4496         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4497         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4498
4499         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4500         work better.
4501
4502 2000-11-13  Havoc Pennington  <hp@redhat.com>
4503
4504         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
4505         the module file.
4506
4507         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4508         dest->language
4509
4510         * gtk/testtext.c: Test pixels above/below/inside paragraphs
4511         settings
4512
4513         * gtk/gtktextview.c: Implement object args and setters/getters for
4514         all the aspects of the GtkTextAttributes that are not set from
4515         GtkWidget attributes. This is spacing, justification, margins,
4516         etc.
4517
4518         (gtk_text_view_set_arg)
4519         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4520         args
4521         (gtk_text_view_class_init): Add args for justify, left_margin,
4522         right_margin, indent, and tabs
4523         
4524
4525         * gtk/gtktextlayout.c (set_para_values): fix to display indent
4526         attribute properly
4527
4528         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
4529         replace with indent attribute
4530
4531         * gtk/gtktextlayout.c (set_para_values): multiply indent by
4532         PANGO_SCALE
4533
4534         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4535         rearranging code to do that
4536         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4537         i.e. don't subtract the top_margin first, just to keep
4538         all margin-futzing in one place.
4539
4540         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4541
4542         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4543         special case of last line, Pango now handles this itself.
4544         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
4545         Y coordinate
4546         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4547         (find_display_line_above): wasn't moving the byte index as it
4548         iterated over lines, so always returned byte 0. Also, port to use
4549         PangoLayoutIter.
4550         (find_display_line_below): same problem as
4551         find_display_line_above. Also, port to use PangoLayoutIter.
4552
4553 2000-11-13  Alexander Larsson  <alexl@redhat.com>
4554
4555         * gdk/linux-fb/*.[ch]:
4556         Massive reindent to gtk+ standard. My hands hurt.
4557
4558         * gdk/linux-fb/gdkcolor-fb.c:
4559         Move GdkColorPrivateFB from inherited to windowing_data
4560
4561         * gdk/linux-fb/gdkcursor-fb.c:
4562         _gdk_cursor_new_from_pixmap made static
4563
4564         * gdk/linux-fb/gdkdnd-fb.c:
4565         GdkDragContextPrivate moved to windowing_data
4566
4567         * gdk/linux-fb/gdkdrawable-fb2.c:
4568         Removed endian.h, use glib endianness macros instead
4569         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
4570         and GDK_DRAWABLE_IMPL_FBDATA
4571
4572         * gdk/linux-fb/gdkfont-fb.c:
4573         Add empty gdk_font_load(). Needed for linking of Gtk+.
4574
4575         * gdk/linux-fb/gdkimage-fb.c:
4576         Removed endian.h, use glib endianness macros instead
4577         Moved GdkImagePrivateFB to windowing_data
4578         gdk_image_new_bitmap didn't always allocate enough
4579         memory.
4580
4581         * gdk/linux-fb/gdkinput-ps2.c:
4582         Added semi-working support for MS serial mice.
4583
4584         * gdk/linux-fb/gdkprivate-fb.h:
4585         s/GdkWindowPrivate/GdkWindowObject/
4586         Removed GdkWindowPrivate typedef
4587         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
4588         Removed GDK_DRAWABLE_P
4589         Move GdkColorPrivateFB from inherited to windowing_data
4590         Moved GdkImagePrivateFB to windowing_data
4591
4592         * gdk/linux-fb/gdkvisual-fb.c:
4593         Removed some unused debug code.
4594
4595         * gdk/linux-fb/gdkwindow-fb.c:
4596         Use stock cursors instead of including X headers.
4597         s/GdkWindowPrivate/GdkWindowObject/
4598
4599         * gdk/linux-fb/mitypes.h:
4600         Removed unused types.
4601
4602         * modules/linux-fb/basic.c:
4603         Use the pango fribidi wrappers.
4604
4605 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4606
4607         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
4608         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
4609         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
4610         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
4611         GEqualFunc where applicable.
4612         
4613         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
4614         pango_font_description_equal as changed in pango.
4615         
4616         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
4617
4618         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
4619
4620         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
4621
4622         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4623
4624         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4625
4626         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4627
4628         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4629         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4630
4631         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4632         gtk_rc_styles_compare -> gtk_rc_styles_equal.
4633
4634 2000-11-12  Havoc Pennington  <hp@pobox.com>
4635
4636         * demos/gtk-demo/Makefile.am (democodedir): change demo install
4637         dir to datadir/gtk+-2.0/demo
4638
4639         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
4640         sorts of text widget and Pango font bugs. Urgh.
4641
4642         * demos/gtk-demo/Makefile.am (demos): Add textview.c
4643
4644         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4645         tree that you should double click to see the demo. Fix 
4646         types of variables to reflect changed return values from 
4647         GtkTreeStore and GtkTreeViewColumn constructors.
4648
4649         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4650         newly-created buffer to prepare for GObject semantics
4651
4652         * gtk/testtext.c: don't leak the buffer with GObject semantics
4653
4654         * gtk/testtextbuffer.c: ditto
4655         
4656 2000-11-12  Havoc Pennington  <hp@pobox.com>
4657
4658         Rename this testgtk to gtk-demo to avoid confusion, and 
4659         install it so people can use it as a supplement to 
4660         the documentation.
4661         
4662         * demos/gtk-demo: Moved from demos/testgtk
4663
4664         * demos/testgtk: Removed
4665
4666         * configure.in: make Makefile in gtk-demo
4667         
4668         * demos/gtk-demo/Makefile.am: Install sample source to 
4669         datadir/gtk-demo (maybe there's a better place?), and 
4670         rename the binary to gtk-demo
4671         
4672         * demos/gtk-demo/main.c (load_file): Load installed sample
4673         source if source isn't found in pwd.
4674
4675 2000-11-09  Havoc Pennington  <hp@pobox.com>
4676
4677         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
4678         argument to set the char displayed when visibility == FALSE
4679         (gtk_entry_create_layout): If !entry->visible, replace 
4680         all chars with the "invisible char"
4681
4682         * gtk/testgtk.c: Test the invisible_char deal
4683         
4684 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
4685
4686         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4687         can't get a native font in the right encoding.
4688
4689 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
4690
4691         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4692         respectively.
4693
4694 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
4695
4696         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4697         Fix warning when moving between paragraphs.
4698
4699         * gtk/gtkentry.[ch]: Change move => move_cursor, 
4700         delete => delete_from_cursor, insert => insert_at_cursor
4701
4702 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
4703
4704         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4705
4706         * modules/input/imthai-broken.c: A Thai input method for use if
4707         Thai keys are really generating Latin1 keysyms.
4708
4709         * modules/input/Makefile.am: Build these.
4710
4711 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
4712
4713         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
4714         g_filename_{to,from}_utf8 now takes an extra parameter.
4715
4716         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4717         strftime into UTF-8.
4718
4719         (column_from_x, gtk_calendar_paint_day_names): Support RTL
4720         calendars.
4721
4722         (gtk_calendar_paint_day_names): Draw day names in the right 
4723         place.
4724         
4725 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
4726
4727         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4728         problem with using result of g_get_charset() backwards -
4729         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4730
4731         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4732         negative min_width/height and max_width/height to
4733         mean "requisition"; this allows setting a window
4734         to be user-resizable in only one direction easily.
4735
4736         * gtk/testgtk.c (create_main_window): Remove hard-coded
4737         usize - set a default size in the vertical direction.
4738
4739 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
4740
4741         * gtk/gtkrange.c: Add some missing casts. Support 
4742         2 and 3 button clicks on the arrows to mean 
4743         "move by pages" and "jump to end". (Like gtkspinbutton)
4744
4745 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4746
4747         * gdk/win32/makefile.msc : reflect build module changes
4748
4749         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4750         from GdkPixmap*, cast implementation member instead.
4751
4752         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4753         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
4754         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4755         more Gdi functions return value checking. 
4756         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4757         GdkImagePrivateWin32 *.
4758
4759         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4760         menus useable again. Add #pragma message to keep reminded on this issue.
4761         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4762         windows. This allows to enable backing store on Win32!
4763
4764         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4765         in drawable is of impl type. Correct specific type checks appropriate.
4766  
4767         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
4768         GDK_WINDOW_DESTROYED before allocating new resources.
4769
4770         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4771
4772         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4773         (gdk_window_foreign_new) initialize parent handle.
4774         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4775
4776         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4777         Let the GDI invalidate the window on MoveWindow call to fix scrolling
4778         problems (e.g. main buttons in testgtk). 
4779
4780 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
4781
4782         * gtk/gtkentry.c (gtk_entry_key_press): Call 
4783         gtk_widget_activate for GDK_Return.
4784
4785         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4786         of preedit cursor position.
4787
4788 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
4789
4790         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4791         static.
4792
4793 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
4794
4795         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4796         out support for multiple locales; that simple doesn't
4797         work reliably with current Xlib
4798
4799         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4800         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
4801         Add support for positioning the cursor within the preedit string.
4802
4803 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
4804
4805         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4806         at XIM input method module.
4807
4808         * gtk/gtktextview.c: Check for bindings after passing
4809         events to im context filter.
4810
4811 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
4812
4813         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4814         empty attribute lists properly.
4815
4816 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
4817
4818         * gtk/queryimmodules.c (main): Return non-zero exit
4819         status if errors were encountered querying any
4820         modules.
4821
4822         * modules/input/Makefile.am (moduledir): remove
4823         leftover bin program target.
4824
4825         * docs/make-todo: Fix typo in error message.
4826
4827 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
4828
4829         * configure.in: Add modules/input/Makefile
4830
4831 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
4832
4833         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4834         don't include gtkthemes.h.
4835
4836         * gtk/testgtk.c gtk/testtext.c: Set environment variables
4837         to point
4838
4839         * gtk/Makefile.am: Add new .c and .h files, build 
4840         gtk-query-immodules and use it to create a gtk.immodules
4841         file for use of test programs.
4842
4843         * gtk/gtkpreview.c: remove extra blank line.
4844
4845 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
4846
4847         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
4848         Add the ability to add extra tables beyond the default
4849         one, and also the ability to have compose sequences 
4850         that are prefixes of other compose sequences. 
4851
4852         * gtk/gtkimcontextsimple.c: Export a preedit string which
4853         consists of possible candidates for keystrokes that have
4854         been entered but not yet committed.
4855
4856         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4857         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4858
4859         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
4860         Add a function to add input-method switching menu items
4861         to a menu.
4862
4863         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4864         when switching input methods.
4865
4866         * gtk/gtkimcontextsimple.[ch]: Change the format of
4867         the compose table to allow compose tables of different
4868         lengths / sequence.
4869
4870 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
4871
4872         * gtk/gtkimmodule.[ch]: Support routines for loading
4873         GtkIMContext implementations dynamically at runtime.
4874
4875         * modules/input/imcyrillic-translit.c: A sample input
4876         method (based on GtkIMContextSimple with an extra table),
4877         which demonstrates preedit strings and the module
4878         system for input modules
4879
4880         * gtk/queryimmodules.c: Program to query the available
4881         input modules and write the results into a file.
4882          
4883         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4884         extra config options "im_module_file" (cache file for
4885         input method modules), and "im_module_path" - path
4886         to look for modules when generating cache file.
4887
4888         This doesn't scale.
4889
4890 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
4891
4892         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
4893         generic code from gtkthemes into a new abstraction
4894         GtkModule which has the logic for implementing
4895         a loadable module which implements a number of 
4896         GObject types.
4897
4898 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
4899
4900         * gtk/gtkeditable.[ch]: Convert GtkEditable from
4901         a class into an interface  
4902         
4903         * gtk/gtkoldeditable.[ch]: Move the old editable
4904         implementation into here, so legacy widgets can
4905         still rely on the implemenation. GtkOldEditable
4906         exports GtkEditable. Make selection handling
4907         code use new text conversion functions (and
4908         handle UTF-8 as a side-effect). Use GtkClipboard
4909         for CLIPBOARD.
4910
4911         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4912         Adopt to match above changes.
4913
4914         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4915         avoid GtkOldEditable implementation. Restructure
4916         to reduce number of places that modify state directly.
4917         Move to GtkBindingSet. Display the preedit string.
4918         Queue recomputation of PangoLayout and scroll position
4919         to improve effiency of doing complex changes naively.
4920         Add a menu with cut/copy/paste and input method selection.
4921
4922 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
4923
4924         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4925         to set preedit string and attributes; display preedit string by
4926         inserting string and attributes at cursor when creating the
4927         GtkTextLineDisplay.
4928
4929         * gtk/gtktextlayout.c: Move all conversions between byte
4930         positions in PangoLayout and GtkTextIter into new functions
4931         line_display_iter_to_index/index_to_iter that properly
4932         handle the preedit string.
4933
4934         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4935         it to return const char * (eventually will end up
4936         as GCONST char *, most likely.)
4937
4938         * gtk/gtktextview.[ch]: Handle the preedit string, call
4939         gtk_im_context_reset() as necessary, add a menu to switch
4940         input methods.
4941         
4942         * gtk/gtktextlayout.[ch]: Remove useless
4943         gtk_text_layout_get_log_attrs() function.
4944
4945 2000-11-11  Tor Lillqvist  <tml@iki.fi>
4946
4947         * gdk/gdk.def
4948         * gtk/gtk.def: Update.
4949
4950         * gdk/win32/*.c: Add last argument to g_type_register_static()
4951         calls.
4952
4953         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4954
4955         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4956         generated by older wheel mouse drivers. Get the correct y
4957         coordinate from WM_MOUSEWHEEL messages.
4958
4959         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4960         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4961         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4962         Debugging functions.
4963
4964         * gdk/win32/gdkprivate-win32.h: Declare them.
4965
4966         * gdk/win32/gdkinput-win32.h: Add declaration for
4967         gdk_input_window_destroy().
4968
4969         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4970
4971 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
4972
4973         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4974         function to help handle keeping things in sync.
4975
4976 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
4977
4978         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4979         BOXED marshallers.
4980
4981         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4982         (gtk_list_store_class_init): use the new BOXED marshallers.
4983
4984         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4985         new_with_values to new_with_types.
4986         (gtk_tree_store_get_column_type): add this.
4987         (gtk_tree_store_class_init): use the new BOXED marshallers.
4988
4989         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4990         mirror some POINTER marshallers.
4991
4992 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
4993
4994         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4995         allow more interesting iterators.  Also, made the lifecycle of
4996         iterators more explicit.
4997
4998         * gtk/gtktreemodelsort.[ch]: New model for sorting.
4999
5000         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
5001         types.
5002
5003 2000-11-09  Alexander Larsson  <alexl@redhat.com>
5004
5005         * demos/testgtk/menus.c:
5006         Changes to make the new testgtk compile after
5007         gtk_menu_append was removed.
5008
5009         * gdk/linux-fb/gdkdrawable-fb2.c
5010         (gdk_fb_get_depth, gdk_fb_get_visual,
5011         gdk_drawable_impl_fb_class_init): Implement
5012         these drawable functions. Now GtkImages work again.
5013
5014         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
5015
5016         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
5017         
5018         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
5019         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
5020         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
5021         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
5022
5023 2000-11-08  Havoc Pennington  <hp@pobox.com>
5024
5025         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
5026         visible_set args, don't know where these had gone, I thought they
5027         used to be there
5028
5029         * gtk/testtext.c: Add a menu item to apply invisibility tag;
5030         now we can test the feature and see that it's totally broken.
5031
5032 2000-11-08  Havoc Pennington  <hp@pobox.com>
5033
5034         Make DND copy pixbufs and tags when source and target share a 
5035         tag table.
5036         
5037         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
5038         in-process GTK_TEXT_BUFFER_CONTENTS target
5039         (gtk_text_view_drag_data_received): Paste from
5040         GTK_TEXT_BUFFER_CONTENTS if we receive it.
5041
5042 2000-11-08  Alexander Larsson  <alexl@redhat.com>
5043
5044         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
5045         API changes.
5046
5047         * gtk/gtkmenu.c: Add support for scrolling menus.
5048         Remove gtk_menu_append/prepend/insert, these have been moved to
5049         gtkcompat.h as #defines.
5050
5051         * gtk/gtkcompat.h.in:
5052         Add compatibility #defines for gtk_menu_append/prepend/insert
5053
5054         * gtk/gtkmenu.h: Add data needed for scrolling menus.
5055         GtkMenuPositionFunc gets an extra argument push_in.
5056         gtk_menu_append/prepend/insert removed.
5057         
5058         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
5059         positioning behaviour to fit to scrolling menus.
5060
5061         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
5062         into menuitem->submeny. That is wrong, and broke torn
5063         off submenus of torn off menus, since they were unrealized
5064         when the first menu was unrealized.
5065
5066         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
5067         gtk_menu_shell_select_item() since these need to be overridden in
5068         GtkMenu.
5069
5070         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
5071         positioning behaviour to fit to scrolling menus.
5072         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
5073         the current item so that it is prelighted when the menu pops up.
5074         This is a workaround to the fact that the menu doesn't get the
5075         initial enter event (due to grabs).
5076
5077         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
5078         s/gtk_menu_append/gtk_menu_shell_append/
5079
5080         * gtk/gtknotebook.c:
5081         s/gtk_menu_insert/gtk_menu_shell_insert/
5082
5083         * gtk/testgtk.c (create_menu, create_menus):
5084         Create the first menu with 50 items so that menu scrolling
5085         can be tested.
5086         
5087         
5088         Patch from Jonathan Blandford  <jrb@redhat.com>
5089
5090         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
5091         system to handle size requests.  First, we ask what the size of
5092         the toggle is.  Then, when allocating the size, we allocate the
5093         toggle_size first.  This way we can have multiple menu-item
5094         classes w/o needing a seperate class for each.
5095
5096         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
5097         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
5098
5099         * gtk/gtkcheckmenuitem.c
5100         (gtk_check_menu_item_toggle_size_request): New function to handle
5101         the toggle size-request.
5102
5103 2000-11-07  Havoc Pennington  <hp@redhat.com>
5104
5105         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
5106         Half-ass somewhat fix this function, so that scrolling to the
5107         insertion point works. Pango hacking is in the future to really
5108         fix it.
5109
5110         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
5111         length of data, no longer used.
5112
5113         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
5114         method contents in here, get rid of destroy method
5115         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
5116         that were backward. Remove debug spew.
5117         (cut_or_copy): Make the clipboard work with insert_range to
5118         preserve tags and pixbufs, not just the primary selection.
5119
5120 2000-11-07  Havoc Pennington  <hp@redhat.com>
5121
5122         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
5123         to gtk_text_mark_get_visible
5124
5125         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
5126         bug that was generating an invalid iterator
5127
5128         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
5129         ensure_char_offsets() in front of code placing the iter in an
5130         invalid state.
5131
5132         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
5133         make override_location arg const
5134         (paste): Replace the selection if we paste into the 
5135         current selection
5136
5137         * gtk/gtkselection.h: Remove "GtkSelectioData"
5138         (struct _GtkSelectionData): move the definition here.
5139
5140         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
5141         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
5142
5143         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
5144
5145         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
5146         (gtk_text_buffer_insert_range_interactive): implement
5147         (gtk_text_buffer_get_tags): Remove, replaced by
5148         gtk_text_iter_get_tags()
5149
5150         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
5151         limit parameter, to avoid infinite linear scan.
5152         (gtk_text_iter_backward_search): Add search limit
5153         (gtk_text_iter_forward_find_char): Add search limit
5154         (gtk_text_iter_backward_find_char): Add search limit
5155
5156 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5157
5158         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5159         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5160         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5161         gdk/linux-fb/gdkwindow-fb.c:
5162         use g_object_new() instead of g_type_create_instance() which
5163         is a private function for fundamental type implementations.
5164
5165         * gdk/linux-fb/gdkinput-ps2.c:
5166         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5167         instead just store the current modifier state. Add a (somewhat broken)
5168         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5169         Rename exported function gdk_input_ps2_get_mouseinfo to
5170         gdk_input_get_mouseinfo.
5171
5172         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5173         gdk/linux-fb/gdkwindow-fb.c:
5174         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5175         
5176
5177 2000-11-02  Havoc Pennington  <hp@redhat.com>
5178
5179         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5180         use stock buttons. Should be 100% source compatible, appropriate
5181         filesel fields now point to dialog->vbox and dialog->action_area.
5182         On the bizarre side, dialog->action_area and filesel->action_area
5183         are not the same widget.
5184         (gtk_file_selection_init): Put some padding around the selection
5185         entry, so it isn't touching the GtkDialog separator.    
5186
5187         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
5188         use stock buttons, etc. Should also be source compatible.
5189         Set the dialog default title in _init not _new().
5190         
5191         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
5192         Use stock buttons; don't put a button box inside the existing
5193         dialog button box. Don't bother with push/pop colormap anymore.
5194
5195         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
5196         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5197         for message dialog, and necessary for the font selection and color
5198         selection with help and apply buttons.
5199         
5200         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
5201         to the created button widget. Set GTK_CAN_DEFAULT on the button.
5202         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5203         between buttons, put less padding around the action area.
5204         (gtk_dialog_run): Exit on unmap rather than on destroy. 
5205         This will also exit the loop if the widget is hidden.
5206         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5207         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5208         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
5209         special-case delete event.
5210
5211         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5212         formatting
5213         
5214 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
5215
5216         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5217         button to temporarily disable position recording in the
5218         "saved position" test.
5219
5220 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
5221
5222         * gtk/gtkthemes.c: added compat code that temporarily implements
5223         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
5224         going to be revamped by owen's upcoming GtkModule patches, but
5225         untill then people want gtk to build, right? ;)
5226
5227 2000-11-04  Havoc Pennington  <hp@pobox.com>
5228
5229         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
5230         list
5231
5232         * docs/Changes-2.0.txt: Add note about
5233         gtk_container_get_toplevels()
5234
5235         * gtk/gtktextview.h: formatting
5236         
5237         * gtk/gtktextview.c: don't start descriptions with "Returns",
5238         confuses gtk-doc
5239
5240 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
5241
5242         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
5243         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
5244
5245 2000-11-03  Havoc Pennington  <hp@redhat.com>
5246
5247         * gtk/gtktexttagtable.c: Docs
5248         (gtk_text_tag_table_size): return a signed int
5249
5250         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
5251         (gtk_text_tag_event): make the event_object a GObject
5252
5253         * gtk/gtktextview.c: Write API docs for all functions.
5254
5255         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
5256         for gtk_text_view_get_window_type() called on one of the private
5257         windows.
5258
5259         * gtk/gtktextview.c: Instead of accessing text_view->buffer
5260         directly, call get_buffer() which demand-creates a default
5261         buffer. So gtk_text_view_new() can be used to create a view with a
5262         default buffer in it, if you just want an empty text box users can
5263         put data in. Useful for GUI builders also.
5264
5265 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
5266
5267         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
5268         the charset encodign portion MUST be in lowercase.
5269         * gtk/gtkrc.az: added file for Azeri language
5270
5271 2000-11-03  Havoc Pennington  <hp@redhat.com>
5272
5273         Get widgets working on the btree/buffer side. Display of them 
5274         still doesn't work.
5275         
5276         * gtk/gtktextview.c: start implementing child widget stuff
5277
5278         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
5279
5280         * gtk/gtktextlayout.c: handle embedded widgets
5281
5282         * gtk/gtktextdisplay.c: handle embedded widgets
5283
5284         * gtk/gtktextchild.c: Implement all the child anchor goo
5285
5286         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
5287         function
5288
5289         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
5290         (insert_pixbuf_or_widget_segment): abstract out common portions of 
5291         creating a child anchor or a pixbuf segment.
5292         (gtk_text_btree_create_child_anchor): new function
5293         (gtk_text_btree_unregister_child_anchor): new function
5294
5295         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
5296         allocate_child signal on GtkTextLayout
5297
5298         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5299         values
5300         (gtk_text_iter_get_child_anchor): new function
5301
5302         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5303         default handler for the changed signal, which calls
5304         gtk_text_buffer_set_modified(), instead of just always emitting
5305         changed then calling set_modified() manually. I guess this is
5306         maybe more flexible. It seems logical.
5307
5308 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
5309
5310         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5311         now.
5312
5313         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5314
5315 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
5316
5317         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5318         been marked static.
5319
5320 2000-11-02  Havoc Pennington  <hp@redhat.com>
5321
5322         * gtk/testgtk.c (create_labels): had a test backward
5323
5324         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5325         fields, so the dest GC ends up with the correct clip origin, 
5326         etc. Fixes a bug where colored labels didn't redraw 
5327         properly.
5328
5329 2000-11-02  Alexander Larsson  <alexl@redhat.com>
5330
5331         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5332         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5333         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5334         Add last argument to t_type_register_static call.
5335         
5336         * gdk/linux-fb/gdkdrawable-fb2.c:
5337         Add last argument to t_type_register_static call.
5338         export the get_image drawable virtual function.
5339
5340         * gdk/linux-fb/gdkimage-fb.c:
5341         Add last argument to t_type_register_static call.
5342         rename gtk_image_get to _gdk_fb_get_image and
5343         export it for use by gdkdrawable-fb2.
5344
5345         * gdk/linux-fb/gdkprivate-fb.h:
5346         export _gdk_fb_get_image.
5347
5348         * gdk/linux-fb/gdkselection-fb.c:
5349         Add new api call stubs.
5350
5351         * gtk/Makefile.am:
5352         Missing ( in linux-fb part.
5353
5354         * modules/linux-fb/Makefile.am:
5355         Must link with gdk_pixbuf or get unresolved symbol.
5356
5357 2000-11-01  Havoc Pennington  <hp@pobox.com>
5358
5359         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
5360         GTK_TYPE_TEXT_ITER and BOXED marshallers
5361
5362         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5363
5364         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5365         
5366         * gtk/gtk-boxed.defs: add GtkTextIter
5367
5368         * gtk/gtkmarshal.list: Add marshallers for text widget that 
5369         properly use OBJECT and BOXED
5370
5371 2000-11-01  Havoc Pennington  <hp@redhat.com>
5372
5373         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5374
5375         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5376         before returning it. 
5377         
5378 2000-11-01  Havoc Pennington  <hp@redhat.com>
5379
5380         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5381         Clip the rectangle to be rendered to the drawable, since
5382         get_from_drawable() requires a region within the drawable
5383
5384 2000-11-01  Havoc Pennington  <hp@redhat.com>
5385
5386         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5387         from coordinates.
5388
5389 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
5390
5391         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5392         it isn't NULL.
5393
5394 2000-11-01  Havoc Pennington  <hp@pobox.com>
5395
5396         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5397         on a label
5398         (gtk_label_finalize): unref the attr list if any.
5399
5400         * gtk/testgtk.c (create_get_image): close test on second click
5401         (make_message_dialog): close dialog if it exists
5402
5403         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5404
5405         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5406         gdk-pixbuf
5407
5408         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5409         from Pango markup format
5410         (gtk_label_set_markup_with_accel): ditto but with accelerator
5411         parsing
5412
5413         * gtk/gtkimage.c (gtk_image_expose): reformatting.
5414
5415         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5416         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5417         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
5418         call gdk_window_get_origin().
5419
5420         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5421         implement GDK_PIXBUF_ALPHA_FULL
5422         
5423 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
5424
5425         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5426         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5427         g_signal_handlers_disconnect_matched to block/unblock and disconnect
5428         multiple handlers respectively, instead of only treating the
5429         first handler found (bug reported by owen).
5430
5431 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
5432
5433         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5434
5435         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5436
5437         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5438         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5439         gtk/gtktreeviewcolumn.h: Fixed inline docs.
5440
5441         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5442         widget.  Needs writing someday.
5443
5444         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5445         the docs.
5446
5447 2000-10-30  Havoc Pennington  <hp@redhat.com>
5448
5449         * gtk/gtktextview.h, gtk/gtktextview.c:
5450         Rename delete_at_cursor delete_from_cursor, and 
5451         move to move_cursor.
5452
5453 2000-10-30  Havoc Pennington  <hp@redhat.com>
5454
5455         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5456         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5457         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5458         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5459         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5460         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5461         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5462         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5463         gtktexttypes.h, gtktextview.c, gtktextview.h:
5464
5465         Massive reindentation and reformatting. Arg alignment and comments
5466         still need fixing in various places.
5467
5468 2000-10-30  Havoc Pennington  <hp@redhat.com>
5469
5470         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5471         to be named insert_at_cursor and delete_at_cursor so C++ can
5472         handle them.
5473
5474 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5475
5476         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5477         to get a double directory separator in case the home directory
5478         ends with one. This would cause trouble especially on Windows,
5479         where the path will be confused with the syntax for an an UNC
5480         (network share) path \\server\share\path.
5481         (gtk_rc_add_initial_default_files): Ditto.
5482
5483 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
5484
5485         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5486
5487         * gtk/gtktextview.c: Use correct marshallers.
5488
5489 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
5490
5491         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
5492         use new iter stuff, and added all the appropriate signals et al.
5493
5494         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5495         code is internal to gtk only.
5496
5497 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5498
5499         * gtk/gtk.def
5500         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5501         glib-genmarshal etc.
5502
5503 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
5504
5505         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5506         parallel builds.
5507
5508 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
5509
5510         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5511
5512 2000-10-27  Robert Brady  <robert@suse.co.uk>
5513
5514         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
5515         en_GB (British), ia (Interlingua).
5516
5517 2000-10-26  Havoc Pennington  <hp@redhat.com>
5518
5519         * gtk/gtktextiter.c (my_strrstr): fix constness warning
5520
5521         Fixed output of:
5522         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5523         
5524         * gtk/gtktextsegment.c (char_segment_new): rename
5525         (_char_segment_new_from_two_strings): rename
5526         (_toggle_segment_new): rename
5527         
5528         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5529         (make_clipboard_widget): make it static
5530         (text_get_func): static
5531         (text_clear_func): static
5532
5533         * gtk/gtkcolorsel.c (adjustment_changed): make this function
5534         static
5535         (hex_changed): make it static
5536         (hsv_changed): make it static
5537         (opacity_entry_changed): make it static
5538
5539         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5540         (toggle_segment_check_func): rename with _gtk
5541
5542         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5543         (_widget_segment_new): rename
5544         (_widget_segment_add): rename
5545         (_widget_segment_remove): rename
5546         (_widget_segment_ref): rename
5547         (_widget_segment_unref): rename
5548
5549         * gtk/gtktextmark.c (_mark_segment_new): Rename
5550         _gtk_mark_segment_new   
5551
5552 2000-10-26  Havoc Pennington  <hp@redhat.com>
5553
5554         * gtk/gtkmarshal.list: add new marshallers used by the text widget
5555         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5556         types
5557
5558         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
5559         marshaller types
5560
5561         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
5562         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
5563         license on these files.
5564
5565         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
5566         work.
5567
5568         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
5569         runtime random number different for each tree, instead of 
5570         a constant I made up.
5571
5572 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
5573
5574         * gtk/Makefile.am: buncha cleanups, kludged build sources
5575         dependencies with a Makefile: oldest-source-stamp dependancy
5576         for the moment. automake is really fighting us here, with
5577         intentionally not allowing user-defined rules or dependancies
5578         prior to it's -include $(DEP_FILES) statement. sucks rocks!
5579
5580         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
5581         to public headers. tehy have a comment stating that they are
5582         "semi-public" aren't included by gtk.h and if enums popup there,
5583         they can be /*< skip >*/-ed.
5584
5585         * gtk/gtktextlayout.h: 
5586         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
5587         added LGPL... <SIGH>
5588
5589 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
5590
5591         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
5592         GtkTreeIter.  Added iterators everywhere.
5593
5594         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
5595
5596         * gtk/gtktreeviewselection.c: Changed to use the iterators.
5597
5598         * gtk/gtktreestore.c: Changed to use the iterators.
5599
5600         * gtk/gtkliststore.c: Commented out the code.  Will convert to
5601         iterators tomorrow.
5602
5603         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
5604         iterators tomorrow.
5605
5606         * gtk/treestoretest.c: Changed to use iterators.
5607
5608         * demos/testgtk/main.c: Moved to use the new iterator system.
5609
5610 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
5611
5612         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
5613         localization misbehaviour.
5614
5615         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
5616         a useless type without copy/free.
5617
5618         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
5619         of GTK_TYPE_CTREE_NODE.
5620
5621 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
5622
5623         * gtk/gtksignal.c:
5624         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5625         applicable.
5626
5627         * gtk/gtk-boxed.defs (GtkSelectionData): specify
5628         gtk_selection_data_copy and gtk_selection_data_free
5629         do GtkSelectionData work as params in signals.
5630
5631 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
5632
5633         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5634         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5635         couldn't they at least give it a non-standard name?
5636         
5637         * gtk/gtktextlayout.c: arg! yet another implementation of
5638         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5639
5640         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5641         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5642         home. now i know this _is_ a conspiracy.
5643
5644         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5645         ::state-changed.
5646
5647         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
5648         (gtk_accel_group_create_add): marshaller signature fixups.
5649
5650         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5651         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5652
5653         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5654         anymore.
5655
5656 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
5657
5658         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5659         due to the signal system changes, it wouldn't build currently. to
5660         be fixed soon.
5661
5662         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5663
5664         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5665         so it needs gtk_marshal_VOID__ENUM() instead of
5666         gtk_marshal_NONE__UINT().
5667
5668         * gdk/gdk*.c: adapted type registration functions.
5669
5670         * gtk/gtkbindings.c:
5671         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5672         gone.
5673
5674         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5675
5676         * gtk/gtkobject.c:
5677         (gtk_object_destroy):
5678         (gtk_object_shutdown): fixed recursion guards. basically we have to
5679         catch the case where any of GObject.shutdown() or gtk_object_destroy()
5680         is called during ::destroy, and avoid recursion there.
5681
5682         * gtk/gtktypeutils.c:
5683         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5684         boxed_copy/boxed_free. this needs a more general solution based on a
5685         publically installed code-generator utility.
5686
5687         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5688         glib's gobject has support for that now.
5689         define GtkSignalMarshaller in terms of GSignalCMarshaller.
5690
5691 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
5692
5693         * gtk/gtksignal.[hc]:
5694         * gtk/gtkmarshal.[hc]:
5695         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5696         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5697         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5698         care of that.
5699
5700         * *.c: marshaller name fixups.
5701
5702         * gtk/gtkmarshal.list: added a comment briefing the format.
5703
5704 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
5705
5706         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5707         compatibility macros here now. more specifically, most of
5708         the API is preserved (yes, _most_, nonwithstanding the
5709         following exceptions listed, the API is stil lHUGE ;)
5710         things that got removed completely:
5711         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5712         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5713         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5714         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5715         gtk_signal_remove_emission_hook().
5716         non-functional functions variants:
5717         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5718         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5719         not supported anymore.
5720         (gtk_signal_compat_matched): new internal function to aid
5721         implementation of the compatibility macros, it  provides
5722         functionality to block/unblock/disconnect handlers based
5723         on func/data.
5724
5725         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5726
5727         * *.c: adaptions to new type registration API signatures.
5728
5729 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
5730
5731         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5732
5733 2000-10-25  Robert Brady  <robert@suse.co.uk>
5734
5735         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5736         gdk_property_delete): If window == NULL, assume the root window.
5737         (restoring the behaviour that was in 1.2).
5738         
5739         * gtk/testtext.c (save_buffer): Allow creation of new files when
5740         saving.
5741
5742         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5743         calls to read().
5744
5745 2000-10-25  Tor Lillqvist  <tml@iki.fi>
5746
5747         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5748
5749         * gdk/win32/gdkdrawable-win32.c
5750         * gdk/win32/gdkimage-win32.c
5751         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5752         X11 backend.
5753
5754         * gdk/win32/gdkcc-win32.c
5755         * gdk/win32/gdkcolor-win32.c
5756         * gdk/win32/gdkfont-win32.c
5757         * gdk/win32/gdkinput-win32.c
5758         * gdk/win32/gdkmain-win32.c
5759         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5760
5761 2000-10-24  Havoc Pennington  <hp@redhat.com>
5762
5763         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5764         it a static function
5765
5766         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5767         redraw text when a tag is applied to it.
5768
5769         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5770         (gtk_text_tag_affects_nonsize_appearance): private functions to
5771         see if a tag requires various kinds of redraw/layout to be queued
5772         up.
5773
5774         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5775
5776         * gtk/testtext.c (fill_example_buffer): Put the cursor 
5777         at the start of the buffer, so search works by default
5778
5779         * gtk/gtktextiter.c (lines_match): init match_start always
5780
5781         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5782         function, get iter at a line + a byte index
5783
5784         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5785         to set byte position within a line
5786         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5787
5788 2000-10-23  Havoc Pennington  <hp@redhat.com>
5789
5790         * gtk/testtext.c: Re-enable the "find" dialog
5791
5792         * gtk/testgtk.c: Add test for gdk_drawable_get_image
5793         
5794         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5795         the arguments to gdk_draw_drawable were in the wrong order
5796         (gdk_window_paint_init_bg): This function was ignoring the
5797         init_region, instead of clipping to it, so the entire backing
5798         pixmap was cleared on every begin_paint()
5799         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5800         was in here again, the loop kept using the same GtkWindowPaint
5801         over and over.
5802         (gdk_window_begin_paint_region): Fix a bug where we had two
5803         x_offset instead of x_offset and y_offset
5804
5805         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5806         before we get the image.
5807         (gdk_draw_drawable): get the composite before we draw the drawable.
5808         (gdk_drawable_real_get_composite_drawable): default
5809         get_composite_drawable implementation that returns the drawable 
5810         itself
5811
5812         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5813         get_composite_drawable virtual function
5814
5815         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5816         list-walking bug
5817
5818         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5819         make this work if the source drawable is a GdkDrawableImplX11
5820         instead of a public drawable type. This is really broken; the
5821         problem is that GdkDrawable needs a virtual method get_xid(), but
5822         of course that doesn't work in practice. Enter RTTI.
5823
5824         Also, improve mismatched depth message.
5825
5826         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5827         GdkPixmap
5828
5829         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5830         install _gdk_x11_get_image as our implementation of get_image
5831         
5832         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5833         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5834
5835         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5836         gdk_drawable_get_image
5837
5838         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5839
5840         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5841         get_image
5842
5843         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5844         trailing semicolon after for loop
5845
5846 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
5847
5848         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5849         where font_desc for widget's context lagged widget's font_desc by
5850         one step.
5851
5852 2000-10-22  Tor Lillqvist  <tml@iki.fi>
5853
5854         * gdk/win32/gdkgc-win32.c
5855         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5856
5857         * gtk/makefile.mingw.in
5858         * gtk/gtk.def: Updates.
5859
5860         * gtk/testgtk.c: sleep() is called _sleep in MS's C
5861         library.
5862
5863         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5864
5865         * gtk/makefile.msc: Remove
5866
5867         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5868
5869         * gtk/Makefile.am: Add it.
5870
5871         * configure.in: Generate it.
5872
5873         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5874         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5875         something even if not implemented, to satisfy picky MSVC.
5876
5877         Patches by Hans Breuer:
5878         
5879         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5880         SetBkMode() and SetTextAlign() before calling
5881         pango_win32_render().
5882
5883         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5884         Set hcliprgn to NULL after destroying it.
5885         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5886
5887         * gdk/win32/gdkgeometry-win32.c
5888         (_gdk_windowing_window_queue_antiexpose): More effective
5889         implementation.
5890
5891         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5892         depth as default, not the visual's.
5893
5894         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5895         against empty title.
5896
5897         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5898         IMAGE_PRIVATE_DATA.
5899
5900         * gdk/win32/gdkimage-win32.c: Use it.
5901
5902 2000-10-22  Robert Brady  <robert@suse.co.uk>
5903
5904         * configure.in: Check for bind_textdomain_codeset
5905
5906         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
5907         present, make use of it.
5908
5909         Add a translatable string "default:LTR" which, if translated
5910         to "default:RTL", will cause the default direction to be
5911         Right-to-Left.
5912
5913         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
5914         direction if marked as flippable.
5915
5916         * gtk/gtkhscale.c: Mark widget as flippable.
5917         
5918 2000-10-04  Havoc Pennington  <hp@redhat.com>
5919
5920         * gtk/testgtk.c (create_buttons): create some stock buttons
5921         with the default accel group
5922         (create_image): test some new GtkImage features
5923         (make_message_dialog): test GtkMessageDialog
5924         (create_modal_window): fix someone's bizzarro indentation
5925
5926         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
5927         GTK_WIN_POS_CENTER_ON_PARENT. 
5928         Add "destroy with parent" setting, which means the window goes
5929         away with its transient parent.
5930         (gtk_window_get_default_accel_group): get the default accel group
5931         for the window.
5932         (gtk_window_set_destroy_with_parent): set/unset destroy with
5933         parent flag
5934         (gtk_window_read_rcfiles): invalidate icon set caches
5935         after reloading rcfiles 
5936
5937         * gtk/gtkenums.h (GtkWindowPosition): add
5938         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
5939         on its parent window when the dialog is mapped for the first time.
5940
5941         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
5942         a simple message dialog class
5943         
5944         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
5945         handler to emit response signal, and maybe later it would
5946         honor a hide_on_delete flag - though that isn't there yet.
5947         Set border width on the vbox to 2, so we get some padding.      
5948         Use a button box for the action area.
5949         (gtk_dialog_key_press): synthesize a delete event if Esc
5950         is pressed and the GtkWidget key press handler didn't 
5951         handle the escape key.
5952         (gtk_dialog_new_with_buttons): new function creates a dialog
5953         with some default buttons in it.
5954         (gtk_dialog_add_action_widget): add an activatable widget
5955         as a button in the dialog - you can also add a non-activatable
5956         widget by accessing the action area directly.
5957         (gtk_dialog_add_button): add a simple button - stock ID or 
5958         label - to the action area
5959         (gtk_dialog_response): emit response signal
5960         (gtk_dialog_run): block waiting for the dialog, return 
5961         the response. Override normal delete_event behavior, so that 
5962         delete_event does nothing inside gtk_dialog_run().
5963
5964         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5965         emitted when an action widget is clicked or the dialog gets
5966         delete_event
5967
5968         * gtk/gtk.h: add gtkmessagedialog.h
5969
5970         * gtk/Makefile.am: add gtkmessagedialog.[hc]
5971
5972 2000-10-18  Havoc Pennington  <hp@redhat.com>
5973
5974         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
5975         where any number of empty lines would get skipped
5976
5977         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5978         edge.
5979
5980         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5981         warning about invalid iterators (explain more thoroughly)
5982         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5983
5984         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5985         big
5986
5987         * demos/*.c: Add error handling
5988
5989         * gtk/gtktextbuffer.c: don't modify const iterators
5990
5991         * gtk/gdk-pixbuf-loader.c: Add full error handling here
5992
5993         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5994         on file load
5995
5996         * gtk/gtkiconfactory.c: Update to reflect addition of error
5997         handling to gdk-pixbuf loaders
5998
5999 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
6000
6001         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
6002         move to new modularized testgtk.
6003
6004 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
6005
6006         * gtk/gtktreeview.c: Draw the arrows correctly.
6007
6008         * gtk/gtktreemodel.c: Added user docs.
6009
6010         * gtk/gtk.h: remove gtktreedatalist.h.
6011
6012         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
6013         parent when generating my type.
6014
6015         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
6016         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
6017
6018 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6019
6020         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
6021         GtkTreeModel from object to interface.
6022
6023 2000-10-16  Havoc Pennington  <hp@redhat.com>
6024
6025         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
6026         compilation
6027
6028 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6029
6030         * gtk/gtktreeselection.c: Add API documentation to all public
6031         functions.
6032
6033         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
6034         functions.
6035
6036 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
6037
6038         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
6039         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
6040         docs to all public functions.
6041
6042         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
6043         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
6044         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
6045         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
6046         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
6047         issue.
6048
6049 2000-10-14  Robert Brady  <robert@suse.co.uk>
6050
6051         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
6052
6053 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
6054
6055         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
6056         values other then G_TYPE_STRING.
6057         * gtk/gtktreeselection.c: Minor commenting updates.
6058         * gtk/gtktreeview.c: Format updates.
6059
6060 2000-10-09  Tor Lillqvist  <tml@iki.fi>
6061
6062         * README.win32: Update.
6063
6064         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
6065         lines that had been deleted by mistake (?).
6066
6067         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
6068         also the case fg==white and bg==black (but still not randomly
6069         coloured cursors). Thanks to Wolfgang Sourdeau.
6070
6071         * gdk/win32/*.c: Silence gcc -Wall.
6072
6073         * gtk/gtk.def: Add missing entry points.
6074
6075         Fixes by Hans Breuer:
6076
6077         * gdk/makefile.msc
6078         * gdk/win32/makefile.msc: Update.
6079
6080         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
6081         some MSVC thing, presumably), cause breakpoint on failures. Add
6082         GDK_NOR case. Call g_log_set_always_fatal.
6083
6084         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
6085         should be pased by reference.
6086         
6087         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
6088         
6089         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
6090
6091         * gdk/win32/gdkevents-win32.c
6092         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
6093
6094         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
6095         implementation object.
6096
6097         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
6098         not just windows.
6099         
6100         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
6101         Use the wrapper object.
6102         
6103 2000-10-06  Havoc Pennington  <hp@redhat.com>
6104
6105         * Makefile.am (SRC_SUBDIRS): contrib subdir
6106
6107         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
6108         so it can be used in Xlib version
6109
6110         * demos/testpixbuf.c (update_timeout): error checking from 1.0
6111         tree
6112
6113         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
6114         change from 1.0 tree that returns first frame of animation
6115         if the loaded file is an animation.
6116
6117         * contrib: add new directory to hold stuff that comes with GTK+
6118         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
6119         
6120         * configure.in: add contrib/*
6121
6122 2000-10-05  Havoc Pennington  <hp@redhat.com>
6123
6124         * demos/testpixbuf-save.c: add pixbuf save test
6125
6126         * demos/Makefile.am: add testpixbuf-save.c
6127
6128 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
6129
6130         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
6131         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
6132         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
6133         * gtk/gtktreeselection.[ch]: Replaced
6134         "node_selected"/"node_unselected" signal with "selection_changed"
6135         signal.
6136
6137 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6138
6139         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
6140         tree widget.
6141
6142 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6143
6144         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
6145         drawing.
6146
6147 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
6148
6149         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
6150         Move list pointer forwards before removing item from
6151         list. (Crash reported by Salmaso Raffaele)
6152
6153         * gdk/gdkwindow.h: Remove spurious trailing ,
6154
6155         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6156         dependencies on uninstalled libraries, sorry folks.
6157
6158 2000-10-04  Havoc Pennington  <hp@redhat.com>
6159
6160         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6161         gtk/gtkiconfactory.c: Fix copyrights    
6162
6163         * demos/testpixbuf.c: add inline pixbuf test
6164         
6165 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6166
6167         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6168         Add gdk_window_iconify.
6169
6170         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6171         (gdk_window_set_geometry_hints): Add win_gravity
6172         to geometry structure.
6173
6174         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6175         Implement _NET_WM_PING.
6176
6177         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6178         Set _NET_WM_PID on the client leader.
6179
6180         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6181         Handle UTF-8 better.
6182
6183         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6184         UTF-8 better, set _NET_WM_NAME as well. Only set
6185         icon name if it hasn't previously been explicitely 
6186         set.
6187
6188 2000-10-03  Havoc Pennington  <hp@redhat.com>
6189
6190         * gtk/testtextbuffer.c: clean up trailing whitespace,
6191         add extensive tests for tag toggle iteration.
6192         
6193         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
6194         distance
6195
6196         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6197         optimize case where the tag root is on level 1
6198         (gtk_text_line_previous_could_contain_tag): attempt to implement
6199         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6200         functionality
6201
6202         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6203         Implement this, though not very efficiently.
6204
6205         * gtk/gtktextiterprivate.h: reformat
6206
6207         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6208         iterator
6209
6210         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6211         this to properly revalidate the iterators.
6212
6213         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6214         properly at the end of the line (and therefore on empty lines)
6215
6216         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6217         maybe we should return a value...
6218
6219 2000-10-03  Tor Lillqvist  <tml@iki.fi>
6220
6221         * config.h.win32: Guard definition of alloca(). glib.h now handles
6222         that.
6223
6224         * gdk/gdk.def
6225         * gtk/gtk.def: Add new entry points.
6226
6227         Changes just to make GTK+ build without errors on Win32. No hope
6228         of it working in its current state, though...:
6229         
6230         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
6231         some functions from the X11 backend, just to make GTK+ build.
6232
6233         * gdk/makefile.mingw.in
6234         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
6235         number. Add new object files.
6236
6237         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
6238         GetMessageTime to get timestamp (where on X11 uses
6239         gdk_x11_get_server_time()).
6240
6241 2000-10-02  Havoc Pennington  <hp@pobox.com>
6242
6243         * gtk/gtktextview.c: text_window_* weren't static and should have
6244         been.
6245         Start work on child widgets; not yet complete, syncing to 
6246         office computer.
6247
6248         * gtk/gtktextchild.h: change this to contain a public interface,
6249         starting work on child interfaces.
6250         * gtk/gtktextchildprivate.h: move private interfaces here
6251
6252         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
6253
6254         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
6255         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
6256         gtk/gtktextmark.c: copyright notices
6257
6258         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
6259         internal functions      
6260
6261         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
6262         internal function
6263
6264         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6265         Reformatting    
6266
6267 2000-09-30  Havoc Pennington  <hp@pobox.com>
6268
6269         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
6270         NULL start/end pointers
6271
6272         * gtk/gtktextbuffer.c: Write some docs
6273         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
6274         NULL, so you can just check whether there's a selection.        
6275
6276         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
6277         cleanup_line or segments_changed ourselves, it gets done 
6278         in unlink_segment
6279
6280         * gtk/gtktextmark.h:
6281         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
6282         
6283         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
6284
6285         * gtk/gtktextmark.c: delete some more old Tk cruft
6286
6287         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
6288         mark before removing it, so we can emit MARK_DELETED with a valid
6289         pointer.
6290         (gtk_text_buffer_mark_set): hold ref across signal emission
6291
6292         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
6293         whining about attempts to delete special marks
6294
6295         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
6296         underscore, since it's internal.
6297
6298         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
6299         now implemented in terms of iterators in gtktextiter.h
6300
6301         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
6302         New function, destructively sets contents of buffer. Also 
6303         a convenient way to clear the buffer by setting text to ""
6304
6305         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6306         multiline string literal
6307
6308         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6309         text changes.
6310
6311         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
6312         is not dereferenceable
6313         (gtk_text_iter_forward_lines): fix return value
6314
6315 2000-09-29  Havoc Pennington  <hp@redhat.com>
6316
6317         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6318
6319         * gtk/gtktextview.c: Implement drag thresholding; change functions 
6320         that set border window size to have nicer name
6321         (gtk_text_view_mark_set_handler):  Fix this to have the 
6322         right signature.
6323
6324         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6325
6326         * gtk/testtext.c: Update with API changes, put line numbers on 
6327         both sides.
6328         
6329         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6330         with this
6331
6332         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6333         pixbuf; delete a big block of #if 0 Tk code
6334
6335         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
6336         insert_pixmap with insert_pixbuf
6337
6338 2000-09-29  Martin Baulig  <baulig@suse.de>
6339
6340         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6341         confusion with the GdkPixbuf of the GNOME 1.x platform.
6342
6343 2000-09-29  Havoc Pennington  <hp@pobox.com>
6344
6345         * gtk/gtktextview.c: Implement the side windows.
6346
6347         * gtk/testtext.c: Implement simple line numbering in the 
6348         left side window; seems to make scrolling sloooow. Oops.
6349         Also, cursor blink is for some reason causing redraws
6350         of the line numbers. Should investigate...
6351
6352 2000-09-28  Havoc Pennington  <hp@redhat.com>
6353
6354         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
6355         scrolling child windows, and draw focus rectangle properly.
6356         
6357         (gtk_text_view_buffer_to_window_coords):
6358         Coordinate transformation to deal with all these freaking windows
6359         and offsets
6360         (gtk_text_view_window_to_buffer_coords): transform the other way
6361
6362         * gtk/testtext.c (create_buffer): Update to match Pango API change
6363
6364         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6365         anonymous tags
6366         (foreach_unref): don't emit remove signal from finalize, just
6367         set tag's parent to NULL
6368
6369 2000-09-26  Havoc Pennington  <hp@redhat.com>
6370
6371         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6372         Fix some warnings       
6373
6374 2000-09-26  Havoc Pennington  <hp@redhat.com>
6375
6376         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6377         headers into the private header list
6378
6379         * Makefile.am (pkgconfig_DATA): install pkg-config files
6380
6381         * configure.in: add pkg-config files
6382
6383         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6384
6385         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6386         outstanding icon caches on theme change.
6387
6388         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
6389         important types:
6390
6391         (GtkIconSource): Specification for creating a pixbuf 
6392         appropriate for a direction/state/size triplet from 
6393         a source pixbuf or filename
6394
6395         (GtkIconSet): List of GtkIconSource objects that are used to
6396         create the "same" icon (e.g. an OK button icon), and cache for
6397         rendered icons
6398
6399         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6400         up the icon set for a given stock ID.  GTK maintains a stack of
6401         GtkIconFactory to search, and applications or libraries can add
6402         additional icon factories on top of the stack
6403         
6404         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
6405         the set of GtkIconSource specified for a given stock ID into 
6406         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
6407         RcStyle, under the specified stock ID.
6408
6409         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6410         render_icon used to derive a GdkPixbuf from a GtkIconSource.
6411         This allows people to theme how prelight, insensitive, etc. are
6412         done.
6413
6414         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6415         icon factories for a style, and return the resulting 
6416         icon set if any.
6417
6418         (gtk_style_render_icon): Render an icon using the render_icon 
6419         method in the GtkStyleClass.
6420
6421         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
6422         Use the style for a given widget to look up a stock ID, get the
6423         icon set, and render an icon using the render_icon method 
6424         of the style
6425
6426         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6427         (contains information about a stock item), the built-in stock item
6428         IDs, and functions to add/lookup stock items.
6429
6430         * gtk/stock-icons/*: Stock icons that come with GTK
6431
6432         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6433         a button based on a GtkStockItem
6434         (gtk_button_new_accel): Takes a uline string and accel group, and
6435         installs the accelerator.
6436
6437         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6438         image-display widget.
6439
6440 2000-09-25  Havoc Pennington  <hp@redhat.com>
6441
6442         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6443
6444         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
6445         Fix a bug when removing node data, we didn't properly 
6446         re-splice the linked list after removing the data.
6447
6448         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
6449         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6450
6451         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6452
6453         * gtk/gtktextlayout.c (set_para_values): Set tab array 
6454         for the layout from the GtkTextTag.
6455
6456         * gtk/gtktexttypes.h: delete tab and search cruft, 
6457         remove g_convert() in favor of GLib version
6458
6459         * gtk/gtktexttypes.c: remove tab implementation from here,
6460         move to Pango
6461
6462         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
6463         tab stuff using new PangoTabArray from Pango
6464
6465         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6466         unused border_width stuff
6467
6468 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
6469
6470         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6471         glib) and now useless utf_to_latin1() latin1_to_utf()
6472
6473         * gtk/gtktextview.[ch]: Change ::move_insert and
6474         ::delete_text action signals to ::move and ::delete;
6475         create the signals with the right enumeration type,
6476         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6477         C-v bindings, change Home, End to move to beginning/end
6478         of line, Add C-Home C-End to move to beginning/end
6479         of buffer. Change ::cut_text to ::cut_clipboard, etc;
6480         combine ::scroll_text into ::move; use new GtkSelectionData
6481         functions to simplify DND text handling.
6482         
6483         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6484         deletion enumerations here, rename enumeration values to 
6485         be consistently plural.
6486
6487         * gtk/gtktextbuffer.c: Use new clipboard interfaces
6488         for cut/copy/paste and primary selection.
6489
6490         * gtk/gtktextbuffer.[ch]: Remove excess time and
6491         'interactive' arguments from cut/copy/paste;
6492         rename cut to cut_clipboard, etc; remove
6493         gtk_text_buffer_get_clipboard_contents().
6494
6495         * gtk/gtktextlayout.[ch]: Add 
6496         gtk_text_layout_move_iter_to_line_end() to move the iter to 
6497         line ends.
6498
6499         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6500         Functions to set or get a UTF-8 string on the selection
6501         data.
6502
6503         * gtk/gtkclipboard.[ch]: New, simplified selection handling
6504         interfaces.
6505
6506         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6507         created widgets - one of these is useless if we don't.
6508
6509         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6510         a public function clear all targets registered for the
6511         widget.
6512
6513         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6514         Never call gtk_widget_realize() - that was just asking
6515         for bizarre side-effects.
6516
6517         * gtk/gtkselection.c (gtk_selection_owner_set): Call
6518         gdk_selection_owner_set even if the widget is the
6519         same so that we reliably update the timestamp on
6520         the server.
6521
6522         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
6523         gdk_x11_get_server_time() function.
6524         
6525         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6526         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6527         Add some tricky filtering on serial numbers for
6528         selection clear events to fix up long-standard
6529         race condition FIXME's in gtkselection.c.
6530
6531         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6532         routines to convert from utf8 to compound text or
6533         STRING and from a text property to UTF-8.
6534
6535         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
6536         a convenience function gdk_get_current_event_time().
6537
6538         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6539         and free selection_data->data properly
6540
6541 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
6542
6543         * gtk/gtkthemes.c: Remove some unecessary includes.
6544
6545 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
6546
6547         * gtk/gtktextdisplay.c
6548         * gtk/gtktextlayout.c
6549         * gtk/gtktexttag.c
6550         * gtk/gtktexttag.h
6551         * gtk/testtext.c: Change the overstrike property to strikethrough,
6552         to closer match pango.
6553
6554 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
6555
6556         * gtk/gtktextview.c: Fix up visibility so that focus,
6557         cursor_visible and blink interact properly.  Reenable cursor blink
6558         which had been roughly disabled. Make blink and focus
6559         properly per-view.
6560
6561         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
6562         Add a flag for whether to display insertion cursor and
6563         a function to set the flag.
6564
6565         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
6566         get_line_y() to get_line_yrange(), to be a bit more generally
6567         useful.
6568
6569 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
6570
6571         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
6572           do stop_navigating_submenu, to clear last timeout properly.
6573           Also in gtk_menu_motion_notify move ignore_enter above
6574           the conditional to make it always happen as suggested by Owen
6575
6576 2000-09-07  Tor Lillqvist  <tml@iki.fi>
6577
6578         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
6579
6580         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
6581         w32api headers.
6582
6583         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
6584         declarations.
6585
6586         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
6587         (gdk_win32_get_colormap): A line had been deleted by mistake.
6588
6589         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
6590         (gdk_event_translate): Handle more virtual keycodes to be able to
6591         generate GDK events for Control-comma, Control-period, etc.
6592
6593         * gtk/gtk.def: Add some missing entry points.
6594
6595 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
6596
6597         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
6598         Doc comment fixing. (Mostly non-matching parameter names.)
6599
6600         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
6601         comments a little to avoid looking like a doc comment.
6602
6603         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
6604         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
6605         conversions be changed to GError?)
6606
6607         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
6608         Move private #defines into .c file.
6609
6610         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
6611         order of argument addition, remove duplicates.
6612
6613         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
6614         parent class is FrameClass, not BinClass.
6615
6616         * gtk/gtk.h: Add gtkinvisible, which was missing.
6617         (It's occasionalyl useful for client apps, if seldom.)
6618
6619         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
6620         #define.
6621
6622 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
6623
6624         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6625         coordinates when creating window, instead of GDK-space
6626         coordinates. (Avoid BadValue on too large windows.)
6627
6628 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6629
6630         * configure.in (use_mmx_asm): Remove conftest* after use along the
6631         lines of AC_TRY_COMPILE.        
6632         
6633         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6634         of g_dirname, which is deprecated.
6635         (gtk_rc_parse_any): Removed calls to
6636         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6637
6638         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6639         Removed calls to g_hash_table_{freeze,thaw}, as they are
6640         deprecated now.
6641
6642         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6643         instead of g_basename.
6644         
6645 2000-09-04 Elliot Lee <sopwith@redhat.com>
6646         
6647         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6648         ANSI warning.
6649
6650 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
6651
6652         * gtk/gtkwidget.h:  Add some documenting comments about 
6653           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6654           just as owen said on irc.
6655
6656         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
6657           set HAS_DEFAULT.  Only set it if there isn't another window
6658           holding it (a focus window which RECEIVES_DEFAULT) and only unset
6659           it if the widget is not the focused window with RECEIVES_DEFAULT.
6660           This fixes weird double default bugs in dialogs which has things
6661           call gtk_window_set_default at times.
6662
6663 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
6664
6665         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6666         Nils Barth and David Santiago to improve submenu
6667         navigation. The patch does this by creating a triangular
6668         region from the point where the pointer leaves the
6669         menu to the submenu.  While the pointer is in
6670         that region and a timeout has not expired, events 
6671         that would cause the active submenu to change are
6672         ignored.
6673
6674 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
6675
6676         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6677         moving a toplevel window immediately after sizing it would
6678         result in it being sized back to the old size since 
6679         impl->width, impl->height aren't updated until we hear
6680         back from the server. There is still a (longstanding) bug
6681         here that gdk_window_get_size() will give the wrong size
6682         until we do hear back.
6683
6684 2000-08-31  Havoc Pennington  <hp@redhat.com>
6685
6686         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
6687         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
6688         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6689         Rename GtkTextStyleValues to GtkTextAttributes
6690
6691 2000-08-31  Havoc Pennington  <hp@pobox.com>
6692
6693         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
6694         for rapid testing whether an iterator is the end iterator
6695         (gtk_text_btree_new): init end line cache
6696         (gtk_text_line_is_last): use fast cached line to 
6697         see if we're the last line.
6698         (get_last_line): use cached line here too, should 
6699         speed up some random unrelated code.
6700         
6701 2000-08-30  Havoc Pennington  <hp@pobox.com>
6702
6703         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6704         signals.
6705
6706         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6707         delete_text signals. This allows the signals to be used for
6708         implementing undo.
6709
6710         * gtk/gtktextbuffer.c: Change signal handler signatures; 
6711         provide "interactive" argument when emitting insert_text or
6712         delete_text signal.
6713         
6714 2000-08-30  Havoc Pennington  <hp@pobox.com>
6715
6716         * gtk/gtktextbuffer.c: Docs
6717
6718 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
6719
6720         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6721         from switch statements, since Tor removed the enumeration
6722         value.
6723         
6724         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6725         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6726
6727 2000-08-29 Elliot Lee <sopwith@redhat.com>
6728         * */*.h: Use G_GNUC_CONST.
6729
6730 2000-08-27  Havoc Pennington  <hp@pobox.com>
6731
6732         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6733         minor indentation fixes, inserted some FIXME about stuff I
6734         realized was broken while documenting it.
6735         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6736         GTK convention  
6737
6738 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
6739
6740         * gtk/testgtk.c (create_styles): Fix double free of
6741         font desc.
6742
6743 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6744
6745         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6746         
6747         * gtk/testgtk.c (create_styles): Add a test for modifying
6748         the style through gtk_widget_modify_*.
6749
6750         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6751         a function to get the current modifier style.
6752
6753         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6754         of the passed in GtkRcStyle instead of ref'ing it.
6755
6756         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6757
6758 2000-08-20  Tor Lillqvist  <tml@iki.fi>
6759
6760         * gdk/gdkimage.h
6761         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6762         shared memory image+pixmap GdkImage type, or
6763         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6764         I am dropping that.
6765
6766         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6767         actually call gtk_init_abi_check(), passing also
6768         sizeof(GtkWindow). Ditto for gtk_init_check(). 
6769
6770         * gtk/gtk.def
6771         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6772         New functions, used to check that the GTK+-using code has been
6773         compiled using the correct compiler and switches. In particular,
6774         with gcc one has to use the -fnative-struct switch as GTK+ is
6775         compiled with that.
6776
6777 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
6778
6779         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6780         ->prev fields when merging lists. (Found simultaneously
6781         by Pawel Salek and Jakub Jelinek)
6782
6783 2000-08-12  Tor Lillqvist  <tml@iki.fi>
6784
6785         * gdk/gdk.def
6786         * gtk/gtk.def: Add missing entries.
6787
6788         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6789         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6790
6791         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6792         function. Dummy implementation at this point.
6793
6794         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6795         rules. Undefine GTK_COMPILATION when compiling the test programs.
6796         
6797         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6798
6799 2000-08-11  Tor Lillqvist  <tml@iki.fi>
6800
6801         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6802         to convert back and forth from UTF-8 and the "system" (or "current
6803         locale") charset when necessary. Indentation/spacing cleanup.
6804
6805 2000-08-10  Havoc Pennington  <hp@redhat.com>
6806
6807         * Makefile.am (snapshot): Change the format of the snapshot
6808         version to match glib
6809
6810         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6811         from EXTRA_DIST since it doesn't seem to exist
6812
6813 2000-08-10  Tor Lillqvist  <tml@iki.fi>
6814
6815         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6816         version of the directory name (not the UTF-8 one) when building
6817         the path name to stat().
6818
6819 2000-08-03  Elliot Lee  <sopwith@redhat.com>
6820
6821         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6822         PANGO_ATTR_SHAPE set.
6823
6824 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
6825
6826         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6827         Peter Osterlund to simplify the code while keeping the
6828         functionality the same.
6829
6830 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
6831
6832         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6833         is_viewable() test further inside the function, since removing the 
6834         window from the redraw list without clearing ->update_area
6835         was also very broken.
6836
6837 2000-08-02  Tor Lillqvist  <tml@iki.fi>
6838
6839         * configure.in: Check for <unistd.h>.
6840
6841 2000-08-01  Martin Baulig  <baulig@suse.de>
6842
6843         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6844         to display the message that this is a development version of GTK+.
6845
6846 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
6847
6848         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6849         was depending on widget->allocation instead of the width of text_area,
6850         which was incorrect for subclasses like GtkSpinButton.
6851
6852         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6853         with width == 1 tests that should be width == -1.
6854
6855 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
6856
6857         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
6858         (broken, Elliot, every single window blank on X) custom code with call
6859         to gdk_window_is_viewable() which a) prevents code duplicate and
6860         b) works. 
6861
6862 2000-07-31  Elliot Lee  <sopwith@redhat.com>
6863
6864         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6865         to get the GDK_PARENT_ROOT() macro to work.
6866         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6867         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6868         of, windows that aren't shown.
6869         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6870         pointer grab stuff.
6871
6872 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
6873
6874         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6875           s/gtk_main_iteration/g_main_iteration/
6876
6877           Did this already in change:
6878                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
6879           don't know how it got reverted.
6880
6881 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
6882
6883         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6884         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6885
6886         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6887         not gdk_pixbuf.
6888
6889 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
6890
6891         * configure.in,po/{sp,sr}.po: Added Serbian files
6892
6893 2000-07-30  Tor Lillqvist  <tml@iki.fi>
6894
6895         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6896
6897         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6898         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6899         GIOChannel implementation.
6900
6901         * gdk/win32/gdkinput.c
6902         * gdk/win32/gdkpango-win32.c: Update license name here, too.
6903
6904         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6905         definition to match prototype.
6906
6907         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6908
6909 2000-07-27  Elliot Lee  <sopwith@redhat.com>
6910
6911         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6912         function, to allow handling image formats that cannot be detected
6913         by looking at content alone.
6914
6915 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
6916
6917         * docs/tutorial/*.gif *.jpg *.eps
6918           Update these to the same look-n-feel.
6919           Why does including images in DocBook suck so badly?
6920
6921 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
6922
6923         * gtk/gtktable.c: applied patch from Phil Thompson
6924         <phil@river-bank.demon.co.uk> that enables space settings for
6925         the last row/columns as well.
6926
6927 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
6928
6929         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6930         updates the license headers to the GNU Lesser General Public License,
6931         as well as updating the copyright year to 2000.
6932
6933 2000-07-26  Robert Brady  <rwb197@zepler.org>
6934
6935         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6936           and po/Makefile, was installing and looking for them under gtk20
6937           and gtk2 respectively.
6938
6939 2000-07-25  Havoc Pennington  <hp@redhat.com>
6940
6941         * gtk/testtext.c: Comment out some stuff that depends on the rest
6942         of my patches.
6943
6944 2000-07-25  Havoc Pennington  <hp@redhat.com>
6945
6946         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6947         buffer
6948
6949 2000-07-25  Havoc Pennington  <hp@redhat.com>
6950
6951         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6952         widget changes.
6953
6954         * gtk/gtktextview.h: To be consistent with usage of "line"
6955         throughout the API to mean "newline-terminated thingy", change
6956         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6957         to MOVEMENT_LINE.
6958
6959         (GtkTextView): Add flags for default editability, and whether to
6960         show the cursor. Add functions to get/set that. Add 
6961
6962         (gtk_text_view_get_iter_location): new function
6963
6964         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6965         gtktextlayout.h
6966         (g_convert): Add g_convert temporarily, will go in glib in a bit
6967         
6968         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6969         GtkTextTagTableForeach instead of brokenly using GHFunc.
6970         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6971
6972         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6973         moved to public header.
6974
6975         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6976         "invisible", since "elide" was a bad name.
6977         (gtk_text_tag_get_priority): Added
6978
6979         (GtkTextStyleValues): put this in public header, along with
6980         functions to use it.
6981
6982         * gtk/gtktextmarkprivate.h: Include more headers, since we no
6983         longer include gtktextbtree.h.
6984
6985         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6986         gtk_text_mark_deleted
6987
6988         * gtk/gtktextlayout.h: Don't include the "really private" headers,
6989         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6990         to make this possible. Now we only need to install
6991         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6992         (However the Makefile.am isn't changed yet because of the
6993         logistics of merging gtk-hp-patches piecemeal)
6994
6995         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6996         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6997         gtk_text_iter_get_line is now used in the public API for a
6998         different purpose.
6999
7000         * gtk/gtktextiter.h: Clean up function names to be more
7001         consistent. Always call char offset "offset" and byte index
7002         "index". A "line" is always a line number. 
7003
7004         (gtk_text_iter_is_last): new function, more efficient than 
7005         the existing way to check
7006         (gtk_text_iter_is_first): new function, also more efficient
7007
7008         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
7009
7010         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
7011         gtk_text_iter_forward_char, etc.
7012
7013         (gtk_text_iter_forward_to_tag_toggle): Renamed from
7014         forward_find_tag_toggle, since this isn't a linear search
7015
7016         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
7017
7018         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
7019         New functions, search for a buffer substring.
7020
7021         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
7022         interactive and default editable (since we need to store that info
7023         until we receive the selection data).
7024
7025         Remove all the _at_char and at_line etc. versions of functions;
7026         only have iterator versions.
7027
7028         Add _interactive() versions of functions, that consider the
7029         editability of text. (FIXME add interactive flag to the 
7030         insert/delete signals per Darin's suggestion)
7031
7032         (gtk_text_buffer_get_tag_table): new function, demand-creates the
7033         tag table if necessary
7034
7035         Remove declaration of gtk_text_buffer_get_iter_from_string
7036
7037         (_gtk_text_buffer_get_btree): private/internal function, added.
7038         
7039
7040         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
7041         (gtk_text_line_is_last): new function
7042
7043 2000-07-25  Havoc Pennington  <hp@redhat.com>
7044
7045         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
7046         using GtkProgressBar. See Changes-2.0.txt for details.
7047
7048         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
7049         "pulse_step" which are the equivalent of
7050         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
7051         Implement new API.
7052         
7053         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
7054         (use_text_format) to mark whether text set on the progress bar is
7055         a format string. Deprecate entire GtkProgress interface.
7056
7057         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
7058         (gtk_progress_build_string): make this a no-op if use_text_format
7059         is FALSE
7060
7061         * docs/Changes-2.0.txt: Describe progress bar changes.
7062
7063 2000-07-25  Tor Lillqvist  <tml@iki.fi>
7064
7065         * Makefile.am: Include the build directory.
7066
7067         * configure.in: Generate build/Makefile, build/win32/Makefile,
7068         gdk/, gdk/win32/, and gtk/makefile.mingw.
7069
7070         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
7071         Add GETTEXT_PACKAGE.
7072         
7073         * gdk/gdk.def
7074         * gtk/gtk.def: Updates.
7075
7076         * gdk/gdkfont.h
7077         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
7078         need them any longer.
7079
7080         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
7081
7082         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
7083         PANGOWIN32_LIBS and gdk_pixbuf.
7084
7085         * gdk/win32: Compiles, but no doubt doesn't work at all.
7086
7087         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
7088
7089         * gdk/win32/gdkinput.c: New file, temporarily.
7090         
7091         * gdk/win32/gdkinput-win32.h: New file
7092
7093         * gdk/win32/gdkinputprivate.h: Remove.
7094
7095         * gdk/win32/gdkpango-win32.c: New file.
7096
7097         * gtk/makefile.mingw.in: New file
7098
7099         * gtk/makefile.cygwin: Removed
7100         
7101         * gtk/Makefile.am: Update accordingly.
7102
7103         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
7104         made externally visible.
7105
7106         * gtk/gtkmain.c: Use it.
7107         
7108         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
7109         is enough.
7110
7111         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
7112
7113 2000-07-24 Elliot Lee <sopwith@redhat.com>
7114         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
7115         individual backends already.
7116         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
7117         again. Yes, there really is a good reason for this, if you are using the gdkregion
7118         internals, and if you're not, why do you care?
7119         * gdk/gdkwindow.c: Fix inverted condition
7120         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
7121         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
7122         * gtk/gtkrange.c: Redraw trough when moving.
7123         * gtk/gtktypeutils.c: Fix warning by adding const cast.
7124         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
7125
7126 2000-07-23  Tor Lillqvist  <tml@iki.fi>
7127
7128         * configure.in: Check for mkstemp and sigsetjmp. Output
7129         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
7130
7131         More work on GDK for Win32. Still in an intermediate state.
7132
7133         * gdk/makefile.cygwin
7134         * gdk/win32/makefile.cygwin: Removed.
7135         
7136         * gdk/makefile.mingw.in
7137         * gdk/win32/makefile.mingw.in: New files.
7138
7139         * gdk/Makefile.am
7140         * gdk/win32/Makefile.am: Generate and distribute them.
7141
7142         * gdk/win32/gdkwindow-win32.h
7143         * gdk/win32/gdkdrawable-win32.h
7144         * gdk/win32/gdkpixmap-win32.h: New files.
7145
7146         * gdk/win32/gdkcolor-win32.c
7147         * gdk/win32/gdkcursor-win32.c
7148         * gdk/win32/gdkdrawable-win32.c
7149         * gdk/win32/gdkgc-win32.c
7150         * gdk/win32/gdkimage-win32.c
7151         * gdk/win32/gdkprivate-win32.h
7152         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
7153         Rename fields and variables called xcursor, xid, etc (these names
7154         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7155
7156 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7157
7158         * gtk/gtkentry.[ch]: Fix some problems with vertical
7159         alignment.
7160
7161         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7162         char/byte confusion.
7163
7164 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7165
7166         * gtk/gtktextview.c (changed_handler): Fix bug where
7167         redraw wasn't being done properly when height of
7168         dirty region changed.
7169
7170         * demos/Makefile.am: Remove various references to
7171         -lgmodule
7172
7173 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7174
7175         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7176         PangoAttrShape to reserve space for pixmaps, add 
7177         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7178         in the display functions.
7179         
7180         * gtk/testgtk.c (create_layout): Set some more exotic
7181         scrolled window options
7182
7183         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7184         Add function to set the shadow type of a window, to allow
7185         putting a shadow around widgets such as GtkLayout or GnomeCanvas
7186         which don't draw their own frame.
7187
7188 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
7189
7190         * docs/tutorial/package-db-tutorial.sh: New file for
7191           packaging DocBook format tutorial
7192
7193 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
7194
7195         * docs/tutorial/gtk-tut.sgml: Minor updates
7196
7197         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7198
7199 2000-07-19  Tor Lillqvist  <tml@iki.fi>
7200
7201         * gtk/gtksignal.c: Fix C++ comment.
7202
7203         * gtk/gtkimmulticontext.c
7204         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7205         don't return value from void functions.
7206
7207         * gtk/gtk.def: Add gtk_rc_style_unref.
7208
7209 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7210
7211         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7212         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7213         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7214         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7215         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7216         gtk/gtktypeutils.h: Include files outside of the extern "C"
7217         block. Makes some C++ compiler happy. Reported by Denis Vakatov
7218         <vakatov@peony.nlm.nih.gov>.
7219
7220 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
7221
7222         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
7223           Completes first pass. Hurrah!
7224
7225 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
7226
7227         * docs/tutorial/gtk-tut.sgml: More clean ups.
7228
7229 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
7230
7231         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
7232         paint the background of the text area which was accidentally
7233         removed at some point.
7234
7235         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
7236           
7237          - Move most of the functionality from the theme vtable
7238            into GtkRcStyleClass and GtkStyleClass. The moved
7239            vtable functions were changed a bit in the move to
7240            work better in their new home.
7241
7242          - Get rid of the engine and engine_data fields from
7243            GtkRcStyle and GtkStyle; instead the theme
7244            engine derives theme-specific subclasses of GtkRcStyle
7245            and GtkStyle
7246
7247          - Add extra dlsym() found entry point to themes,
7248            theme_create_rc_style().
7249
7250         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
7251         in gtk_style_real_copy.
7252
7253         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
7254         to register a type associated with an engine. (The engine
7255         won't be unloaded as there is an instance of the type.)
7256
7257
7258 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
7259
7260         * docs/tutorial/gtk-tut.sgml: Clean ups.
7261
7262 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
7263
7264         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
7265           of cleaning up to do.
7266
7267 2000-07-15  Tor Lillqvist  <tml@iki.fi>
7268
7269         * gdk/testgdk.c: New file, quick hack to test backends for
7270         pixel-by-pixel correctness of the most simple graphic operations.
7271
7272 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
7273
7274         * Really release 1.3.1
7275         
7276         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
7277         include structure.
7278
7279 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
7280
7281         * Released 1.3.1
7282
7283 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
7284
7285         * gtk/gtktextlayout.c: use FALSE for size_only most
7286         of the time when calling gtk_text_layout_get_line_display()
7287         to avoid causing double reshapes when a redraw follows
7288         immediately after.
7289
7290 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
7291
7292         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
7293         appropriate region and gdk_window_process_updates() so trough
7294         updating doesn't lag behind the window being scrolled.
7295
7296         * gdk/gdkgc.c: Make parent_class pointer static.
7297          
7298 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
7299
7300         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7301         include <string.h>.
7302          
7303         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7304         cut-and-paste error in computing memory offset for 4 channels.
7305
7306 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
7307
7308         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7309         gtk_rc_append_default_pixmap_path(), since it wasn't
7310         adding an interesting path and we don't have a meaningful
7311         default for this value.
7312
7313 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
7314
7315         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7316         gtk-config to gtk-config-2.0 move gtk_.m4 to
7317         gtk-2.0.m4
7318
7319         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7320         gdk/Makefile.am demos/Makefile.am: Change 
7321         library names to libgtk-1.3.la, etc, so that we
7322         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7323
7324         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7325         gdk/Makefile.am gdk/x11/Makfile.am
7326         Move include files into /usr/include/gtk-2.0, 
7327         /usr/lib/gtk-2.0/include/
7328          
7329         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7330         gtk/gtkintl.h: Change package for gettext from 
7331         gtk+ to gtk20. Put hack in autogen.sh to modify
7332         po/Makefile.in.in after gettextize to make this
7333         possible.
7334
7335         * gtk+.spec: Some updates, not tested.
7336
7337         * gdk-pixbuf/Makefile.am: Move loaders into
7338         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7339
7340         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7341         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7342         to THEMENAME/gtk-2.0/. Move engine directory  to
7343         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7344         
7345 2000-07-12  Tor Lillqvist  <tml@iki.fi>
7346
7347         Win32 changes, still doesn't build though.
7348
7349         * gdk/makefile.cygwin
7350         * gdk/win32/makefile.cygwin
7351         * gtk/makefile.cygwin: Updates.
7352
7353         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7354         default values for fg and bg pixel as X11 does (0 and 1), not
7355         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7356         Use 0 for pen width by default (treated as 1 anyway later, but for
7357         apps that might check the value in the GdkGC).
7358         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7359         interface to gdk_gc_predraw and _postdraw.
7360
7361         * gdk/win32/gdkwin32.h
7362         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7363
7364         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7365         extraneous semicolon.
7366
7367         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7368
7369         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7370         not the Win32 bitspixel value.
7371
7372         * gdk/win32/gdkcc-win32.c:
7373         * gdk/win32/gdkcolor-win32.c 
7374         * gdk/win32/gdkprivate-win32.h
7375         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7376         GDK object structure.
7377
7378 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
7379
7380         * docs/tutorial/gtk_tut_12.es.sgml (name): 
7381         * docs/tutorial/gtk_tut_it.sgml (name): 
7382         * docs/tutorial/gtk_tut_fr.sgml (name): 
7383         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7384         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7385
7386 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
7387
7388         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7389           small changes.
7390
7391 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
7392
7393         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7394         a bug here, never been here and never fixed anything ;(
7395         (don't segfault if tree->root_tree is NULL, which happens prior
7396         to widget realization, but puke instead).
7397
7398 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
7399
7400         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7401         add the necessary tokens.
7402
7403         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7404         (gtk_rc_style_to_style): copy thicknesses.
7405         (gtk_rc_init_style): apply thicknesses.
7406         (gtk_rc_parse_style): parse xthickness and ythickness.
7407
7408         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7409
7410         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
7411         (gdk_window_new): 
7412         (_gdk_windowing_window_init): 
7413         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
7414         (gdk_pixmap_create_from_data): 
7415         (gdk_bitmap_create_from_data): 
7416         (gdk_pixmap_new): 
7417         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7418         (gdk_image_new): 
7419         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
7420         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
7421         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7422         (gdk_colormap_get_system): 
7423         (gdk_colormap_new): 
7424         * gdk/gdkwindow.c (gdk_window_init): 
7425         * gtk/gtkstyle.c (gtk_style_new):
7426         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7427         * gdk/gdkpixmap.c (gdk_pixmap_init): 
7428         * gtk/gtkrc.c (gtk_rc_style_new):
7429         use g_object_new() instead of g_type_create_instance() which
7430         is a private function for fundamental type implementations.
7431
7432 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
7433
7434         * configure.in: Add check for db2html
7435
7436 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
7437
7438         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
7439         hack to set glib_debug_objects based on gtk_debug_flags.
7440
7441 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
7442
7443         * INSTALL.in: Update the Prerequisites section.
7444
7445         * Makefile.am demos/Makefile.am docs/Makefile.am
7446         docs/tutorial/Makefile.am gdk/x11/Makefile.am
7447         gdk/linux-fb/Makefile.am: Dist fixes
7448
7449 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
7450
7451         * NEWS: 10,000 foot view of 1.3.1 changes.
7452
7453 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
7454
7455         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7456         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7457         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7458         gdk/x11/gdkmain-x11.c: 
7459
7460         Patch from George Lebl to add a GdkGrabStatus enumeration to use
7461         as a return value of gdk_*_grab(). Previously, we just
7462         returned the X11 values directly.
7463
7464 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
7465
7466         * gdk/x11/Makefile.am: Patch from George Lebl to 
7467         install all the headers in the right place.
7468
7469 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
7470
7471         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7472           initial conversion to DocBook.
7473
7474 2000-07-04  Tor Lillqvist  <tml@iki.fi>
7475
7476         * README.win32: Improve a bit.
7477
7478         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7479         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7480         Alt+0nnn on the numpad (used to enter characters by numeric code
7481         from current DOS or ANSI codepage) working correctly, as in other
7482         Windows apps.
7483
7484         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7485         same argument validity tests as in X11 version.
7486         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7487
7488         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7489         definitions in case missing from headers.
7490
7491         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7492         destroy the window-specific cursor.
7493         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7494         calling GetModuleHandle(NULL).
7495         (gdk_window_set_cursor): Reworked to always copy the passed cursor
7496         with CopyCursor before setting it as the window-specific
7497         cursor. It is OK for the caller to destroy the GdkCursor (and thus
7498         also its Windows cursor) after calling this function. Destroy any
7499         previous window-specific cursor.
7500
7501 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
7502
7503         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
7504         font charset is iso8859-1, not iso-8859-1.
7505
7506 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
7507
7508         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7509         Use g_get_charset() instead of g_get_codeset().
7510
7511         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
7512         Comment out some strdup'ing functions to keep timj
7513         happy until we finish fighting this out.
7514
7515 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
7516
7517         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7518         <= width or height.
7519
7520         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7521         from 1.2 for parent/child states.
7522
7523         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7524         of typos.
7525
7526         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7527         event structures, replace with a generic axes field. Replace 
7528         deviceid/sourec with GdkDevice *device.
7529
7530         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7531         to extract particular axis use value from event. (Also
7532         can be used for normal X/Y.)
7533
7534         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7535         allow for arbitrary number of axes, namespace everything
7536         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7537         everywhere.
7538
7539         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
7540         Get rid of the gdk_input_vtable setup if favor of simply
7541         defining the functions in gdkinput-none/gxi/xfree.c in
7542         a similar fashion to the way that the port structure is 
7543         done.
7544
7545         * gtk/gtkdnd.c: Fix fields of synthesized button press event
7546         for new event structures. 
7547
7548         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
7549         new device interfaces.
7550
7551 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
7552
7553         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
7554         set the initial text.
7555
7556         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
7557         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
7558         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
7559         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
7560
7561         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7562         pango_layout_set_font_description to simplify.
7563
7564 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
7565
7566         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7567         pango_layout_set_font_description to simplify.
7568
7569 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
7570
7571         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
7572         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
7573         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
7574
7575         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
7576         PANGO_PIXELS() macro.
7577
7578 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
7579
7580         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
7581         that returns a PangoContext owned by the widget and updated to
7582         match future changes in the widget. Also, make 
7583         gtk_widget_create_pango_layout() use this context. If we ever
7584         add a ::changed signal to PangoContext, this will make things
7585         much more convenient. 
7586
7587         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
7588         in the appropriate places instead of destroying the layouts and
7589         creating new ones.
7590
7591         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
7592         in a few strategic places.
7593
7594 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
7595
7596         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
7597         gtk_widget_size_request() on reparented child, if one. Otherwise,
7598         queue_resize() on the child never results in it getting size-requested
7599         at all.
7600
7601         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
7602         in option menus, so that (with luck) people won't copy it into
7603         their apps in the future.
7604
7605         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
7606         to gtk_option_menu_calc_size. This isn't perfect, but should fix
7607         a lot of problems with changing the size of the menu's menu
7608         items after adding it to the option menu.
7609
7610         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
7611
7612         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
7613         the text direction for a widget changes.
7614
7615         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
7616         ::direction_changed to get rid of various hacks.
7617
7618 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
7619
7620         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
7621         name.
7622
7623 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
7624
7625         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7626         flag to the structure. Do not call XFreePixmap on pixmaps created
7627         by gdk_pixmap_foreign_new().
7628
7629 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
7630
7631         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7632         value using GdkRGB functionality given GdkColormap and GdkColor.
7633         (name not final, waiting for inspiration.)
7634         
7635         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7636         set the foreground/background of a GC using the GC's colormap
7637         and GdkRGB. (name not final, waiting for inspiration.)
7638
7639         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
7640         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7641
7642         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7643         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7644         purely a function of the corresponding colormap. Make
7645         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7646
7647         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7648         gdk_pixbuf_*create_from_xpm_* in terms of
7649         gdk_pixbuf_new_from_xpm_data(), move into platform independent
7650         code.
7651
7652         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7653         advantage of the new draw_rgb_32_image_dithalign.
7654
7655         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7656
7657         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7658         on each created GC.
7659
7660         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7661
7662         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7663         which we initialize from the drawable when the GC is created,
7664         if the drawable has a colormap.
7665
7666         * gdk/x11/gdkgc-x11.c: include string.h for memset.
7667
7668         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7669
7670         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7671
7672 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
7673
7674         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7675         actually returning expose events, make sure to set
7676         the count field properly.
7677
7678         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7679         accidentally reintroced bug which always cleared
7680         the graphics_exposures value. 
7681
7682 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
7683
7684         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7685
7686 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
7687
7688         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7689
7690 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
7691
7692         * docs/faq/gtk-faq.sgml: Start of Section 6.
7693
7694 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
7695
7696         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7697         
7698         (Fixes problem with drawing childless frames. Pointed out
7699         by and a first patch from Anders)
7700         
7701         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7702         compute a child_allocation, even if we don't have a child.
7703
7704         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7705         Always chain to the parent's impl, even if we don't have a child.
7706
7707 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7708
7709         * gdk/gdkrgb.c: If possible, create only a single shm segment and
7710         use multiple parts of it instead of creating a bunch of separate
7711         segments, since the maximum number of segments per system is not
7712         large. (This might be worth backporting to GTK+-1.2.x if we make a
7713         new release )
7714
7715         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7716         structure in preparation for per-colormap GdkRGB.
7717
7718         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7719         to False when we get EINVAL from shmget so that the caller of
7720         gdk_image_new can retry with a smaller segment size.
7721
7722 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
7723
7724         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7725
7726 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
7727
7728         * configure.in: make the current version number 1.3.1 (binary age 0,
7729         interface age 0).
7730         
7731         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7732         gtkcompat.h is all we want.
7733
7734         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7735         GLib primitive types. fixed g_type_register_fundamental() argument
7736         ordering.
7737
7738         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7739         compiles.
7740
7741         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7742         object code cleanup, comment trigraph fixes, etc...
7743
7744 2000-06-23  Havoc Pennington  <hp@redhat.com>
7745
7746         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
7747         instead of making up a bogus name for first_para_mark
7748
7749         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
7750         0 as a context ID
7751
7752 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
7753
7754         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7755
7756 2000-06-21  Havoc Pennington  <hp@pobox.com>
7757
7758         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7759         we didn't check window->bg_pixmap != GDK_NO_BG.
7760
7761         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7762         gdk-pixbuf
7763
7764 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
7765
7766         * docs/faq/gtk-faq.sgm: Move file to here.
7767           TODO: Update Makfile.am 
7768
7769 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
7770
7771         * docs/gtk-faq.sgm: Add Section 2
7772
7773 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
7774
7775         * docs/gtk-faq.sgm: New file. Start of DocBook
7776           version of the FAQ.
7777
7778 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
7779
7780         * configure.in (GDK_PIXBUF_MAJOR): Define version
7781         numbers for GDK_PIXBUF_*, as they get substituted
7782         into a header file. Need to consider versioning
7783         for gdk-pixbuf more carefully later.
7784
7785 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7786
7787         Work with srcdir != builddir.   
7788         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
7789         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7790         * demos/testpixbuf.c: Likewise.
7791         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7792         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
7793         <gdk/x11/gdkx.h>.
7794         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
7795         "gdk-pixbuf.h".
7796         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7797
7798 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
7799
7800         * TODO.xml: Change 1.4 version numbers to 2.0.
7801
7802 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
7803
7804         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7805         fixups to GTK+ standard.
7806
7807 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
7808
7809         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7810         gdk-pixbuf.
7811
7812         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7813         fixups for GObject.
7814
7815         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
7816         gdk-pixbuf with GDK dependencies moved into GDK.
7817         
7818         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7819         move gdk-pixbuf-loader here until GObject has signals.
7820
7821         * demos/: New directory of demos. Move demos from
7822         gdk-pixbuf here.
7823
7824         * demos/pixbuf-init.c: Small bit of code to check for
7825         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7826         set GDK_PIXBUF_MODULEDIR appropriately.
7827
7828         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7829         define which no longer makes sense.
7830
7831 2000-06-21  Havoc Pennington  <hp@redhat.com>
7832
7833         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7834         gtk_get_default_language
7835
7836         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
7837         new function to get the default language
7838
7839         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
7840         s/gtk_text_view_style_values/gtk_text_style_values/
7841
7842         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7843         Add a "language" field to tags.
7844
7845         (gtk_text_tag_set_arg): Fix bug in setting
7846         "bg_full_height_set" tag.
7847
7848 2000-06-21  Havoc Pennington  <hp@redhat.com>
7849
7850         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7851         in the interfaces
7852
7853         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
7854         stuff instead when possible.
7855
7856         * gtk/gtktexttypes.h: Delete some unused constants
7857
7858         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7859         testtextbuffer.c: use glib instead of custom unicode routines
7860
7861 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
7862
7863         * docs/es/: Removed mistakenly added generated sgml
7864
7865         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7866         Remove outdated info files.
7867
7868         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7869         Moved tutorial files into subdir
7870
7871         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7872         subdir.
7873
7874         * docs/man/gtk_button.pod: Remove. (contents will be
7875         integrated into gtk-reference button page.)
7876
7877         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7878         docs/faq/Makefile.am: Adjust for new organization
7879
7880 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
7881
7882         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7883         not $(MKINSTALLDIRS)
7884
7885 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
7886
7887         * gtk/testgtk.c (create_text): Finish the job Elliot started
7888         of removing font setting test for text widget. (Since text widget
7889         and GdkFont are not deprecated, and cause portability problems.)
7890
7891 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
7892
7893         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7894         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7895         Remove use of libunicode in favor of new GLib functions.
7896
7897         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7898         nano-x, framebuffer. The X11 include is just a hack until we get
7899         the necessary functions in gdkcolor.h, so there is no reason to
7900         add other includes of platforms.
7901
7902         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
7903         window bigger than the screen change.
7904
7905         * gtk/testgtk.c: Revert some random changes from Elliot
7906         that had no particular point and were causing testgtkrc
7907         not to function correctly.
7908         
7909         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7910         because GdkSegment and GdkRegionBox have the same fields,
7911         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7912         results in clearer code.
7913
7914         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7915         gdk_input_translate_coordinates): Fix missed GdkObjectification
7916
7917 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7918
7919         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7920         * gtk/gtk{plug,socket}.h: Missed commits from previous.
7921
7922 2000-06-20  Havoc Pennington  <hp@redhat.com>
7923
7924         * modules/linux-fb/Makefile.am: Make this compile
7925         without framebuffer enabled
7926
7927         * gdk/linux-fb/Makefile.am: Add conditional to not build
7928         framebuffer unless specified in configure
7929
7930         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7931         the size of the target instead of source if -1 was passed for
7932         width/height
7933
7934         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
7935         width/height confusion.
7936
7937 2000-06-19  Havoc Pennington  <hp@redhat.com>
7938
7939         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7940         GDK_DRAWABLE_XID. In the future, we probably want to make it
7941         faster with G_DISABLE_CHECKS turned on.
7942
7943 2000-06-14  Havoc Pennington  <hp@redhat.com>
7944
7945         * gdk/Makefile.am: add gdkpixmap.c
7946
7947         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7948         s/gdk_image_init/_gdk_windowing_image_init
7949
7950         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7951         ref/unref
7952
7953         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7954
7955         * gdk/gdkcompat.h: remove GdkWindowType compat, since
7956         GdkWindowType is now non-deprecated; 
7957         change gdk_window_get_type() compat to be
7958         gdk_window_get_window_type().
7959
7960         * gdk/gdkdnd.h: make GdkDragContext a GObject.
7961
7962         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7963         virtual GObject. Make all functions call into the vtable.
7964         Move gdk_image_put() guts in here. Remove GdkDrawableType
7965         and gdk_drawable_get_type(), these are now GdkWindow-specific.
7966         draw_image, get_depth, get_size, set_colormap, get_colormap,
7967         get_visual added to the vtable.
7968         
7969         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
7970         GObject. Virtualize everything. 
7971         (gdk_gc_new_with_values): remove check for destroyed window,
7972         because now GdkWindow::create_gc will check this.
7973         (gdk_gc_set_values): New function to set GC values, this 
7974         was already implemented but wasn't in the header
7975
7976         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7977
7978         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7979         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7980         remove _gdk_window_class; add _gdk_window_impl_get_type() and
7981         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7982         _gdk_windowing_window_init, rename gdk_image_init to
7983         _gdk_windowing_image_init.
7984         
7985         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7986         (gdk_draw_layout): Remove check for destroyed window, 
7987         because all the drawable methods already check it.
7988         
7989         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7990         Add gdkpixmap.c which contains implementation of GdkDrawable
7991         virtual table (by chaining to a platform-specific implementation
7992         object).
7993         
7994         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
7995         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7996         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7997         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7998         GdkColormapPrivate. 
7999
8000         * gdk/gdktypes.h: #include <glib-object.h>
8001
8002         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
8003         Move most functionality to platform-specific implementation
8004         object. GdkWindow itself now handles the backing store, then
8005         chains to the platform-specific implementation.
8006         (gdk_window_get_window_type): return GdkWindowType of the window.
8007         (gdk_window_peek_children): New routine, returns the children of 
8008         a GdkWindow
8009         (gdk_window_get_children): Was in X11-specific code and did 
8010         XQueryTree. Changed to simply return a copy of window->children; 
8011         so it can go in cross-platform code.
8012         
8013         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
8014
8015         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
8016         GdkColormap; just changed to use the new private data instead
8017         of casting to GdkColormapPrivate.
8018
8019         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
8020         gdk_cursor_new().
8021
8022         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
8023         (private data member in the GObject). 
8024         (xdnd_manager_source_filter): Function had broken 
8025         error handling, fix it (use gdk_error_trap_push).
8026
8027         * gdk/x11/gdkdrawable-x11.c: This file now implements
8028         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
8029         base class is purely for the convenience of the X port,
8030         and not part of the interface to cross-platform GDK.
8031
8032         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
8033         
8034         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
8035         specific to X, and returned by the create_gc virtual method
8036         of GdkDrawableImplX11. 
8037         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
8038         rather than gchar, this was also changed in the GdkGC vtable.
8039         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
8040         mask is 0, return immediately, instead of checking every flag.
8041         This is faster, and keeps us from segfaulting if values is NULL
8042         and the mask contains some nonzero flags.
8043
8044         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
8045         GdkWindow.
8046
8047         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
8048         GdkWindowPrivate is gone.
8049
8050         * gdk/x11/gdkim-x11.c: rename things that got renamed.
8051
8052         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
8053         remove the image_put stuff that got transferred to GdkDrawable.
8054         
8055         * gdk/x11/gdkinput.c: renamings
8056
8057         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
8058
8059         * gdk/x11/gdkpixmap-x11.c: GObject conversion
8060
8061         * gdk/x11/gdkprivate-x11.h: indentation fixes
8062
8063         * gdk/x11/gdkproperty-x11.c: renamings
8064
8065         * gdk/x11/gdkselection-x11.c: renamings
8066
8067         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
8068         implements the platform-specific "impl" object.
8069         Moved gdk_window_get_children to gdk/gdkwindow.c
8070
8071         * gdk/x11/gdkx.h: Remove all the private structs and private datas
8072         that no longer exist. Add declaration of GdkGCX11 object here.
8073         Fix all the macros to still work. 
8074
8075         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
8076         GdkDragContext from the boxed types since they are now GObjects.
8077
8078         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
8079         moved xthickness/ythickness into the instance. GtkStyleClass
8080         functions are now in the standard vtable for GtkStyle, so you have
8081         to create a GObject subclass to write a theme engine.
8082         (gtk_style_copy): fixed a leaked PangoFontDescription
8083         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
8084         can be the standard GObject function.
8085         
8086         * Throughout GTK:
8087         s/style->klass->[xy]thickness/style->[xy]thickness
8088         s/pango_layout_unref/g_object_unref/
8089
8090         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
8091         
8092         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
8093         accessing GDK internals.
8094
8095         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
8096         accessing GDK internals.
8097
8098 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8099
8100         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
8101
8102         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
8103         problem by calculating event position relative to the trough
8104         rather than the slider.
8105         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
8106
8107         * gdk/gdkgc.h: Add GDK_NOR.
8108
8109         * configure.in, Makefile.am: Add modules top level dir
8110         * configure.in: Only use pangox library if building x11 target.
8111         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
8112
8113 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8114
8115         * gtk/gtkcolorsel.c: Change private class member to be named
8116         private_data throughout the file.
8117
8118         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
8119         private_data to avoid clashing with keyword.
8120
8121 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8122
8123         * gdk/gdkdnd.h: Add comment to remove warning.
8124
8125 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
8126
8127         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
8128         Byelorussian language; changed the Makefile and file names 
8129         to reflect that.
8130
8131 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
8132
8133         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
8134         rather than gdk_window_hide; this makes things work
8135         correctly if the window is programmatically hidden while
8136         iconified.
8137
8138 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
8139
8140         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
8141         cut and paste typo where wrong pixmap was being
8142         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
8143
8144 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
8145
8146         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
8147         Add helper function to compute format / bytes 
8148         relationship. Use in a couple places to fix up
8149         errors which assume 8 * format.
8150
8151         * gtk/gtkselection.c (gtk_selection_request): Use 32
8152         rather than 8 * sizeof (GdkAtom), to work correctly
8153         on Alpha.
8154
8155 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8156
8157         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8158         libgtk.la
8159         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8160         versions
8161
8162         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8163         checking macros return NULL since the function has a return value.
8164
8165 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8166
8167         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8168         GTK+ from building at all.
8169
8170         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8171
8172 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8173
8174         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8175         gtk/Makefile.am: make it possible to configure gtk for different
8176         targets on the same platform. The library name is now 
8177         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8178         flag. Only the x11 target compiles right now.
8179         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8180         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8181         * gdk/nanox/gdk*generic*: delete generic region code.
8182         * gdk/linux-fb/gdk*generic*: delete generic region code.
8183         * README.nanox: update information.
8184         
8185 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
8186
8187         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8188         prepend not append. (Pointed out by Brett Hall.)
8189
8190 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
8191
8192         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8193
8194 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
8195
8196         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8197         need this later, and this makes sure that the atexit for
8198         glib gets called after that for GDK, so atexits are
8199         properly ordered for object leak checking.
8200
8201         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8202
8203         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
8204         pango_x_shutdown_display()
8205
8206         * gtk/simple.c (main): Close window on destroy.
8207
8208 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
8209
8210         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8211         to treat initial creation different from setting with 
8212         regards to the graphics-exposures parameter, so add a parameter
8213         indicating whether this is initial or not.
8214
8215 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
8216
8217         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8218         to sort of work by adding an extra return_exposes arg
8219         to gdk_event_translate() - it might be better to simply
8220         deprecate the function altogether and force people to rewrite
8221         without it. gdk_window_scroll() handles most of it, and where
8222         gdk_window_scroll() doesn't work, simply redrawing more does.
8223
8224         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
8225         assertion.
8226
8227         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
8228
8229         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
8230         bunch of pretty much useless /* Print debugging info */ comments 
8231         which had drifted away from the code they were commenting.
8232
8233 2000-06-02  Havoc Pennington  <hp@pobox.com>
8234
8235         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
8236         is in working order.
8237         
8238         * gtk/testtext.c: Change to reflect anonymous mark API
8239
8240         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
8241
8242         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
8243         field, which was unused.
8244
8245         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
8246         saves some typing.
8247
8248         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
8249
8250         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
8251         flag on the insertion point and selection bound
8252
8253         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
8254         make mark-manipulation functions take a GtkTextMark* instead of a
8255         mark name.
8256         
8257         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
8258         GtkTextMarkBody; will be used to detect attempts to delete
8259         the permanent marks (insert and selection bound)
8260
8261         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
8262
8263 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
8264
8265         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
8266         flag to on.
8267
8268         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
8269         Honor DOUBLE_BUFFRED_FLAG
8270
8271         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
8272         function to set the DOUBLE_BUFFERED flag.
8273
8274         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
8275         or not exposes done on the widget should be double-buffered.
8276
8277         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
8278         to be what would be expected. (Fixes problem with a
8279         g_return_if_fail() validating a TextDirection enumeration)
8280
8281 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
8282
8283         * gtk/gtkwidget.c: Remove all references to 
8284         offscreen flag which was no longer used.
8285
8286         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
8287
8288         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
8289         for non-null label_widget->parent.
8290
8291         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
8292         which no longer was used.
8293
8294         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
8295
8296         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
8297         for null arguments.
8298
8299         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8300         check for destroyed windows.
8301
8302 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
8303
8304         * gtk/gtkimmulticontext.c: Add a finalize method and unref
8305         the slave context there.
8306
8307         * gtk/gtkinvisible.[ch]: Make reference counting behavior
8308         identical to GtkWindow.
8309
8310 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
8311
8312         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8313         pangox to here, so we can write them independent of rendering
8314         system, using GDK primitives.
8315
8316         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8317         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8318         since we have a rendering-system independent implementation in
8319         terms of draw_glyphs().
8320         
8321         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8322         function to render a single line.
8323
8324         * gdk/x11/gdkpango.c: Move the guts of this file mostly
8325         into ../gdkpango.c, which simplifies things, since we
8326         don't have to deal with raw X gc's.
8327
8328 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
8329
8330         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8331         get the logical attributes for a given GtkTextLine.
8332
8333 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
8334
8335         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8336         g_locale_get_codeset() to g_get_codeset() change.
8337
8338 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
8339
8340         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8341         descriptions.
8342
8343         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8344         the entry.
8345
8346         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8347         redoing (vastly simplifying) for Pango. Still needs quite
8348         a bit of work. (Size selection is currently poor. List of 
8349         predefined sizes is not a good idea, since all of these
8350         sizes won't necessarily be distinct.)
8351
8352 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
8353
8354         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8355         CODESET results for LANG=C.
8356
8357 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
8358
8359         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8360         which takes a stringized pango font description;
8361         ignore the older 'font' and 'fontset' declarations.
8362
8363         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8364         field with a GdkFont derived via gdk_font_from_description(),
8365         for compatibility. (Should we just remove it entirely?
8366         Probably too much compatibility breakage, but people
8367         should be migrating to the new Pango stuff as quickly
8368         as possible.)
8369
8370 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
8371
8372         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8373
8374 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
8375
8376         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
8377         redoing; there are some bugs in size allocation right
8378         now, the semi-existant distinction between header / day
8379         fonts was removed, but, with Pango, could actually
8380         be made functional in a nice way.
8381         
8382         * gtk/testcalender: Move calender from examples into this
8383         directory as a test program. (We really need to restrcture
8384         testgtk into a whole directory full of tests for every
8385         widget or functionality group, separated into multiple .c
8386         files.)
8387
8388 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
8389
8390         * gtk/testgtk.c (file_exists): Fix stupid typo that
8391         was keeping RC file from being loaded.
8392
8393         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8394         RC file font code.
8395
8396 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
8397
8398         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8399         Add function to load a GdkFont from a PangoFontDescription.
8400
8401 2000-05-29  Tor Lillqvist  <tml@iki.fi>
8402
8403         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8404         variable should be of type GdkEventPrivate.
8405
8406 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
8407
8408         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8409         to have any widget for the label, use a GtkLabel widget
8410         to display the text. (Based partially on a patch from
8411         Anders Carlson.)
8412
8413         (Quite a bit of code reorganization - strip 90% of the
8414         guts out of gtkaspectframe and add a single virtual
8415         func to GtkFrameClass - compute_child_allocation.)
8416
8417 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
8418
8419         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8420         (Removed clist->row_center_offset field because caching
8421         it wasn't saving time or code, added private function
8422         _gtk_clist_create_cell_layout()).
8423
8424 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
8425
8426         * gtk/gtkaccellabel.c: Pangoized.
8427
8428         * gtk/[hv]ruler.c: Pangoized
8429
8430 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
8431
8432         * gtk/gtkfilesel.c (gtk_file_selection_init):
8433         Use gtk_clist_set_column_auto_resize() to remove need
8434         need for manual column width computations.
8435
8436 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
8437
8438         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
8439         ensuring Pango correctness, and considerably simplifying the
8440         code.
8441         
8442         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8443
8444         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8445         getting of numbers of lines.
8446
8447         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8448         to the actual requested width of the lable, not to the wrap
8449         width we set.
8450
8451         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8452
8453         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8454           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8455
8456         * gtk/gtktextview.c: Fix structure inheritance.
8457
8458         * gtk/gtkprogressbar.c: Pangoize.
8459
8460 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
8461
8462         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8463         in a function.
8464
8465         * gtk/gtktextlayout.c (find_display_line_above): Fixed
8466         bug with computing line tops.
8467
8468         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8469
8470 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8471
8472         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8473         and y_offset coordinates to do what we need now. (The offset between
8474         buffer and layout coordinates has been reintroduced, but is a 
8475         bit different than before.)
8476
8477         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8478         handle the adjustments ourselves, and scroll as necessary using
8479         the new gdk_window_scroll().
8480         
8481         The advantage of this is that when we are incrementally revalidating,
8482         we are essentially rearranging things around the visible portion
8483         of the screen. With the old setup, the visible portion of the
8484         screen was moved around in the layout, so scrolling and redrawing
8485         to track that caused jumping of the display. Since we now
8486         control the scrolling ourselves, we can suppress this and
8487         only redraw when things actually change.
8488
8489 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
8490
8491         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8492         the region not just redisplay it after-all, since we store the
8493         cursors in the LineDisplay. (Ugly interactions here between
8494         GtkLayout and GtkTextBTree here.)
8495         
8496         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8497
8498 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8499
8500         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8501         Added function to scroll contents of a window while keeping the
8502         window constant. Works by XCopyArea or guffaw-scrolling depending
8503         on the details of how the window is set up. (guffaw-scrolling
8504         still needs to be filled in.)
8505
8506 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
8507
8508         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8509         move the debugging that was tied to a global variable
8510         to that.
8511
8512         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8513
8514         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8515         validated flag, in line data instead of setting height/width to
8516         -1. This allows us to perform operations with partially invalid
8517         buffer (using the old size for invalid lines) and thus to do
8518         incremental vaidation. Keep height/width aggregates up to date
8519         when deleting text and rebalancing the tree.
8520
8521         * gtk/gtktextbtree.[ch]: Add functions validate a line
8522         (gtk_text_btree_validate_line), and to validate up
8523         to a number of pixels (gtk_text_btree_validate).
8524
8525         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8526         that indicates that something is changed and a revalidation
8527         pass is needed. Change ::need_repaint to ::changed, and
8528         make it take old and new yranges instead of a rectangle.
8529
8530         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8531         the line_data_destroy() function from 
8532         gtk_text_btree_add_view() to a virtual function in 
8533         GtkTextLayout
8534
8535         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8536         since we are handling partial repaints in a different fashion
8537         now.
8538
8539         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8540         of the selection instead of queueing a repaint on the
8541         entire widget.
8542
8543         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8544         get_selection_bounds() down to btree, make the function
8545         in buffer a wrapper around the btree function.
8546
8547         * gtk/gtktextlayout.[ch]: Add functions to check if the
8548         layout is valid and to recompute either a range of pixels
8549         aroudn a line or a certain total number of pixels.
8550
8551         * gtk/gtktextlayout.[ch]: Cache a single line display;
8552         now that we only redraw the needed portions, the hit rate
8553         for this cache is quite high.
8554         
8555         * gtk/gtktextview.[ch]: Keep track of the first paragraph
8556         on the screen so that when re-laying-out the buffer, we can
8557         keep the same place. This requires connecting to ::value_changed
8558         on the adjustments
8559
8560         * gtk/gtktextview.[ch]: Add idle functions to revalidate
8561         the buffer after we receive an ::invalidated signal.
8562         
8563 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
8564
8565         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
8566         to max of allocation and layout size, not just to the
8567         layout size.
8568
8569         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
8570         Invalidate window so it gets redrawn properly.
8571
8572         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
8573         to mean the entire window.
8574
8575         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
8576         into public header.
8577
8578 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8579
8580         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
8581         to get the name of a mark.
8582
8583         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
8584         to find the paragraph from a y position.
8585
8586 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
8587
8588         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
8589         nodes have width/height >= 0, not > 0.
8590
8591 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
8592
8593         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
8594         Add a size_only flag, so when we only need the size, we don't create
8595         useless appearance attributes.
8596
8597         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
8598         duplicate setting of font description.
8599
8600         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
8601
8602 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8603
8604         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8605         EXTRA_DIST. It does not work well when the file that
8606         everything depends on is not in the tarball.
8607
8608 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8609
8610         * gtk/testgtk.c: Some hacks and fixes so that it basically
8611         works when not sitting in the GTK+ build tree.
8612
8613 2000-05-03  Havoc Pennington  <hp@redhat.com>
8614
8615         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8616         Properly determine the ordering of the tag root and the current
8617         line within the tree. Previous algorithm only worked if the tag
8618         root's immediate parent was the common root of both the current
8619         line and the tag root.
8620
8621 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
8622
8623         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8624         alignment.
8625
8626         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8627         the widget text directional dynamically.
8628
8629         * gtk/gtktextview.[ch]: Added functions to get and set default
8630         wrap mode.
8631
8632 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
8633
8634         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8635         in cursor location computation.
8636
8637 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
8638
8639         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8640         vadjusment values properly when layout gets smaller.
8641
8642         * gtk/gtktextview.c (need_repaint_handler): Areas being
8643         passed in are far completely inaccurate, and sometimes
8644         too small, so, for now, just queue a redraw on the
8645         whole visible region.
8646
8647 2000-04-25  Havoc Pennington  <hp@redhat.com>
8648
8649         * gtk/gtktextbtree.c (summary_destroy): new function to 
8650         destroy tag summary nodes
8651         (gtk_text_line_next_could_contain_tag): this function was 
8652         totally broken if the line passed in wasn't below the tag
8653         root. Fix it.
8654         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
8655         "wildcard" case, we have to do a linear scan. Blah.
8656         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8657         we have to do the linear scan
8658         (tag_removed_cb): When a tag is removed from the tag table, 
8659         remove the GtkTextTagInfo node from the btree.
8660         (gtk_text_btree_spew): Implement the spew function, for 
8661         our debugging pleasure.
8662
8663 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
8664
8665         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8666         a problem with referring to the wrong buffer.
8667
8668         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8669
8670         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8671         font description to gtk_style_new() - otherwise things
8672         don't work without a .gtkrc file.
8673
8674         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8675         tags table if we create it ourself, too.
8676
8677         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8678         it was conflicting with XKB modifiers.
8679
8680         * gtk/gtktextview.[ch]: Add simple support for 
8681         GtkIMContext.
8682
8683 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
8684
8685         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8686         with deletion from last commit.
8687
8688 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
8689
8690         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8691         in the context from the current locale.
8692         
8693         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8694         context, not hardcoded value.
8695
8696         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8697         not logical.
8698
8699 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8700
8701         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8702         attributes - that doesn't handle partial-glyph selection
8703         properly. Instead use new pango_layout_line_get_x_ranges()
8704         functionality to draw the selection.
8705
8706         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8707         now properly handles out-of-range coordinates.
8708
8709         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8710
8711         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8712         public.
8713
8714         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8715         for paragraphs opposite to the base direction of the widget.
8716
8717         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8718
8719         * gtk/gtktextlayout.c: Don't split segments on marks, since that
8720         causes Arabic words to reshape as you cursor through.
8721
8722         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8723         cursor position when moving vertically with the arrow keys and
8724         scrolling with page-up/page-down. (Arrow keys save only the X,
8725         scrolling saves both X and Y.)
8726
8727         This means you can line-up / line-down or page-up / page-down
8728         without losing your place, and also that moving vertically
8729         with the cursor keys keeps the same X position, not the same
8730         character count:
8731
8732         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8733         arrow keys move by display lines, not paragraphs.
8734
8735 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8736
8737         * gtk/gtklayout.c: Make sure that the bin window is at least
8738         as big as the allocation. (Should we also make sure that the
8739         bin window is big enough to completely cover widget->window?)
8740
8741         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8742         function to get the onscreen rectangle.
8743
8744         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8745         for offsets in window coordinates.
8746
8747 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
8748
8749         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8750         confusion.
8751
8752         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8753         from the widget direction.
8754
8755         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
8756         Add a "direction" attribute.
8757
8758         * gtk/gtktextview.c: global s/tkxt/text_view/.
8759
8760         * gtk/testtext.c: Added long block of text in Arabic, to test out
8761         the direction attributes. (Some problems with the shaping system
8762         for arabic become obvious - like the fact the cursor splits words
8763         into unjoined pieces.)
8764
8765 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
8766
8767         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8768
8769         * gtk/gtktextlayout.c: Fix up alignment.
8770
8771         * gtk/testtext.c: Add some tests for centering, wrapping.
8772
8773 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
8774
8775         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8776         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8777         If we wrote GTK+-specific layout-render function this could just replace
8778         the draw_layout() operation in the vtable.
8779
8780         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
8781         pango_layout_get_cursor_pos() and use that function.
8782
8783         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8784         is a non-static symbol.
8785
8786         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8787         with gtk_text_btree_find_line_by_y()
8788
8789         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8790         renderer that handles GtkTextAppearance attributes.
8791
8792         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
8793
8794           - Move the values in the style that don't affect geometry into a
8795             GtkTextAppearance structure.
8796           - Change underline to take a PangoUnderline and "font" a string
8797             representation of a font description
8798           - Add a "font_desc" attribute which takes a FontDescription structure.
8799
8800         * gtk/gtktextlayout.[ch]:
8801
8802           - Get rid of the display-line list per each line. Instead, we
8803             generate, on demand, a GtkTextLineDisplay structure which]
8804             contains a PangoLayout * and other necesary information
8805             (offsets, cursor locations) for displaying a paragraph.
8806           - Get rid of the code to wrap lines, create display chunks,
8807             etc. Instead, we just go through a paragraph and convert
8808             it into the necessary inputs to a PangoLayout.
8809           - Implement a new attribute type, GtkTextAttrAppearance. This
8810             holds a GtkTextAppearance, and is used to pass colors, 
8811             stipple, etc, through from the layout to the display without
8812             having to use lots and lots of individual attributes.
8813           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8814             in terms of PangoLayout functions.
8815         
8816         * gtk/gtktextview.c: 
8817          
8818           - Handle passing the necessary PangoContext to the layout
8819           - Some fixups in painting to deal with the automatic backing store
8820             and offsetting of GTK+-1.4
8821           - Add a style_set handler so that the default style reacts
8822             properly to theme changes.
8823         
8824         * gtk/gtktext?*.[ch]: Random code-style fixes.
8825
8826         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8827
8828 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
8829
8830         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8831         in original form preparatory to Pango-ization and gdkimcontext-ization.
8832
8833 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
8834
8835         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8836         so that we can derive from gtkimcontext in language bindings properly.
8837
8838 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
8839
8840         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8841         Add a compose table including (almost) all the compose combinations
8842         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8843         data in the XIM implementation.
8844
8845         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8846         Moved functions to convert keyvalues from and to unicode here from
8847         the win32 port and made them public.
8848
8849 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8850
8851         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8852
8853 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
8854
8855         * gtk/gtkimcontext.[ch]: Base class for new input context system
8856
8857         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8858         the real input context implementation to be loaded from modules
8859         and switched on the fly.
8860
8861         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8862         context that just does direct keysymbol => unicode translation.
8863
8864         * gtk/gtkentry.[ch]: Start switching editing over to using
8865         GtkInputContext. (No handling of preedit yet.)
8866
8867 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
8868
8869         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8870         many substitutions. (klass should not be subsituted.)
8871
8872 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
8873
8874         * configure.in: Add checks for Pango
8875
8876         * configure.in docs/Makefile.am: Add test for sgml2html
8877         and allow 'make dist' without building html, but print out
8878         warnings in that case. (For making snapshots)
8879
8880         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8881         Add Pango libraries and C flags
8882
8883         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8884         Add function (gdk_draw_layout) to draw a pango layout.
8885
8886         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8887         for getting Pango contexts for GDK.
8888
8889         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8890
8891         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8892         editing.
8893
8894         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8895         keysym => unicode translations. More languages can be added
8896         here, but real input-method support is needed.
8897
8898         * docs/Changes-1.4.txt: Added note about entry behavior.
8899         
8900         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8901         to set the reading direction for a widget and the global direction.
8902         Add test which allows toggling the global direction. Two private
8903         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8904
8905         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8906           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
8907
8908         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8909
8910         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8911         underlining now handled by Pango.
8912
8913         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8914         to RCStyle and Style. (Having both this and the old font name and GdkFont 
8915         is temporary.)
8916
8917         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
8918         convenience functions for creating contexts and layouts for widgets.
8919
8920         * gtk/testgtk.c: Enhance label tests with multilingual labels.
8921
8922 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
8923
8924         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8925         titles to be active, even if they aren't visible.
8926         (gtk_clist_column_titles_passive):  Ditto.
8927
8928 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
8929
8930         * gtkmenu.c:
8931         * gtkmenu.h:
8932         * gtktypeutils.h: Spelling/grammar fixes in comments.
8933
8934 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8935
8936         * gdk/nanox/*.h: add missing header files.
8937
8938 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
8939
8940         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8941         send_event to TRUE.
8942         (gtk_drawing_area_size): queue a resize.
8943
8944 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
8945
8946         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8947         the handlers, also invalidate them. bug nailed down by Karl Nelson
8948         <kenelson@ece.ucdavis.edu>.
8949
8950 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
8951
8952         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8953         "(nil)" foundries, patch from Grigorios Magklis.
8954
8955         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8956         on non-available fonts, based on a patch by Grigorios Magklis
8957         <maglis@cs.rochester.edu>.
8958
8959 2000-05-18  Elliot Lee  <sopwith@redhat.com>
8960
8961         * gdk/x11/gdkregion-generic.c: If a region does not have any
8962         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8963         instead of GDK_OVERLAP_RECTANGLE_IN.
8964
8965 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
8966
8967         * gtk/gtklayout.c (gtk_layout_map): Remove references to
8968         OFFSCREEN, as it is no longer necessary.
8969
8970 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
8971
8972         * gtk/gtkcolorsel.c: Patch from David Santiago
8973         <mrcooger@cyberverse.com> to change things so that the 
8974         indicator of the active palette entry is done independently,
8975         not via the focus, since it should always be visible.
8976
8977 2000-05-17  Tor Lillqvist  <tml@iki.fi>
8978
8979         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8980         refcount leaks as in the X11 backend.
8981
8982         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8983         cosmetics.
8984
8985         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8986         backend. Add _gdk_windowing_window_destroy().
8987
8988         * gtk/gtkcolorsel.c: Include correct backend-specific header.
8989         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8990         either, but these probably do exist on nanox?)
8991         
8992         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8993         which isn't necessarily defined by <math.h>.
8994
8995         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8996         ancestry past GtkObject.
8997
8998         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8999         from DLL on Win32.
9000
9001         * gtk/gtk.def: Update corresponding to recent changes.
9002
9003         * gtk/makefile.{cygwin,msc}: Updates.
9004
9005 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
9006
9007         * docs/Changes-1.4.txt: A bit of editing.
9008
9009         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
9010         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
9011         to clear the update area for the window, and clear it
9012         when hiding a window.
9013
9014         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
9015         if window destroyed.
9016
9017         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
9018
9019         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
9020         gdk_window_destroy() to the generic code, since there was a lot of 
9021         window-system-independent logic it in. Add a function:
9022         
9023          _gdk_window_destroy() 
9024
9025         to the internal API to destroy a window without unreferencing it.
9026         Add a function:
9027
9028          _gdk_windowing_window_destroy()
9029
9030         That does the windowing-system-dependent part of destroying 
9031         the window.
9032
9033 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
9034
9035         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
9036
9037 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
9038
9039         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
9040         Make gtk_widget_shape_combine_mask() keep a reference count on
9041         the pixmap since it keeps it around.
9042
9043 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
9044
9045         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
9046         leak.
9047
9048         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
9049         leak with event filters.
9050
9051 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
9052
9053         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
9054         signal handlers with the right data arguments. (Fixes
9055         some warnings when a widget was repeatedly set as a drag
9056         destination.)
9057
9058         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
9059         window so we can avoid avoid setting the DND properties on the
9060         toplevel window repeatedly.
9061
9062 2000-05-13  Tor Lillqvist  <tml@iki.fi>
9063
9064         * gdk/win32/gdkwin32.h: Define more message types missing from
9065         mingw headers.
9066
9067         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
9068         call gdk_window_destroy_notify(). It was never called. This
9069         probably meant that the GdkWindow was never freed. Thanks Owen for
9070         noticing (!).
9071
9072         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
9073         window as destroyed before calling DestroyWindow(). DestroyWindow()
9074         causes a call to the window procedure (gdk_WindowProc), which
9075         calls gdk_event_translate(), which calls
9076         gdk_window_destroy_notify(), which gets confused unless the window
9077         is set as destroyed.
9078
9079         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
9080         this function to indicate it's win32 only. Put inside #ifdef
9081         G_ENABLE_DEBUG.
9082
9083         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
9084         debugging function. (gdk_event_translate:) Add a default branch
9085         that uses the above function to print debug messages with all
9086         Windows messages symbolically.
9087
9088         * gdk/win32/gdkprivate-win32.h: Declare it, and
9089         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
9090
9091 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
9092
9093         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
9094         public header file.
9095
9096 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
9097
9098         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
9099
9100         * gtk/gtktext.c: made the adjustments no-construct args, simply
9101         provide default adjustments.
9102         (gtk_text_destroy): release adjustments.
9103
9104         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
9105         adjustment argument non-construct.
9106
9107         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
9108         instead of in finalize.
9109         (gtk_progress_get_text_from_value): 
9110         (gtk_progress_get_current_text): 
9111         (gtk_progress_set_value): 
9112         (gtk_progress_get_percentage_from_value): 
9113         (gtk_progress_get_current_percentage): 
9114         (gtk_progress_set_percentage): 
9115         (gtk_progress_configure): ensure an adjustment is present.
9116
9117 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
9118
9119         * gtk/gtkcolorsel.[hc]:
9120         * gtk/gtkcolorseldialog.[hc]:
9121         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
9122         their parent implementation, use bit fields for boolean values, don't
9123         create unused widgets, usage of glib types, braces go on their own
9124         lines, function argument alignment, #include directives etc. etc. etc..
9125
9126         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
9127
9128 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
9129
9130         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
9131
9132         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
9133         of NULL.
9134
9135         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
9136         to freed data.
9137         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
9138
9139         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
9140         to NULL when the toplevel is getting destroyed.
9141         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
9142         (gtk_menu_destroy): 
9143         (gtk_menu_init): store the information of whether we have to
9144         readd the initial child ref_count during destruction in a new
9145         GtkMenu field needs_destruction_ref_count.
9146
9147         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
9148         here, those reading: learn from my mistake! ;)
9149         in order for set_?adjustment to support a default adjustemnt if
9150         invoked with an adjustment pointer of NULL, the code read (pseudo):
9151         if (v->adjustment) unref (v->adjustment);
9152         if (!adjustment) adjustment = adjustment_new ();
9153         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
9154         now imagine the first unref to actually free the old adjustment and
9155         adjustment_new() creating a new adjustment from the very same memory
9156         portion. here, the latter comparision will unintendedly fail, and
9157         all hell breaks loose.
9158         (gtk_viewport_set_hadjustment):
9159         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9160         after unreferencing it.
9161
9162         * gtk/gtkcontainer.[hc]: removed toplevel registration
9163         functions: gtk_container_register_toplevel(),
9164         gtk_container_unregister_toplevel() and
9165         gtk_container_get_toplevels() which had wrong semantics
9166         anyways: it didn't reference and copy the list.
9167
9168         * gtk/gtkwindow.c: we take over the container toplevel registration
9169         bussiness now. windows are registered across multiple destructions,
9170         untill they are finalized. the initial implicit reference count
9171         users are holding on windows is removed with the first destruction
9172         though.
9173         (gtk_window_init): ref & sink and set has_user_ref_count, got
9174         rid of gtk_container_register_toplevel() call. add window to
9175         toplevel_list.
9176         (gtk_window_destroy): unref the window if has_user_ref_count
9177         is still set, got rid of call to
9178         gtk_container_unregister_toplevel().
9179         (gtk_window_finalize): remove window from toplevel list.
9180         (gtk_window_list_toplevels): new function to return a newly
9181         created list with referenced toplevels.
9182         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9183
9184         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9185         adjustment a non-construct arg.
9186         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9187         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9188         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9189
9190         * gtk/gtkrange.c: added some realized checks.
9191         (gtk_range_destroy): get rid of the h/v adjustments in the
9192         destroy handler instead of finalize. remove timer.
9193         (gtk_range_get_adjustment): demand create adjustment.
9194
9195         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9196         we simply create them on demand now and get rid of them in
9197         the destroy handler.
9198         (gtk_viewport_destroy): get rid of the h/v adjustments in the
9199         destroy handler instead of finalize.
9200         (gtk_viewport_get_hadjustment): 
9201         (gtk_viewport_get_vadjustment): 
9202         (gtk_viewport_size_allocate): demand create h/v adjustment
9203         if required.
9204
9205         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9206         gtk_widget_real_destroy () functionality.
9207         (gtk_widget_real_destroy): reinitialize with a new style, instead
9208         of setting widget->style to NULL.
9209
9210 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
9211
9212         * gtk/gtkcalendar.c:
9213         * gtk/gtkbutton.c: ported _get_type() implementation over to
9214         GType, either to preserve memchunks allocation facilities,
9215         or because Gtk+ 1.0 GtkTypeInfo was still being used.
9216
9217         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9218         over. prepare for ::destroy to be emitted multiple times.
9219         removed reference tracer magic. chain into GObjectClass.shutdown()
9220         to emit ::destroy signal.
9221
9222         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
9223         fundamental.
9224
9225         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
9226         cludge.
9227
9228         * gtk/gtksocket.c:
9229         * gtk/gtkplug.c:
9230         * gtk/gtklayout.c:
9231         * gtk/gtklabel.c:
9232         * gtk/gtkargcollector.c:
9233         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
9234         not being a fundamental anymore, and to work with the new
9235         type system (nuked fundamental type varargs clutter).
9236
9237         * gtk/*.c: install finalize handlers in the GObjectClass
9238         part of the class structure.
9239         changed direct GTK_OBJECT()->klass accesses to
9240         GTK_*_GET_CLASS().
9241         changed direct object_class->type accesses to GTK_CLASS_TYPE().
9242
9243         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
9244         GType. made most of the GTK_*() type macros and Gtk* typedefs
9245         simple wrappers around macros and types provided by GType.
9246         most notably, a significant portion of the old API vanished:
9247         GTK_TYPE_MAKE(),
9248         GTK_TYPE_SEQNO(),
9249         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
9250         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
9251         GTK_TYPE_ARGS,
9252         GTK_TYPE_CALLBACK,
9253         GTK_TYPE_C_CALLBACK,
9254         GTK_TYPE_FOREIGN,
9255         GtkTypeQuery,
9256         gtk_type_query(),
9257         gtk_type_set_varargs_type(),
9258         gtk_type_get_varargs_type(),
9259         gtk_type_check_object_cast(),
9260         gtk_type_check_class_cast(),
9261         gtk_type_describe_tree(),
9262         gtk_type_describe_heritage(),
9263         gtk_type_free(),
9264         gtk_type_children_types(),
9265         gtk_type_set_chunk_alloc(),
9266         gtk_type_register_enum(),
9267         gtk_type_register_flags(),
9268         gtk_type_parent_class().
9269         replacements, where available are described in ../docs/Changes-1.4.txt.
9270         implemented compatibility functions for the remaining API.
9271
9272         * configure.in: depend on glib 1.3.1, use gobject module.
9273
9274 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
9275
9276         * TODO.xml: Various updates to current status.
9277
9278 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
9279
9280         * gtk.m4: Print out version when test succeeds.
9281
9282 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
9283
9284         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
9285         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
9286         
9287         (Original triangle color selector from Simon Budig
9288         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
9289         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
9290         Santiago <mrcooger@cyberverse.com>)
9291
9292         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
9293         out into a separate widget.
9294
9295         * gtk/testgtk.c: Add some checkbuttons for toggling palette
9296         and opacity controls.
9297
9298 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
9299
9300         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
9301         snuck in prematurely.
9302
9303 2000-05-07  Tor Lillqvist  <tml@iki.fi>
9304
9305         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9306         had deleted a ! operator by mistake, which caused
9307         GDK_SELECTION_CLEAR events never to be generated, which caused
9308         only the first copy to the clipboard from an gtkeditable to
9309         actually cause a copy to the Windows clipboard.
9310
9311 2000-05-06  Tor Lillqvist  <tml@iki.fi>
9312
9313         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9314         compilation, too. Current mingw gcc distributions include the
9315         necessary headers. Also the necessary IIDs are now in mingw
9316         headers/libraries, and own definitions unnecessary.
9317
9318         More hacking on OLE2 DND, still doesn't work though, and thus
9319         ifdeffed out.
9320
9321         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9322         here, too.
9323
9324 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9325
9326         * gdk/nanox/*: nano-X port work in progress.
9327         * gdk/simple.c: simple test for Gdk.
9328         * README.nanox: notes about the port: read this first!
9329         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9330         with nano-X.
9331
9332 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
9333
9334         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9335         gdk_window_clear() into common code, implement in terms of
9336         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9337         not redirected to the backing rectangle.
9338
9339 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9340
9341         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9342         EXTRA_DIST. It does not work well when the file that
9343         everything depends on is not in the tarball.
9344
9345 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
9346
9347         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9348         with recursion where process_updates() is called from
9349         an expose handler. (GtkTextView is highly broken in
9350         doing this, but it should work, so it is a nice test
9351         case.)
9352
9353 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9354
9355         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9356         handle the case where updates are queued during processing of
9357         updates.
9358
9359 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9360
9361         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9362         window is on gdk_display - use that instead of segfaulting.
9363
9364 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
9365
9366         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9367         broken and require an empty arg, give it to them.
9368
9369 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
9370
9371         * gtk/gtklabel.h: indentation fixes.
9372
9373 2000-05-02  Tor Lillqvist  <tml@iki.fi>
9374
9375         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9376         draw too narrow or too low arcs, they seem to fail, at least with
9377         some display drivers.
9378
9379         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9380
9381         Large changes to the Win32 backend, partially made necessary by
9382         the changes to the backend-independent internal
9383         structures. Attempts to implement similar backing store stuff as
9384         on X11. The current (CVS) version of the Win32 backend is *not* as
9385         stable as it was before the no-flicker branch was merged. A
9386         zipfile with that version is available from
9387         http://www.gimp.org/win32/. That should be use by "production"
9388         code until this CVS version is usable. (But note, the Win32
9389         backend has never been claimed to be "production quality".)
9390
9391         * README.win32: Add the above comment about versions.
9392
9393         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9394
9395         * gdk/gdk.def: Update.
9396
9397         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9398         presumably be replaced by some more better mechanism as 1.4 gets
9399         closer to release shape.
9400
9401         * gdk/makefile.{cygwin,msc}: Update.
9402
9403         * gdk/win32/*.c: Correct inclusions of the backend-specific and
9404         internal headers. Change code according to changes in these. Use
9405         gdk_drawable_*, not gdk_window_* where necessary.
9406
9407         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9408         our old DND.
9409
9410         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9411         to interpret single characters as UTF-8. Thanks to Hans Breuer.
9412         Use correct function name in warning messages.
9413
9414         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9415         GSourceFuncs gdk_event_prepare and gdk_event_check.
9416         (gdk_event_get_graphics_expose): Do implement, use
9417         PeekMessage. Thanks to Hans Breuer.
9418         (event_mask_string): Debugging function to print an GdkEventMask.
9419         (gdk_pointer_grab): Use it.
9420
9421         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9422         (old) book I used claimed was Hangul actually is CJK Unified
9423         Ideographs Extension A. Also, Hangul Syllables were missing.
9424         Improve logging.
9425
9426         * gdk/win32/gdkgc-win32.c: Largish changes.
9427
9428         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9429         g_win32_getlocale() from GLib, and not setlocale() to get current
9430         locale name.
9431
9432         * gdk/win32/gdkprivate-win32.h
9433         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9434         gdkwin32.h, similarily as in the X11 backend.
9435
9436         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9437         assignment was used instead of equals in if test. Thanks to Hans
9438         Breuer.
9439
9440         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9441         the X11 version.
9442
9443         * gdk/win32/makefile.{cygwin,msc}
9444         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9445         path to the Win32 headers that works also with the mingw compiler.
9446
9447         * gtk/gtkstyle.c: Include <string.h>.
9448
9449 2000-04-26  Havoc Pennington  <hp@redhat.com>
9450
9451         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9452         replacing the broken gtk_label_get ()
9453
9454 2000-04-15  Havoc Pennington  <hp@pobox.com>
9455
9456         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
9457         this keeps scanner scripts from getting confused.
9458
9459         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9460         data, rather than void
9461
9462 2000-04-15  Tor Lillqvist  <tml@iki.fi>
9463
9464         * gtk/gtkclist.c (gtk_clist_motion)
9465         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9466         with is_hint FALSE, get x and y from the event. They used to be
9467         used uninitialised. The Win32 backend never sends motion events
9468         marked as hints. This for instance fixes the annoying file and
9469         font selector behaviour in the Win32 version.
9470
9471 2000-04-14  Tor Lillqvist  <tml@iki.fi>
9472
9473         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9474         gtk_private_n_signals variables, they are used by some software,
9475         sigh.
9476
9477         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9478         installation directory from the Registry, where the installer
9479         should have put it.
9480
9481 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
9482
9483         * gdk/x11/Makefile.am: Fix problem with installation directory for
9484         gdkx.h
9485
9486         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9487         <mrcooger@cyberverse.com> so that when selecting menus with the
9488         mouse, the first item will not be selected, but when selecting
9489         with an accelerator, or navigating left-right on a menubar with
9490         the menus popped up, the first item will be selected.
9491
9492 2000-04-05  Dan Damian  <dand@dnttm.ro>
9493
9494         * configure.in: Added "ro" to ALL_LINGUAS.
9495
9496 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
9497
9498         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9499         indentation.
9500
9501         * Makefile.am (EXTRA_DIST): Fix typo.
9502
9503         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9504         to catch gdkconfig.h
9505
9506         * gtk/gtkitemfactory.c: Added FIXME.
9507
9508 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
9509
9510         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9511         s/return_if_fail/return_val_if_fail/g and add a return value.
9512
9513 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9514
9515         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
9516         merge slipup.
9517
9518         * gdk/gdkinput.h: Fix missing line from merge.
9519
9520 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
9521
9522         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9523         instead of gdkprivate.h.
9524
9525 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
9526
9527         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9528         parent class to correctly be GtkDialogClass.
9529
9530 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
9531
9532         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9533         toplevel windows and their immediate children by their parents,
9534         since the size of toplevel windows is out of our immediate
9535         control and we don't get any real benefit from trying to track
9536         this size for clipping.
9537
9538         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9539         for input_only windows.
9540
9541         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9542         to fix some hacks and make sure that we don't try to set the
9543         background of input only windows.
9544
9545 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
9546
9547         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
9548         the _really_ internal stuff, and leave gdkprivate.h for the fake private
9549         stuff that we've traditionally exposed.
9550
9551         * gdk/**.c: Use gdkinternals.h where appropriate.
9552
9553         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
9554         not include gdkprivate-x11.h, move all stuff of conceivable public
9555         interest into gdkx.h; keep all really private stuff in
9556         uninstalled header gdkprivate-x11.h.
9557
9558         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
9559         image->image_put on windows through a new function _gdk_window_draw_image()
9560         to allow us to do backing store for images. (Sort of ugly)
9561
9562         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
9563         contexts locally so that we can offset them properly when drawing 
9564         onto backing pixmaps.
9565
9566         * gdk/gdkinput.h: Reindented
9567
9568         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
9569         pixmap or color for the window, so we can properly initialize
9570         our double-buffer pixmaps, and also so that we temporarily set
9571         a background of None while scrolling.
9572
9573         * gdk/gdkregion.h: Revise region boolean operators to have an
9574         interface that is actually convenient - switch from creating new
9575         regions on every op, to "methods" that modify existing regions
9576         (A = A OP B). 3 argument forms which allow dest == src, would also
9577         be possible, but the current interfaces seem to map nicely
9578         onto what needs to be done. (There is quite a lot of region
9579         code in GDK now.)
9580
9581         * gdk/gdkregion.h: Add constructor from rectangle and a copy
9582         operator.
9583
9584         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
9585         gdkpoly-generic.h: Copy region code from Xlib, switch it over
9586         to 32 bit coordinates, modify it to be mostly GTK+ style
9587         and to have interfaces that match gdkregion.h.
9588
9589         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
9590         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
9591         create a backing pixmap and redirect all drawing to
9592         that backing pixmap until a matching gdk_window_end_paint().
9593
9594         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
9595         Create a special drawable class for GtkWindow's that 
9596         redirects the drawing to the backing pixmap as necessary
9597         and then calls the real operations in _gdk_windowing_window_class.
9598
9599         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
9600         Store invalid region for each window. Generate expose events for invalid
9601         region in an idle. This replaces both the expose compression
9602         and the redrawing queuing in GTK+. It is both more efficient and
9603         simpler than either one individually and far more so then the
9604         combination.
9605
9606         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
9607         Emulate 32 bit coordinates for windows with 16 bit coordinates
9608         by offsetting drawing, guffaw scrolling techniques and
9609         mapping/unmapping child windows as necessary.
9610
9611         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
9612         where, when invalid regions are processed, the region is stored,
9613         and if expose events come in that are detectably duplicate
9614         the processed exposes (by comparison of event serial numbers),
9615         the stored region is subtracted out of those exposes.
9616
9617         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
9618         regions newly exposed when scrolling or resizing windows.
9619         This, combined with forcing processesing of queued invalidated
9620         regions, gives nice flicker-free scrolling.
9621
9622         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9623         invalidated regions after every scroll.
9624
9625         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9626         emulation in GDK. Its, for all practical purposes just a
9627         GtkViewport/GtkFixed hybrid now.
9628
9629         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9630         (16-bit) structures as necessary instead of just casting.
9631
9632         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9633         in terms of the structures from gdkregion-generic.c, using appropriate
9634         offsets from GDK to X11 coordinates. Cache clip mask and
9635         origin and ts origin locally and only flush to the server
9636         when drawing, to avoid constantly setting and resetting these
9637         values when offsetting GC's for scrolling and backing pixmaps.
9638
9639         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9640
9641         * gtk/gtkcontainer.c: Call process_all_updates at end
9642         of resizing to reduce flicker. (Avoids having redraw
9643         lag arbitrarily behind resize under some circumstances)
9644
9645         * gtk/gtkentry.c: Remove old backing store code, and simply take
9646         advantage of the new backing store capabilities of GDK.
9647
9648         * gtk/gtkmain.c: Simple implementation of widget backing
9649         store - simply push a paint while handling each expose.
9650         (Should really be configurable widget for widget.)
9651         
9652         * gtk/gtkwidget.c: Remove all the old complicated redraw
9653         code, and simply invalidate the GDK windows from
9654         gdk_window_queue_clear(), etc. (Sigh, so much carefully
9655         debugged complexity ... gone to the winds.)
9656
9657         Remove all the code for suppressing expose events while
9658         resizes are pending; this isn't needed since the invalid
9659         areas won't be processed until after the resizes are
9660         processed, since they are in a lower priority idle.
9661
9662 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
9663
9664         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9665         and height of dest rectangle for non-intersecting rectangles.
9666
9667 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
9668
9669         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9670         for GdkRectangle.
9671
9672 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
9673
9674         * gdk/gdk{events,image,private,types,window}.h
9675          gdk/x11/gdkinputprivate.h: Change all coordinates
9676          from int16 to int. Also, Change width and height from
9677          unsigned to signed to avoid all the stupid C 
9678          signedness bugs.
9679
9680 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
9681
9682         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9683         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9684         Add some more detailed checking.
9685
9686         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9687         New function to retrieve the depth of a drawable.
9688
9689         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9690         field, reorder fields to save memory. 
9691
9692 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
9693
9694         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9695         of the background image instead of scaling the background down to
9696         a line.
9697
9698         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9699         which temporarily set slider to wrong size.
9700
9701         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9702         queue_clear().
9703
9704 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
9705
9706 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
9707
9708         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9709
9710 2000-03-17  Tor Lillqvist  <tml@iki.fi>
9711
9712         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9713         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9714
9715         * gdk/win32/gdkfont-win32.c
9716         * gdk/win32/gdkproperty-win32.c
9717         * gdk/win32/gdkselection-win32.c
9718         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9719         now declared such.
9720
9721 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9722
9723         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9724
9725 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
9726
9727         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9728         is called without trapping X errors.
9729
9730 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
9731
9732         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9733         way into the fontset lists.
9734
9735 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
9736
9737         * gtk/gtkthemes.h: add extern "C" scope.
9738
9739 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
9740
9741         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
9742         to make appends to the list constant. (gtk-guy-990901-0.patch)
9743
9744 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
9745
9746         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9747         for the typename hash table.
9748
9749 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
9750
9751         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9752         to make sure we never divide by zero. 
9753         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9754
9755 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
9756
9757         * gtk/gtkfontsel.c: Apply patch from
9758         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9759         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9760
9761         Also, some cleanups in atom handling.
9762
9763 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
9764
9765         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9766         not GtkWidget.
9767
9768 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
9769
9770         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
9771         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
9772         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9773         more guint wrap-around bugs before going to bed.
9774
9775 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
9776
9777         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9778         guint wrap arounds in allocation.width.
9779
9780         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9781         process untill we fit the allocation given.
9782
9783 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
9784
9785         * gtk/gtkwidget.c:
9786         (gtk_widget_unrealize): guard widget access with ref/unref
9787         around signal emission.
9788         (gtk_widget_hide): same here, but also check its destroyed
9789         state before queueing a resize.
9790
9791 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
9792
9793         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9794         of gtk_default_insensitive_bg as insensitive base color.
9795
9796         * gtk/gtktext.c (gtk_text_style_set): set the background color according
9797         to the widget's state.
9798         (gtk_text_realize): same here.
9799         (gtk_text_state_changed): same here.
9800         (draw_bg_rect): compare background color against base[] from
9801         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9802
9803 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
9804
9805         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9806         grabs are active, unless a delete event is send to the toplevel
9807         of the currently grab holding widget.
9808
9809 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
9810
9811         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9812         debugging g_print's.
9813
9814 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
9815
9816         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9817         ever make the scrolled-window requisition ever depend on the 
9818         visibility state of the scrollbars for the AUTOMATIC policy. 
9819         This breaks the GTK+ requisition model, and causes loops.
9820
9821 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
9822
9823         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9824         the default font to avoid problems with XFree86-4.0 where the
9825         default charset is iso10646-1, not iso8859-1.
9826
9827 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9828
9829         * acinclude.m4
9830         * config.guess
9831         * config.sub
9832         * ltconfig
9833         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9834
9835         * gtk/Makefile.am: minor cosmetic consistency tweak
9836
9837 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
9838
9839         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9840         the activate_time to 0, so that we handle a quick
9841         press/release press/release properly and don't suppress
9842         the second release. (Red Hat bug #7545)
9843
9844 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
9845
9846         * gtk/gtkctree.c (row_delete):
9847         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9848         bugs with destruction notifier, *always* update internal
9849         structures *before* calling user code.
9850
9851 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
9852
9853         A few more fixes for bug #5487, #2051, #2677.
9854         * gtk/gtkclist.c : 
9855         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
9856         not GDK_BUTTON_PRESS.
9857         (resync_selection): resync only if selection_mode is
9858         GTK_SELECTION_EXTENDED
9859         * gtk/gtkctree.c (resync_selection): same here
9860
9861 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
9862
9863         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9864         gdk_drag_get_selection() and gtk_menu_detach().
9865
9866         [ From Jeroen Ruigrok/Asmodai ]
9867
9868 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
9869
9870         * gtk/gtknotebook.c (gtk_notebook_size_request): 
9871         page->tab_label can be NULL.
9872
9873 2000-01-25  Havoc Pennington  <hp@pobox.com>
9874         
9875         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9876         arg is boolean
9877
9878         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9879
9880         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9881
9882         * gdk/gdkproperty.c (gdk_property_get): return boolean
9883
9884         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9885
9886         * gdk/gdkim.c (gdk_im_ready): return boolean
9887
9888         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9889
9890         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9891         glib clash, should fix glib)
9892
9893         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9894         (gdk_get_show_events): return gboolean, and canonicalize 
9895         to TRUE/FALSE
9896
9897         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9898         colormap is private
9899         (gdk_colors_alloc): gboolean whether to be contiguous
9900         (gdk_color_equal): return gboolean since we are a predicate
9901         and not a qsort() (this looks semi-wrong due to glib breakage,
9902         IMO glib should be fixed)
9903         
9904         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9905         (gdk_get_use_xshm): return gboolean
9906         (gdk_pointer_is_grabbed): return gboolean
9907
9908         * gdk/gdk.h: Change prototypes to match all the above changes,
9909         and re-run egtk-format-protos as required.
9910
9911 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
9912
9913         * gtk/gtkctree.c (resync_selection): 
9914         * gtk/gtkclist.c (resync_selection):
9915
9916         Return immediately if clist->drag_pos < 0. This is a workaround
9917         for the corrupt state that the clist gets into when a
9918         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9919
9920         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9921         
9922         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9923         variable from recent commit.
9924
9925 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
9926
9927         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9928
9929 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
9930
9931         * gtk/Makefile.am: prefix all autogenerated source that get build in
9932         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9933         in builddir. since we subsequently cd into srcdir for autogeneration,
9934         the paths have to be stripped from the target file names, thusly we
9935         use $(@F) as target names now.
9936         put a comment about configure.in's --disable-rebuilds option,
9937         which can be used for non-writable source directories, for development
9938         setups though, srcdir has to be *writable*.
9939
9940 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
9941
9942         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9943           Finish the job of allowing event to be NULL.
9944           (Fixes bug #4283, reported by Chris Blizzard)
9945
9946         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9947           things so that the cursor appears on screen, properly
9948           take into account INNER_BORDER.
9949           (Fixes bug #4754, reported by Antonio Campos)
9950
9951 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
9952
9953         * gtk/gtknotebook.c (gtk_notebook_map): Don't
9954           show the tab_label unless it itself is visible.
9955
9956           gtk/gtknotebook.c (gtk_notebook_size_request):
9957           Do a better job of making sure that the visibility
9958           of the tab label corresponds to whether it should
9959           be mapped or not.
9960
9961 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
9962
9963         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9964           Use the requisition, not the allocation, since the
9965           allocation has not necessarily been computed yet.
9966           (Pointed out by Eugene Osintsev)
9967
9968 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
9969
9970         * gtk/gtkstyle.c (gtk_style_new): Dont' set
9971           style/base[GTK_STATE_INSENSITIVE] both to
9972           gtk_default_insensitive_bg!
9973           (Bug #2187, reported by Jonathan Blandford)
9974
9975         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9976           Add Alt_L, Alt_R to list of invalid accelerators.
9977           (Bug #3736, reported by Vlad Harchev)
9978
9979 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
9980
9981         * gtk/gtkfilesel.c (open_ref_dir): Fix several
9982         bugs which occured after an attempt to open 
9983         invalid home directory left cmpl_state->reference_dir == NULL.
9984
9985          - completion on files in home directory didn't work
9986          - completion on an empty string caused  segfault
9987
9988          (Bug #3678, reported by Steve Ratcliffe)
9989
9990         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9991         cut and paste error that was causing scales to
9992         be incorrectly positioned.
9993         (Bug #2956,
9994          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9995
9996 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
9997
9998         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9999         when checking for dcgettext, if we've found we needed
10000         it for dgettext.
10001 +
10002 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
10003
10004         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10005         queue_clear on NO_WINDOW widgets during a reparent,
10006         since at that point the window and widget heirarchies
10007         are out of sync. This stops crashing in some cases
10008         (the scrolled window reparent test, for instance), and
10009         _probably_ won't cause drawing errors.
10010
10011         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
10012         test do what it was supposed to do and be robust against
10013         window closings, etc. (Bug #2443)
10014
10015 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
10016
10017         * gtk/gtkentry.c: Fix return values on mouse events.
10018         (Bug #2686, Sky <seb_sky@yahoo.com>)
10019
10020         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
10021         (pointed out by George Lebl)
10022
10023         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
10024         (From Ettore Perazzoli  <ettore@helixcode.com>)
10025  
10026 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
10027
10028         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
10029         clicks between rows or outside calender area correctly.
10030         (Patch from Damon Chaplin)
10031
10032         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
10033         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
10034           Call destroy function when overwriting existing data. 
10035           (Pointed out by Damon Chaplin)
10036
10037 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
10038
10039         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
10040           which was causing problems on various systems with Xmu.
10041           This hasn't been needed for a very long time.
10042           (Fixes #1185 3167)
10043
10044 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
10045
10046         * gdk/gdki18n.h: Include <ctype.h> when defining
10047           gdk_isw* in terms of is* as a fallback.
10048           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
10049
10050 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
10051
10052         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
10053           realize the widget when it is size allocated!
10054           (old, old bug)
10055
10056         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
10057           Removed unused call to gdk_window_get_size() that
10058           showed up when the above was fixed.
10059
10060 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
10061
10062         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
10063           fix up widget->window when the widget is a
10064           NO_WINDOW container widget.
10065
10066 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
10067
10068         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
10069           to account for the fact that feof() does _not_ 
10070           return TRUE on errors, and thus avoid infinite loops
10071           when trying to use gdk_pixmap_create_from_xpm()
10072           on unreadable values.
10073
10074 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
10075
10076         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
10077
10078 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
10079
10080         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
10081           gdk_gc_set_dashes to take gint8 instead of gchar to
10082           make it clearer that it is _not_ a NULL terminated string.
10083
10084         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
10085           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
10086           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
10087           arguments.
10088
10089 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
10090
10091         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
10092         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
10093         background size relative to our allocation, guard against small
10094         allocations, we may have not yet been size allocated.
10095
10096 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
10097
10098         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
10099         not just version == 3. We implement all 3 + most of 4 - 
10100         (we don't support matching text/plain;charset=iso-8859-1
10101         to a dest that expects text/plain). We'll still advertise
10102         3 to be safe, but any client implementing version >= 3
10103         must interoperate with 3.
10104         
10105 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10106
10107         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
10108         background and gc members, add a warning in gtk_tooltips_set_color()
10109         indicating that this function is deprecated.
10110
10111 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
10112
10113         * docs/gtkfaq.sgml: FAQ Update:
10114           - Minor cleanups (Emmanuel, me)
10115           - New questions:
10116                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
10117                 How can I retrieve the text from a GtkMenuItem? (timj)
10118                 How do I validate/limit/filter the input to a GtkEntry? (me)
10119                 Memory does not seem to be released when I free the list
10120                         nodes I've allocated (timj)
10121
10122 2000-03-07  Tor Lillqvist  <tml@iki.fi>
10123
10124         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
10125         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
10126         for which it is no use to call GetLastError onWin9x.
10127         (gdk_other_api_failed) New function, for general error
10128         reporting without calling GetLastError.
10129         (gdk_win32_api_failed) OTOH, this function always calls
10130         GetLastError. (gdk_win32_last_error_string) Remove this function,
10131         GLib has the equivalent now.
10132
10133         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
10134         call them with function name, file name and line number in the
10135         arguments.
10136
10137         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
10138         functions.
10139         
10140         * gtk/gtk.def: Add some missing entry points.
10141
10142         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10143         gtk_paned_set_gutter_size, which don't exist any longer, as void.
10144         
10145         Fixes by Hans Breuer:
10146
10147         * gdk/makefile.msc: Update for debugging.
10148
10149         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
10150         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
10151         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
10152         in the dash_list.
10153
10154         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10155         the x11 backend.
10156
10157         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10158
10159         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10160
10161 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10162
10163         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10164         just pixel value of background colour.
10165
10166         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10167         containing code snippet previously duplicated in a couple of
10168         places.
10169         
10170         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10171         gdk_colormap_color.
10172
10173         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10174         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10175         events for autorepeated Shift, Control and Alt keys. Use
10176         gdk_colormap_color.
10177
10178         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10179         pointer is inside the window the cursor of which we are setting,
10180         call SetCursor immediately.
10181
10182         * gdk/win32/makefile.cygwin
10183         * gtk/makefile.cygwin: If we don't have the build number stamp
10184         file, use zero.
10185
10186         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10187         gtk_paned_set_gutter_size as empty.
10188
10189         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10190         
10191 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
10192
10193         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10194           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10195           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10196           docs/gtk_tut.sgml docs/gtk.texi TODO:
10197
10198           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10199
10200 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
10201
10202         * gtk/gtkcalendar.c: Implement num_marked_dates,
10203           and don't emit mutiple day_selected signals on
10204           month_prev.
10205
10206 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
10207
10208         * docs/make-todo (lineno): let title and logo be configurable so
10209         that GNOME can use this script too.
10210
10211         * TODO.xml: added logourl and a title
10212
10213 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
10214
10215         * TODO.xml: Added some UI items, and an explanatory
10216         comment at the top of the file.
10217
10218 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
10219
10220         * TODO.xml: some updates, added abunch of new entries.
10221         a note for those fiddeling with this file, when done
10222         with it, invoke:
10223         $ ./docs/make-todo TODO.xml >/dev/null
10224         and correct output errors before comitting changes.
10225
10226 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
10227
10228         * TODO.xml: Added XML-structured TODO file.
10229         * docs/make-todo: python script to turn TODO.xml into
10230           pretty XML output. 
10231
10232 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
10233
10234         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
10235         the function to let it draw the seven dots, instead of the old,
10236         much maligned, method.
10237         (draw_dot): New function to draw a dot.
10238
10239         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
10240         to draw the handle inside the border width as opposed to outside.
10241         Use paint function instead of gdk_draw_point.
10242
10243         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
10244         to draw the handle inside the border width as opposed to outside.
10245         Use paint function instead of gdk_draw_point.
10246
10247         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
10248         Change indenting to be more GTK like.
10249
10250 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
10251
10252         * docs/gtk_tut.sgml: New section on GtkCalendar
10253         * examples/calendar: Update example code
10254
10255 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
10256
10257         * docs/gtkfaq.sgml: FAQ Update
10258
10259 2000-02-19  Anders Carlsson  <andersca@gnu.org>
10260
10261         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
10262         to prevent the scroll event to be propagated upwards.
10263
10264 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10265
10266         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
10267         OwnerGrabButtonMask from button entries for
10268         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
10269
10270         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
10271         to the event mask (which will result in button/press release
10272         being added to the event mask on Unix) so scrolling works
10273         for layouts in scroll windows.
10274
10275         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
10276
10277         Patch from Anders Carlsson  <andersca@gnu.org> to add
10278         a scroll event.
10279
10280         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
10281         scrolling to the "Test Scrolling" part of testgtk.
10282  
10283         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
10284  
10285         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
10286         it against GDK_SCROLL.
10287  
10288         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
10289         way of mouse wheel scrolling.
10290  
10291         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
10292  
10293         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
10294  
10295         * gtk/gtkmain.c: Removed previous mouse wheel hack.
10296  
10297         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
10298         gdk_event_mask_table.
10299  
10300         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
10301         GdkEventScroll handler.
10302  
10303         * gdk/gdkevents.h: Added GdkEventScroll structure.
10304  
10305 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
10306
10307         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10308         and Anders Carlsson to change the Paned widgets so that they
10309         can be dragged from anywhere along the length. Also change
10310         the way that this is drawn to make this apparent.
10311
10312         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10313         from George Lebl to check that option_menu->menu is present
10314         before getting history.
10315
10316 2000-02-14  Tor Lillqvist  <tml@iki.fi>
10317
10318         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10319         before the assertion for non-NULL segment list.
10320
10321         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10322         Seems that pattern brushes *must* be 8x8 pixels! At least on my
10323         machine, but it might be display driver dependent. Sigh, so make
10324         sure the stipple is that size. Does Windows suck or what?
10325
10326         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10327         places.
10328
10329 2000-02-13  Havoc Pennington  <hp@pobox.com>
10330
10331         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10332         refcount to 1
10333         (gdk_cursor_new): init refcount to 1
10334
10335         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10336
10337 2000-02-13  Tor Lillqvist  <tml@iki.fi>
10338
10339         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10340         so that we don't have to do unnecessary settings to the HDC.
10341
10342         * gdk/win32/gdkdrawable-win32.c
10343         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10344         gdk_gc_predraw.
10345
10346         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10347         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10348         GDI paths, call WidenPath to get the outline of the stroken path,
10349         and then fill the outline (with the brush that was built from the
10350         stipple).
10351
10352         * gdk/win32/gdkgc-win32.c: Factor out common code from
10353         _gdk_win32_gc_new and gdk_win32_gc_set_values into
10354         gdk_win32_gc_values_to_win32values. Use correct colour for
10355         SetBkColor() (Until now the code actually used a random colour in
10356         the call to SetBkColor()... but that didn't show up as not many
10357         GDI APIs use the background colour. Pattern (opaque stippled)
10358         brushes do.)
10359
10360         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10361         gdk_win32_api_failed): New functions for error logging.
10362
10363         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10364         WIN32_API_FAILED to call them, passing function or file name and
10365         line number.
10366
10367         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10368
10369         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10370         GdkColor for foreground and background in GdkGCWin32Data.
10371
10372         * gdk/makefile.cygwin: Link in the resource object separately.
10373
10374         * gdk/win32/rc/gdk.rc
10375         * gtk/gtk.rc (New file)
10376         * gdk/win32/makefile.cygwin
10377         * gtk/makefile.cygwin: Update build number in DLLs automatically,
10378         as in GLib.
10379
10380 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
10381
10382         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10383         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
10384         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
10385         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10386         parameters given and cursor->ref_count. coding style fixups.
10387
10388         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10389         not GtkWidget.
10390         
10391         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10392         fix up widget macros and add _GET_CLASS() variant.
10393         
10394         * gtk/*.c: some GtkType fixups.
10395
10396 2000-02-09  Tor Lillqvist  <tml@iki.fi>
10397
10398         * gdk/win32/gdkproperty-win32.c
10399         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10400         were reversed.
10401
10402 2000-02-04  Tor Lillqvist  <tml@iki.fi>
10403
10404         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10405         g_filename_to_utf8 to convert the font names Windows gives us from
10406         whatever is the default codepage to UTF-8.
10407         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10408         in the other direction.
10409
10410         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10411         error in debugging output.
10412
10413 2000-02-02  Tor Lillqvist  <tml@iki.fi>
10414
10415         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10416         and height parameters to gdk_window_clear_area(). Not minus one.
10417
10418 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
10419
10420         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10421         checks if the widget passed to gtk_drag_get_data() was not the
10422         dest widget.
10423
10424 2000-02-01  Tor Lillqvist  <tml@iki.fi>
10425
10426         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10427         g_filename_from_utf8 functions (which were added a moment ago to
10428         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10429         size buffers.
10430
10431         gtk_file_selection_get_filename returns the filename in the C
10432         runtime encoding. It calls g_filename_from_utf8, but copies the
10433         returned string to a static buffer, which is returned. I think
10434         this is better than returning the result from g_filename_from_utf8
10435         directly, which would mean all apps that use it would have to free
10436         the return value. Or should this function care about this issue at
10437         all? Maybe a new function with clearly defined semantics.
10438
10439         * gtk/gtkfilesel.h: Add comment about
10440         gtk_file_selection_get_filename returning the filename in the C
10441         runtime's encoding.
10442
10443         * README.win32
10444         * gdk/gdk.def
10445         * gdk/makefile.{cygwin,msc}
10446         * gtk/gtk.def: Updates.
10447
10448         * gdk/gdkcursor-win32.c: Initialise refcount.
10449
10450 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
10451
10452         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10453
10454 2000-01-30  Havoc Pennington  <hp@pobox.com>
10455
10456         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10457         destroy
10458
10459         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10460
10461         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
10462         implemented in platform-specific code
10463
10464         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10465
10466         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10467         underscore in front
10468
10469         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10470         put an underscore in front
10471
10472         * gdk/gdkcursor.c: new file, implements
10473         gdk_cursor_ref/gdk_cursor_unref
10474
10475         * gdk/gdkcursor.h: Refcount GdkCursor
10476
10477         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10478
10479 2000-01-29  Tor Lillqvist  <tml@iki.fi>
10480
10481         * gdk/gdkwindow.h
10482         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10483
10484 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10485
10486         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10487         structures to properly inherit from GtkWidget not GtkBin.
10488
10489 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
10490
10491         * gtk+.spec.in: Added lib/gtk+/include/* to %files
10492         (bug #5178 - Peter Wainright)
10493         
10494         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10495         so that it will be installed.
10496         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10497
10498 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
10499
10500         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10501         for the GtkStyleClass vtable const.
10502
10503         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10504         take a const string argument like GtkTranslateFunc. This will
10505         require changes in use code.
10506
10507 2000-01-19  Tor Lillqvist  <tml@iki.fi>
10508
10509         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10510         semantics (to mimic the X11 backend, which just calls XClearArea)
10511         is to check for zero width (and height), and in that case use the
10512         window's width minus x (height minus y). This fixes for instance
10513         some redraw problems with gtkclist, which were easily noticeable
10514         in the gtk file selection widget.
10515
10516         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10517         windows.
10518
10519 2000-01-13  Tor Lillqvist  <tml@iki.fi>
10520
10521         * configure.in
10522         * gdk/Makefile.am
10523         * gdk/x11/Makefile.am
10524         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10525         (bug #5177).
10526         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10527         out later.
10528
10529 2000-01-09  Tor Lillqvist  <tml@iki.fi>
10530
10531         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10532         WM_MOVE for iconified or invisible windows. This fixes various
10533         problems when minimising windows. Thanks to Bernd Herd.
10534
10535 2000-01-05  Tor Lillqvist  <tml@iki.fi>
10536
10537         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10538         backend's draw_lines method, not draw_points.
10539
10540 2000-01-02  Tor Lillqvist  <tml@iki.fi>
10541
10542         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10543         before Owen's reorganisation: Don't have queued_events and
10544         queued_tail statics in this file, but use gdk_queued_events and
10545         gdk_queued_tail. This makes exposure event compression work again.
10546
10547         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
10548         seem to be needed?
10549
10550 1999-12-30  Tor Lillqvist  <tml@iki.fi>
10551
10552         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
10553         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
10554         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
10555         doesn't do anything.
10556
10557         * gdk/gdk.def: Add gdk_xid_table_insert.
10558
10559         * gdk/win32/gdkprivate-win32.h
10560         * gdk/win32/gdkevents-win32.c
10561         * gdk/win32/gdkinput-win32.c
10562         
10563         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
10564         extension_events field in the GdkWindowWin32Data struct. Use only
10565         the extension_events field in GdkWindowPrivate. Previously one was
10566         set, and the other one tested, which broke tablet
10567         functionality. Thanks to Keishi Suenaga for pointing this out.
10568
10569 1999-12-18  Tor Lillqvist  <tml@iki.fi>
10570
10571         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
10572         When handling a single character (text length == 1), don't handle
10573         it as if it was UTF-8.
10574
10575 1999-12-11  Tor Lillqvist  <tml@iki.fi>
10576
10577         * Makefile.am: Distribute README.win32.
10578         
10579         * gdk/Makefile.am
10580         * gdk/win32/Makefile.am: Distribute Win32 files.
10581
10582         * gdk/makefile.msc: New file.
10583
10584         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
10585         after label).
10586
10587         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
10588         gdk_error_code as GDKVAR, as they are referred outside GDK.
10589
10590         * gdk/win32/makefile.msc: Update.
10591
10592         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
10593         tweaks. Check only if at least one of those Unicode subrange bits
10594         we care for is set. If no code page bits are set, guess (wildly)
10595         based on the charset.
10596
10597         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
10598
10599         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
10600         non-NULL.
10601
10602         * gtk/gtkdnd.c
10603         * gtk/gtklayout.c
10604         * gtk/gtkplug.c
10605         * gtk/gtkselection.c
10606         * gtk/gtksocket.c
10607         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
10608         appropriate. There must be a cleaner way to handle this?
10609
10610         * gtk/gtkrc.c: Must include windows.h on Win32.
10611
10612         * gtk/testgtk.c: No need to include gdkx.h.
10613
10614         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
10615
10616 1999-12-07  Tor Lillqvist  <tml@iki.fi>
10617
10618         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
10619         the rbearing is set to the same as the width, but this should be
10620         fixed.
10621
10622 1999-12-06  Tor Lillqvist  <tml@iki.fi>
10623
10624         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10625         function. If Windows doesn't tell us what Unicode subranges a font
10626         covers, guesstimate based on the codepages it covers. This will
10627         hopefully help those Windows versions or fonts that don't give us
10628         any useful Unicode subrange information with GetTextCharsetInfo.
10629         Call this function in gdk_font_load_internal.
10630
10631         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10632         minor changes.
10633
10634 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
10635
10636         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10637         New function, long needed.
10638
10639 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
10640
10641         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
10642         only_if_exists argument of gdk_atom_intern to
10643         bool.
10644
10645 1999-11-25  Tor Lillqvist  <tml@iki.fi>
10646
10647         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
10648         Fix two copy&paste errors.
10649
10650         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10651         win32 has changed.
10652
10653         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10654         GdkWin32SingleFont struct.
10655
10656         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10657         subranges of loaded fonts. Clear font signature first, in case
10658         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10659         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10660
10661         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10662         Unoffset clip region.
10663
10664 1999-11-23  Tor Lillqvist  <tml@iki.fi>
10665
10666         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10667         event->any.window before calling filter functions.
10668
10669 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
10670
10671         * gtk/gtkgamma.h: Adapt cast macros to standard.
10672
10673 [ Merges from 1.2 ]
10674
10675 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
10676
10677         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10678         If translation does not include a '/', use entire
10679         translation instead of crashing.
10680
10681 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
10682
10683         * docs/gtk_tut.sgml:
10684         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10685
10686 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtkselection.c (gtk_target_list_remove): Use
10689         g_list_remove_link, not g_list_remove.
10690
10691         [ From Geert Bevin <gbevin@thunderstorms.org> ]
10692         
10693 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
10694
10695         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10696         statement upon unselection (how the heck did that slip in?).
10697
10698 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
10699
10700         * gtk/gtktext.c (gtk_text_freeze): 
10701         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10702         in frozen state (and aparently crashes). patch provided by Anders
10703         Melchiorsen <and@kampsax.dtu.dk>.
10704
10705 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
10706
10707         * fix insensitive default/focus widget activation,
10708         reported by Matt Goodall <mgg@isotek.co.uk>.
10709
10710         * gtk/gtkwindow.c (gtk_window_key_press_event): 
10711         (gtk_window_activate_default):
10712         (gtk_window_activate_focus):
10713         return handled=FALSE for actiavtion of insensitive default
10714         widgets. return handled=TRUE for activation of insensitive
10715         focus widgets. don't activate in either case.
10716
10717 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10720         and $glib_cflags to match library order and in the
10721         theory that an old version of GLib is more likely to
10722         be in the include directory for X then vice-versa.
10723         (Bug #2776)
10724
10725 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
10728         to determine the locale for fontsets, not LC_MESSAGES;
10729         the user may want English messages with a handling
10730         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10731         will still be broken) (Bug #2891)
10732
10733 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10734
10735         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10736
10737 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10738
10739         * gtk/gtkrc.ko: Changed the Korean default fontset.
10740
10741 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
10742
10743         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10744         where when scrolling to the left or top double exposes
10745         were done, causing major slowdowns.
10746
10747 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
10748
10749         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10750         names to lowercase and alphanumeric, before looking
10751         them up.
10752
10753         * gtk/Makefile.am: Install codeset variant gtkrc files
10754         with normalized names.
10755
10756 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
10757
10758         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10759         popup menus when the menu is already visible, but its parent
10760         is still hidden, (happens after tornoff window got hidden).
10761
10762 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
10763
10764         * gtk/Makefile.am (install-data-local): Fix
10765         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10766         deleted, causing error messages on install.
10767
10768 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
10769
10770         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10771         the handle as well, since we now sometimes ignore
10772         exposes on the handle while resizing.
10773
10774 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
10775
10776         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10777         extra g_free introduced in one of the last one or two 
10778         commits.
10779
10780 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
10781
10782         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10783         consistent, put each style that a gtkrc.* file creates
10784         in a unique namespace, remove old files before installing.
10785
10786 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
10787
10788         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10789         gtk_rc_init is called multiple times. (Yes, people who
10790         do that have bugs in their code.)
10791
10792 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10793
10794         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10795         Remove it since it's generated by the Makefile anyway
10796
10797 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
10798
10799         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10800         device->info.axes for core pointer.
10801
10802 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
10803
10804         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
10805         idle_id, to deal with obsolete, broken C libraries.
10806
10807 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
10808
10809         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10810         allocation->x/y twice!
10811
10812         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10813         consistent with gtk_vscale_pos_trough().
10814
10815 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
10816
10817         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10818         be queueing a resize on a toplevel container between
10819         the time we show it and when we map it. So, we need
10820         to test GTK_WIDGET_VISIBLE() for toplevels, and only
10821         use GTK_WIDGET_DRAWABLE() for child windows.
10822
10823 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
10824
10825         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
10826         (fixes bug #2144)
10827
10828 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
10829
10830         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10831         container DRAWABLE (instead of VISIBLE), so we don't queue
10832         resizes on non-toplevel containers.
10833
10834 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
10835
10836         * gtk/gtkselection.[ch]: Make the data argument
10837         const guchar *.
10838
10839 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
10840
10841         * gtk/gtkwindow.c: Try to behave sensibly if 
10842         the focus widget is the window itself. (Should
10843         we allow this at all?)
10844
10845 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
10846
10847         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
10848         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
10849         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
10850         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10851         in prototypes and implementations consistent (Tomas Ogren).
10852
10853         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10854         before the widget is unparented (reported by damon).
10855
10856         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10857         since we provide unsigned data anyways.
10858
10859 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10862         the call to gtk_tooltips_layout_text() until later.
10863
10864         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10865         Call gtk_widget_ensure_style() before using the style.
10866
10867 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
10868
10869         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10870         for old widgets that don't propagate draws to all
10871         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10872
10873 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
10874
10875         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10876         for a redraw but just the widget that requested the resize.
10877
10878 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
10879
10880         * gtk/gtkcontainer.c: added new widget level method
10881         gtk_container_set_reallocate_redraws() and a GtkContainer flag
10882         reallocate_redraws : 1 to reflect the setting, exported this through
10883         the argument system as a boolean ::reallocate_redraws.
10884
10885         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10886         on the widget because the allocation changes, do so as well for
10887         widget->parent if the parent has reallocate_redraws set to TRUE.
10888         with that containers requesting reallocation redraws get automatically
10889         redrawn if their children changed allocation (this unfortunately
10890         affects also other children that didn't change allocation, but we
10891         cannot work around that before 1.3).
10892
10893 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
10894
10895         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10896         _and_ height are >0 (not _or_).
10897
10898         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10899         instead of gtk_container_queue_resize(), which is a core gtk internal
10900         function (must have been on crack when i queued that).
10901
10902         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10903         we can check more reliably if we want to discard expose events.
10904         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10905         flag.
10906         
10907         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10908         we simply trust these events. for deciding whether to discard exposes,
10909         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10910         
10911 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
10912
10913         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10914         queues of areas that are completely off screen.
10915
10916         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10917         logic for handleboxes.
10918
10919         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10920         check on width/height.
10921
10922 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
10923
10924         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10925         we are fine with using $@ the way we do (if we actually encounter
10926         brokeness with $@ in VPATH builds because of additional path prefixes,
10927         we need to use $(@F) actually).
10928
10929 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
10930
10931         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10932         short lived bugs, that would allow language bindings to do surgeries
10933         to our guts.
10934
10935 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
10936
10937         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10938         where comparison was being done against an uninitialized
10939         value causing intermittant results depending on
10940         compiler flags. Also make it clearer that we aren't
10941         ever initializing the child as 0x0 (though this will
10942         be caught in gtk_widget_size_allocate())
10943
10944 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
10945
10946         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10947         gtk_window_unset_transient_for() call after we do checks
10948         involving the old transient parent.
10949         [ From Lance Capser <lmc@cyberhighway.net> ]
10950
10951 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
10952
10953         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10954         an empty file.
10955
10956 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
10957
10958         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10959         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10960
10961 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
10962
10963         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10964         `$@' is valid only in the build dir, not after we've done 
10965         `cd $srcdir'.  Also use `test -f' instead of less portable
10966         `test -e'.
10967
10968 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
10969
10970         * gtk/gtktext.c (correct_cache_insert): Rewrite
10971          for simplicity, and hopefully correctness.
10972          (Fixes bug #1322, which was a segfault when
10973           on some insertions with the properties around
10974           the insertion set up just wrong.)
10975
10976         * gtk/gtktext.c (gtk_text_adjustment): When we receive
10977          a "changed" signal, clamp the new value to the adjustment
10978          bounds to avoid segfaulting if someone tries to change
10979          the adjustment to a bogus value. (Bug #1795)
10980
10981 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
10982
10983         * gtk/gtkmain.c: Ignore unexpected destroy notifies
10984         for children, for toplevel windows handle them
10985         like delete_event.
10986
10987         * gtk/gtkplug.c: Add an unrealize handler so that
10988         we unref plug->socket_window when we are done
10989         with it.
10990
10991 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
10992
10993         * gtk/gtktext.c (clear_area): Fix stupid signedness
10994          problem that was causing background to sometimes
10995          be misaligned.
10996
10997 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
10998
10999         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
11000         
11001         * gtk/gtkmenu.c (gtk_menu_position): Make
11002          sure we never position menus with negative x, y,
11003          since gtk_widget_set_uposition() can't handle that.
11004
11005         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
11006          Modify the positioning code a bit so that we always
11007          put the top-left corner onscreen. (This is for
11008          UI reasons, gtk_menu_position() now takes care of
11009          gtk_widet_set_uposition() brokeness.)
11010
11011 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
11012
11013         * gtk/Makefile.am: fixed up things for -jx, x > 1.
11014
11015 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
11016
11017         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
11018           RC style that is passed in. The lack of the ref
11019           before was a bug. If people worked around this
11020           bug, this will introduce a slight memory leak
11021           in their code. The code should typically look like:
11022
11023             rc_style = gtk_rc_style_new ();
11024             [...]
11025             gtk_widget_modify_style (widget, rc_style);
11026             gtk_rc_style_unref (rc_style);
11027
11028         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
11029           the style if it was already set.
11030
11031         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
11032           style if it was set before.
11033
11034 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11035
11036         * gtk/testgtk.c (main): Add a check to see if we
11037           are being run from the correct directory and
11038           to quit nicely if we are not.
11039
11040         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
11041           static.
11042
11043 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
11044
11045         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
11046
11047         * gtk/gtkwindow.c:
11048         queue resizes unconditionally (gtk_widget_queue_resize will figure
11049         what to do if the window is not realized).
11050         (gtk_window_move_resize): only recenter the window
11051         for GTK_WIN_POS_CENTER_ALWAYS.
11052         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
11053         the same way as GTK_WIN_POS_CENTER.
11054
11055 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
11056
11057         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
11058         with (!(info->last_flags & GDK_HINT_POS)) instead of
11059         (!info->last_flags & GDK_HINT_POS).
11060
11061         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
11062         new_height unconditionally, because we use these values even if
11063         !default_size_changed && !hints_changed.
11064         comented the (default_size_changed || hints_changed) case with
11065         respect to resize rejects from the window manager.
11066
11067         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
11068         in the zvt condition hack, since this includes the window hints, set
11069         the hints after the handling_resize case.
11070
11071         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
11072         window is initially shown with to the geometry.
11073
11074 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
11075
11076         * gtk/gtkwindow.c (gtk_window_move_resize):
11077         s/size_changed/default_size_changed/g so i know what's
11078         really going on (frying brain on smaller flame now).
11079
11080 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
11081
11082         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
11083         we have size_changed upon handling_resize. this is a gross
11084         workaround for the broken zvt widget and should be removed in
11085         1.3 again (search for FIXME).
11086         Owen provided an accurate comment for this:
11087
11088         /* We could be here for two reasons
11089          *  1) We coincidentally got a resize while handling
11090          *     another resize.
11091          *  2) Our computation of size_changed was completely
11092          *     screwed up, probably because one of our children
11093          *     is broken. It's probably a zvt widget.
11094          *
11095          * For 1), we could just go ahead and ask for the
11096          * new size right now, but doing that for 2)
11097          * might well be fighting the user (and can even
11098          * trigger a loop). Since we really don't want to
11099          * do that, we requeue a resize in hopes that
11100          * by the time it gets handled, the child has seen
11101          * the light and is willing to go along with the
11102          * new size. (this happens for the zvt widget, since
11103          * the size_allocate() above will have stored the
11104          * requisition corresponding to the new size in the
11105          * zvt widget)
11106          *
11107          * This doesn't buy us anything for 1), but it shouldn't
11108          * hurt us too badly, since it is what would have
11109          * happened if we had gotten the configure event before
11110          * the new size had been set.
11111          */
11112
11113 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
11114
11115         * gtk/gtkrc.c: deal properly with the fact that RC
11116           style lists may include rc styles more than once.
11117
11118         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
11119           unused static function.
11120
11121         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
11122           stack of directories of RC files currently being
11123           parsed and implicitely add them to pixmap path.
11124           
11125           This fixes a bug where the directory would get
11126           appended then overwritten by pixmap_path declarations.
11127
11128           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
11129
11130         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
11131           theme's exit function. (Patch from Peter Wainwright,
11132           bug #1454)
11133
11134         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
11135           Add a destroy() handler to take care of removing
11136           group for menu item. (Fixes bug #1197)
11137
11138         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
11139           in warning message.
11140
11141 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
11142
11143         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
11144         roundtrip to figure window's width and height, since we know that
11145         anyways from widget->allocation.
11146
11147 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
11148
11149         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
11150           the hints after we request the new size.
11151
11152 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
11153
11154         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11155           GTK_WIDGET_REALIZED() assertion - we can compute the
11156           hints before we are realized.
11157
11158         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11159           hint changing so that we have a value of hints_changed
11160           when we decide whether to constrain the window size.
11161
11162         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11163
11164         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11165         change back to G_MAXINT.
11166
11167 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11168
11169         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11170         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11171         contain uncluttered values.
11172         (gtk_window_compute_hints): simply assert that window is realized
11173         and that geometry_info is valid, since we rely on this anyways.
11174         (gtk_window_constrain_size): major cleanups to the code.
11175         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11176         for the base size, instead of the minimums. use 32767 as max width
11177         and height (like in gtkwindow.c) instead of G_MAXINT.
11178
11179 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11180
11181         * cleaned up the GtkContainer.need_resize flag handling mess, we
11182         only need to force resize requests when we were prematurely
11183         realized, or our widget tree was modified when we were temporarily
11184         hidden. handling these cases directly upon showing the window (i.e.
11185         while the GdkWindow is still unmapped) avoids the need to wait for
11186         a configure event response and therefore makes the GUI more snappier
11187         and avoids blank windows during the roundtrip.
11188
11189         * gtk/gtkwidget.c:
11190         (gtk_widget_hide): 
11191         (gtk_widget_show): don't queue resizes on toplevels, they know how
11192         to deal with matters.
11193
11194         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11195         flag directly for not visible resize containers and spare us unecessary
11196         signal emissions.
11197
11198         * gtk/gtkwindow.c:
11199         (gtk_window_realize): if we need to enforce premature size allocation,
11200         queue a container resize so we are correctly resized later on.
11201         (gtk_window_init):
11202         (gtk_window_size_request):
11203         don't freak around with the ->need_resize flag,
11204         gtk_container_queue_resize() will care about that.
11205         (gtk_window_show):
11206         handle initial resizing issues here, we can handle matters better in
11207         this place, especially since we know that our GdkWindow is still
11208         unmapped.
11209         (gtk_window_move_resize):
11210         don't care about ->need_resize at all.
11211         handle size changes properly that occoured while we waited for a
11212         configure event.
11213
11214 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
11215
11216         * gtk/gtkwidget.c (gtk_widget_set_uposition):
11217         * gtk/gtkwindow.[hc] (gtk_window_reposition):
11218         Move the hint setting code from gtk_widget_set_uposition
11219         to here; set the hints so that we respect any previously
11220         set geometry hints.
11221
11222         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
11223         change the window hints here or move the window here,
11224         let that happen in gtk_window_move_resize().
11225
11226 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
11227
11228         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
11229         to already queued resizes (and therefore redraws) on a widget, check
11230         its anchestry as well.
11231
11232         * gtk/gtkcontainer.c:
11233         (gtk_container_queue_resize): clear resize widgets for resize
11234         containers before aborting prematurely. this is especially important
11235         for toplevels which may need imemdiate processing or their resize
11236         handler to be queued.
11237         (gtk_container_dequeue_resize_handler): added new internal function for
11238         gtkwindow.c.
11239
11240         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
11241         configure event, take possible changes in window position into account
11242         as well.
11243         if we request a new window size, queue up a resize handler that will
11244         last until the configure event response arrives.
11245         combined the ->need_resize case (initial show) with the general size
11246         (hints) changed case and added even more comments.
11247         if !auto_shrink, only revert to the old allocation if the new size
11248         is smaller than the current allocation.
11249
11250 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
11251
11252         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
11253                            gtk_window_set_geometry_hints
11254                            gtk_window_set_default_size):
11255         When hints are set, queue a resize so that the hints will
11256         be eventually reset on the toplevel.
11257
11258         * gtk/gtkwindow.c (gtk_window_show): Use
11259         gtk_window_compute_default_size(). Clear the need_resize flag
11260         on the initail map so that we don't unnecessarily trigger the
11261         resize code.
11262
11263         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
11264         into separate functions. Compare the hints we are setting
11265         with what we set last time so that we can accurately
11266         tell when we need to reset the hints.
11267
11268         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
11269         function to figure out the size from requisition
11270         and default_size.
11271
11272         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
11273         from fvwm to constrain a size to the geometry hints.
11274
11275         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
11276         to compare two sets of geometry hints.
11277
11278         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
11279         from gtk_window_set_hints(), just compute the hints,
11280         don't set them.
11281
11282         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
11283         code from gtk_window_move_resize() to separate function,
11284         rationalize a bit.
11285
11286 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
11287
11288         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
11289         structure into a new private structure.
11290
11291         * gtkrc.c: Split GtkRcStyle into public/private.
11292         In the private part, add a list of pointers to the
11293         RcStyle lists this RcStyle participates in.
11294
11295         * gtkrc.c: When a RcStyle is free, remove all
11296         lists referencing it from the 
11297         realized_style_ht hash, and free those lists.
11298         
11299         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11300         gtk_rc_init(), since that adds the default styles
11301         to the list of parsed RC files again.
11302
11303         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11304         
11305 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
11306
11307         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11308         checks that ensure that a widget's allocation is at least 1 in width
11309         and height. (GNOME note: this doesn't affect old panel code anymore,
11310         because GtkSocket will request width and height of at least 1 since
11311         Fri Jul 23).
11312
11313         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11314         allocated yet (happens if the user realizes the window prematurely),
11315         size request and allocate it.
11316         (gtk_window_size_allocate): guard against guint underflows.
11317
11318 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
11319
11320         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11321         in gtk_built_sources, so gtk.defs gets built prior to all other
11322         sources.
11323
11324 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11325
11326         * gtk/Makefile.am:
11327         invoke indent on gtkmarshal.*. 
11328         rewrote source generation rules, use COPYING as oldest source tag for
11329         a piggyback rule to generate all sources from (don't touch it ;).
11330         major cleanups, strip spaces on build rules for GNU Make.
11331
11332         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11333         source and target files from commandline arguments. don't invoke indent.
11334
11335 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11336
11337         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11338         notebook after switch to avoid drawing problems.
11339         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11340         
11341         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11342         show them instead. 
11343         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11344
11345 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11346
11347         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11348         notebook after switch to avoid drawing problems.
11349         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11350         
11351         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11352         show them instead. 
11353         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11354
11355 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
11356
11357         * gtk/gtkwindow.c:
11358         we use window->need_resize from configure_event now, to indicate that
11359         the gtkwindow should keep its allocation (e.g. because the user resized
11360         the window through window manager handles). resize_count is now reliably
11361         used to figure whether we got the allocation we requested from the
11362         window manager.
11363         configure events get queued as resizes now, the real stuff (size
11364         computation and allocation) now only goes on in gtk_window_move_resize().
11365         GtkWindow's requisition now contains its *real* requisition (like all
11366         other widgets), *not* taking usize into account.
11367         geometry_info->last_{width|height} is now updated from set_hints() only
11368         so it always contains the last hints we set for the window manager.
11369         made some event handlers return TRUE instead of FALSE.
11370         the overall code should be much more straight forward now, and the
11371         significant code portions are accompanied by comments now.
11372         (gtk_window_set_hints):
11373         removed requisition argument and made it
11374         fetch the requisition through gtk_widget_get_child_requisition.
11375         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11376         does that now.
11377         (gtk_window_show):
11378         ensure that the widget is realized before calling 
11379         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11380         ensure that we got properly size requested and allocated before
11381         realization.
11382         (gtk_window_configure_event):
11383         ignore plain window moves, or reallocate the widget tree through the
11384         resize queue otherwise.
11385         (gtk_window_move_resize):
11386         mostly rewrote this function to figure window manager hints more
11387         reliably, coalesce window moves and resizes to reduce configure events
11388         and do actuall size allocations.
11389
11390 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11391
11392         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11393         that have a resize pending, because a redraw is already queued for them.
11394
11395         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11396         hack to clear resize_widgets.
11397
11398         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11399         for resize containers prior to size allocation. (this is also a bit
11400         ugly, but avoids side effects for stopped emissions and is thus more
11401         reliable).
11402         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11403
11404         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11405         function from gtk_tooltips_expose, as we connect to ::expose_event
11406         *and* ::draw now.
11407
11408 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11409
11410         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11411         checks.
11412         (gtk_target_list_unref): Likewise.
11413
11414         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11415
11416 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
11417
11418         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11419         guard against division by zero. (Fixes bug #1339)
11420
11421 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
11422
11423         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
11424         Prevent the trivial leak of information of allowing
11425         word motion when the entry is not visible.
11426
11427 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
11428
11429         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11430         modality to error dialog as well as confirmation dialogs.
11431         (Bug #1803, reported by Rosanna Wing Sze Yuen)
11432
11433 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11434
11435         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11436         tree->view_lines.
11437         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11438
11439         * gtk/Makefile.am (install-data-local): Solaris apparently
11440         has various troubles with ln -f; use rm first instead.
11441         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11442
11443 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
11444
11445         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11446         use `cp' followed by `rm' (the `rm' was already there).
11447
11448 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11449         
11450         * configure.in: Fix autoconf warnings about cross compilation by
11451         trying to provide sane defaults for AC_TRY_RUN.
11452         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11453         put them into $(srcdir) when generated. Also add a dependency of
11454         gtksignal.h on gtkmarshal.h for -j builds. 
11455         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11456
11457 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
11458
11459         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11460         GDK_THREADS_{LEAVE,ENTER} pair.
11461         (From Paul Fisher <pnfisher@redhat.com>)
11462
11463 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
11464
11465         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11466         width and height are always >0 (owen).
11467
11468 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
11469
11470         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11471         change that assured that a widget's allocated with and height are
11472         always >1, since this breaks *buggy* panel code. unfortunately this
11473         back-breaks the gimp's color selector.
11474
11475         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11476         allocation is always >0 in width and height, before sending the
11477         configure event; this is a *gross* hack to get the gimp back to work.
11478         
11479         * marked both cases with TODO-1.3
11480
11481 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
11482
11483         * gtk/gtktext.c: Don't display wrap indicators when
11484         text is not editable and word wrap is on.
11485
11486 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
11487
11488         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11489         option menus here as they are not derived from menu shell, assure that
11490         the option menu has a menu we can add items to.
11491
11492 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
11493
11494         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11495         width/height to (gint) before calculations and check against < 0 to
11496         avoid guint wraparounds.
11497
11498 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
11499
11500         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11501         width and height is never zero. sanity check both dimensions against
11502         32767 and issue a warning if the allocation is greater than that.
11503
11504 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
11505
11506         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11507         to g_main_pending() as well.
11508
11509 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
11510
11511         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11512         call to g_main_iteration() - since that will regrab
11513         GTK+ lock to process events.
11514
11515 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
11516
11517         * gtk/gtkwindow.c
11518         - Regularize with the rest of GTK+ by making widget->requisition
11519           not reflect the set_usize()
11520         - Always recompute geometry hints, then check if they
11521           changed before sending them to the X server. The
11522           previous checks for changes would fail in a number
11523           of circumstances. 
11524
11525 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
11526
11527         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11528
11529 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
11530
11531         * gtk/gtkdnd.c:
11532         - Code cleanups
11533         - Instantaneously update on modifier key presses
11534         - Allow cancellation of the drag with Escape.
11535
11536 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
11537
11538         * gtk/testgtk.c (create_handle_box): Set the policy
11539         to auto_shrink - otherwise the appearance is rather
11540         strange when flipping between horizontal and vertical.
11541
11542 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
11543
11544         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11545         (gtk_window_set_default_size): don't change a value if it's < 0.
11546         queue a resize.
11547
11548 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
11549
11550         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
11551
11552 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
11553
11554         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
11555         add an extra "/" when concating "/" + filename.
11556         (From Matt Grossman <mattg@oz.net>)
11557
11558 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
11559
11560         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
11561         for fg_gc if we set it for drawing pixmap.
11562
11563 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
11564
11565         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
11566         
11567         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
11568         already set, call old engine's destroy function and
11569         unref the old engine.
11570
11571 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
11572
11573         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
11574
11575 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
11576
11577         * gtk/gtkaccelgroup.h: mark certain functions as internal.
11578
11579 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
11580
11581         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
11582         expand behaviour changed.
11583
11584         * gtk/gtklabel.c (gtk_label_set_pattern):
11585         (gtk_label_set_justify):
11586         (gtk_label_set_line_wrap):
11587         don't bother invoking queue_clear, the reallocation does
11588         that for us, always free_words so the upcoming resize will
11589         relayout the label's contents.
11590
11591 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
11592
11593         * applied argument implementation patches from Elena Devdariani
11594         <elena@cogent.ca>.
11595
11596         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
11597         ::space_style, ::relief
11598         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
11599         * gtk/gtkpreview.c: ::expand
11600         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
11601         * gtk/gtknotebook.c: ::homogeneous
11602         * gtk/gtklabel.c: ::wrap
11603         * gtk/gtklist.c: ::selection_mode
11604         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
11605         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
11606         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
11607         * gtk/gtkclist.c: ::sort_type
11608         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
11609         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
11610
11611 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
11612
11613         * gtk/gtkstyle.c: Removed ill-thought-out part of last
11614         comment.
11615
11616 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
11617
11618         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
11619         counting right when we have to attach a new style
11620         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
11621
11622         * gtk/gtkstyle.c: Documented the refcounting
11623         peculularities of gtk_style_attach.
11624
11625 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11626
11627         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11628         window types.
11629
11630         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11631         of GTK_TOPLEVEL for creating the window.
11632
11633 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11634
11635         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11636         the last argument (reported by Per Winkvist).
11637         
11638 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
11639
11640         Fixes for invisible XOR lines (Frank Loemker
11641         <floemker@TechFak.Uni-Bielefeld.DE>)
11642         
11643         * gtk/gtkclist.c (gtk_clist_realize): Always use
11644         a non-zero pixel for GDK_XOR.
11645
11646         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
11647         Use GDK_INVERT instead of GDK_XOR.
11648
11649 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
11650
11651         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11652         signals if h/voffsets differ from adjustment values.
11653         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11654
11655 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
11656
11657         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11658         ::selection-done emissions up to the topmost menu shell.
11659
11660 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
11661
11662         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11663         the user data on the window before destroying it.
11664
11665         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11666         unrealize handler to take care of destroying 
11667         notebook->panel properly. 
11668         (Bug #1198 - Morten Welinder <terra@diku.dk>)
11669
11670         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11671         of g_new and g_realloc to stop memory leak. (Actually,
11672         we could just use g_realloc(), but I'm not 100% sure
11673         that is portable).
11674         (Bug #1196 - Morten Welinder <terra@diku.dk>)
11675
11676 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11677
11678         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11679
11680         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11681         for fontsets.
11682
11683         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11684         with bin/button confusion.
11685
11686 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
11687
11688         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11689         and show how preselection of radio items is done.
11690
11691 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
11692
11693         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
11694         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11695         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
11696         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11697         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
11698         * gtk/gtktable.c (gtk_table_attach): 
11699         * gtk/gtklist.c (gtk_list_insert_items): 
11700         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
11701         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
11702         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
11703         * gtk/gtkbin.c (gtk_bin_add): 
11704         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
11705         * gtk/gtkfixed.c (gtk_fixed_put): 
11706         * gtk/gtklayout.c (gtk_layout_put):
11707         general fixups to container_add logic. always realize child if
11708         child->parent is realized, only map the child and queue a resize
11709         if child and child->parent are both visible.
11710
11711 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
11712
11713         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11714         instead of gtk_container_foreach to walk and unrealize children, so
11715         composite children get also unrealized.
11716         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11717         (gtk_widget_map): assert that the widget is visible (basic constrain).
11718         (gtk_widget_real_map): assert that the widget is realized (basic
11719         constrain).
11720
11721 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
11722
11723         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11724
11725 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
11726
11727         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11728         file for iso-8859-2 locales.
11729
11730         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11731
11732 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
11733
11734         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11735          (Pointed out by andy@rz.uni-karlsruhe.de and others).
11736          Remove some suspicious and useless lines. 
11737
11738 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
11741         width,height = 0, 0 to mean - here to edge of window,
11742         instead of -1, -1, since the former is all we support.
11743
11744 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
11745
11746         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11747         when removing from quit_functions list.
11748
11749 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
11750
11751         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11752
11753 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
11754
11755         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
11756          When redrawing characters on non-visible entry, use appropriate
11757          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11758
11759 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
11760
11761         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11762         from drag coordinates.
11763         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11764         use drag_dest_cell.
11765
11766         * gtk/gtktree (drag_dest_cell)
11767         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11768         (Bug #1129)
11769
11770 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
11771
11772         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11773         translate_* fields.
11774         (gtk_item_factory_finalize): invoke translate_notify independant from
11775         translate_data.
11776         (gtk_item_factory_set_translate_func): likewise.
11777         (gtk_item_factory_destroy): only remove ifactory pointer from those
11778         widgets that belong to us (stupid me).
11779
11780 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
11781
11782         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11783         rc_style list when lookup succeeeds.
11784
11785 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
11786
11787         * gtk/gtkctree.c (resync_selection): 
11788         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11789         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11790         bug.
11791
11792 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
11793
11794         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11795         Add some missing GDK_THREADS_ENTER()/LEAVE around
11796         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11797
11798 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
11799
11800         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11801         rather than emit_by_name.
11802
11803         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11804         on the widget across multiple signal emissions.
11805         (gtk_editable_delete_text): same here.
11806         (gtk_editable_class_init): set widget_class->activate_signal after
11807         editable_signals[ACTIVATE] has been created.
11808
11809 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
11810
11811         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11812         position here prematurely -- we might not have the
11813         right ->min_position and ->max_position yet.
11814
11815 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11816
11817         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11818         Add error traps so if the other end of the connection
11819         dies, we survive.
11820
11821         * gtk/gtkselection.c (gtk_selection_notify): Clean
11822         up properly when selection property retrieval fails.
11823         
11824         * gtk/gtkselection.c (gtk_selection_request): Correctly
11825         reject SelectionRequest notifies where the handler
11826         returns no data.
11827
11828 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11829
11830         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11831         when we've previously highlighted.
11832
11833         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11834         emit two "drag_leave" signals for Motif drops.
11835
11836         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11837         back the correct status messages when dropping from
11838         Motif onto a proxy window that is rejecting the
11839         drop.
11840
11841 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
11842
11843         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11844         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11845         to compare two argument values. added gtk_arg_to_valueloc() to set a
11846         variable from an arg through its location (pointer).
11847
11848         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11849         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11850         as gfloat*, uchars are collected as guchar*, ints are collected as
11851         gint*, etc...
11852
11853 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
11854
11855         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11856         Include <string.h> instead of <strings.h>.
11857
11858         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11859         (actually, a lot more duplicate includes occur if
11860          you trace through the sequence of #include's)
11861         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11862         
11863 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11864
11865         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11866         gtk-a-higuti-990322-[0-3]
11867
11868         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11869         that was causing -DX_LOCALE not to work.
11870
11871         * gtk/gtkrc.c (gtk_rc_init):
11872         X_LOCALE will never have LC_MESSAGES defined
11873
11874 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
11875
11876         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11877         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11878
11879         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11880         left/right as well (gtk-michael-980726-0.patch.gz).
11881
11882         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11883         for pointer values, use gchar instead of char. fixed uline allocation
11884         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11885         chunks instead of G_ALLOC_ONLY.
11886         (gtk_label_size_request): always alter requisition as passed and leave
11887         widget->requisition alone.
11888         (gtk_label_set_text): allow NULL strings.
11889         (gtk_label_new): likewise.
11890
11891 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
11892
11893         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11894
11895 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
11896
11897         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11898         *and* mapped (i.e. drawable).
11899         (gtk_bin_expose): only send exposes to drawable children.
11900
11901         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11902         (gtk_box_expose): only send exposes to drawable children.
11903
11904         * gtk/gtkhscale.c (gtk_hscale_draw): 
11905         * gtk/gtkvscale.c (gtk_vscale_draw):
11906         hm, this is an ugly one. we first compute the size of our trough area
11907         here (window relative) and then check intersection with the draw_area
11908         which is parent relative because we're a NO_WINDOW widget, so we need
11909         to offset the trough area by allocation.x and allocation.y before the
11910         check. (this must not be done for the background area though, since
11911         that's already computed parent relative).
11912
11913 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
11914
11915         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11916         unrealize title buttons.
11917
11918 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
11919
11920         * gtk/gtkclist.c (gtk_clist_column_title_passive)
11921         (gtk_clist_column_title_active): 
11922         only connect/disconnect to GtkWidgetClass::event to block mouse events.
11923
11924         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
11925         zero initialize event, removed superfluous gdk_window_get_pointer call
11926
11927         * gtk/gtklist.c (gtk_list_vertical_timeout)
11928         (gtk_list_horizontal_timeout): removed superfluous
11929         gdk_window_get_pointer call
11930
11931 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11932
11933         * plugging problems reported by "Bruce Mitchener, Jr."
11934         <bruce@puremagic.com> due to a purify session.
11935
11936         * gtk/gtkstyle.c:
11937         (gtk_style_ref): 
11938         (gtk_style_unref): assert ref_count to be > 0.
11939
11940         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11941         the requisition.
11942         (gtk_clist_set_shift): likewise.
11943
11944         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11945         adjustments.
11946
11947         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11948         event before sending it and set send_event to TRUE (which needs to
11949         be done for *all* synthesized events).
11950         (gtk_list_vertical_timeout): likewise.
11951
11952         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11953         leaks.
11954
11955         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11956         to TRUE when synthesizing events.
11957
11958 [ *** end of merges from 1.2 *** ]      
11959         
11960 1999-11-21  Tor Lillqvist  <tml@iki.fi>
11961
11962         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11963         (or copied from gdkconfig.h.win32 on Win32, sigh).
11964
11965         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11966
11967         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11968
11969         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11970
11971         * gdk/gdkconfig.h.win32: New file.
11972
11973         * gdk/win32/makefile.cygwin: Build just a static archive here.
11974
11975         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11976         for the DLL from the static archive built above.
11977
11978         * gdk/gdk.def: Moved here from the win32 subdirectory.
11979
11980         * gdk/win32/*: Adapt for the changed private struct organisation.
11981
11982         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11983
11984 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
11985
11986         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
11987         for wheel mice (buttons 4 and 5).
11988
11989 1999-11-18  Tor Lillqvist  <tml@iki.fi>
11990
11991         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11992         drawables use just the pixel field in the foreground and
11993         background GdkColor of the GdkGC.
11994
11995         gdk_gc_set_{fore,back}ground() are called in the GIMP with
11996         GdkColors containing uninitialized (red,green,blue) fields, and
11997         just the pixel field filled in, and furthermore in the
11998         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11999         It thus turns out that we really don't need to have the full
12000         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
12001         it later to have just the pixel values.
12002
12003 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12004
12005         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
12006
12007 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
12008
12009         * docs/gtkfaq.sgml: threads example from Erik Mouw.
12010         New question on GtkLabel background colors.
12011
12012         * docs/gtk_tut.sgml:
12013           - Correct the example code callback
12014             function definitions.
12015           - Update the gtkdial example code, from Frans van Schaik.
12016           - Update setselection.c to current API.
12017
12018         * examples/Makefile examples/*/*.c: Update to code
12019         listed in tutorial.
12020
12021 1999-11-10  Tor Lillqvist  <tml@iki.fi>
12022
12023         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
12024         subrange table (from the "Developing International Software for
12025         WIndows 95 and Windows NT" book) was missing the Hangul syllable
12026         block... Get the loaded font's charset correctly.
12027
12028         (Note that this, and the other *-win32.c files, still really are
12029         the old ones, the win32 subdirectory is not ready for compilation
12030         yet after the reorg.)
12031
12032 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
12033
12034         * gtk/gtkclist.c: Fix off-by-one bug in parameter
12035         check.
12036
12037 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
12038
12039         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
12040         on results of XQueryDeviceState().
12041
12042 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
12043
12044         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
12045         we need to accesss only ->children. We need an accessor
12046         for the children.
12047
12048         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
12049         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
12050         to get rid of gdkx.h include.
12051         
12052         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
12053         and random references to 'None'.
12054
12055         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
12056         Get rid of unused #include <gdk/gdkx.h>
12057
12058         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
12059         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
12060         gdkconfig.h.
12061
12062 1999-11-08  Tor Lillqvist  <tml@iki.fi>
12063
12064         * gdk/win32/gdkdraw.c
12065         * gdk/win32/gdkfont.c
12066         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
12067         following yesterday's changes. (Unrelated to Owen's reorg.)
12068
12069 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
12070
12071         * gdk/x11/gdkinput-gxi.c: Add missing include,
12072           fix GdkWindowPrivate => GdkDrawablePrivate.
12073
12074         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
12075
12076         * gdk/x11/Makefile.am (xinput_sources): Add missing
12077         backslash to fix building with --with-xinput=none
12078
12079 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
12080
12081         Move all X specific code into the x11/ directory.
12082         Aside from shuffling things around, did the following:
12083
12084        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
12085          gdk_arg_context_* - a simple argument parsing system
12086          in the style of popt.
12087
12088        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
12089          gdk/x11/gdkprivate-x11.h:
12090          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
12091          add ->klass and ->klass_data fields. The klass_data
12092          field points to an auxilliary structure that is
12093          windowing system dependent.
12094
12095        * gdk/gdkfont.c: Make most of the measurement functions
12096          simply wrappers around gdk_text_extents().
12097
12098        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
12099          _gdk_font_strlen() function that hides the weird
12100          behavior in gtk+-1.[02] where a string is interpreted
12101          differently for 8-bit and 16-bit fonts.
12102
12103        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
12104          to store common code for synthesizing double/triple
12105          press events.
12106         
12107        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
12108          Make all the function that modify an existing GC
12109          simply wrappers around gdk_gc_set_values().
12110          
12111        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
12112          for throwing out later.
12113
12114        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
12115          GdkImagePrivate and GdkColormapPrivate to have a
12116          windowing system dependent part (GdkFontPrivateX etc.)
12117          that "derives" from the system-independent part.
12118
12119        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
12120          Got rid of the included-source-files for XInput in
12121          favor of automake conditionals. (Which didn't exist
12122          when XInput support was originally added.)
12123
12124        * gdk/gdkrgb.c: Remove the visual id from the debugging
12125          statements since that is X11 specific; print out
12126          type/depth info instead.
12127          
12128
12129 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
12130
12131         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
12132         loading duplicates of hashed fonts.
12133
12134         * gdk/gdk.c (gdk_keysym_convert_case): rename
12135         gdk_XConvertCase to gdk_keysym_convert_case, allow
12136         results to be NULL in the GTK+ style.
12137
12138         * gdk/gdkcompat.h: Started compatibility header
12139         for renames.
12140
12141 1999-11-07  Tor Lillqvist  <tml@iki.fi>
12142
12143         * gdk/win32/gdkprivate.h: New font private structures, related to
12144         fontsets.
12145
12146         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
12147         gdk_font_list_free(). On X11, will just be wrappers to
12148         XListFonts() and XFreeFontNames(). On Win32, the code previously
12149         in gtkfontsel.c is now here.
12150
12151         New function gdk_font_xlfd_create(). On X11 will get the FONT
12152         property of the font (for GDK_FONT_FONTs), or call
12153         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
12154         builds a XLFD style name from the font information in the LOGFONT
12155         struct(s).
12156
12157         New function gdk_font_xlfd_free(), which correspondingly frees the
12158         string returned by gdk_font_xlfd_create().
12159
12160         Implement fontsets on Win32. Add a function that iterates over a
12161         wide char string and calls a callback function for each substring
12162         of wide chars from the same Unicode subrange (and thus probably
12163         available in the same real font).
12164
12165         Improve the XLFD emulation a bit.
12166
12167         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12168
12169         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12170         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12171         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12172         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12173         ImmGetCompositionStringW() to get the composed Unicode chars.
12174
12175         * gdk/win32/gdkgc.c
12176         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12177         struct changes.
12178
12179         * gdk/win32/gdk.def: Add the new functions.
12180
12181 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12182
12183         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12184         get the Platform SDK to get <dimm.h>.
12185
12186         * gdk/win32/gdkevents.c: More event handling fixes and
12187         simplification. Never generate motion events with is_hint true. We
12188         used to do that on bogus grounds earlier. Windows sends
12189         WM_MOUSEMOVE messages on button events even if the mouse hasn't
12190         moved, ignore these.
12191
12192         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12193
12194         * gdk/win32/gdkglobals.c
12195         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12196         the TrackMouseEvent function, and use it.
12197
12198         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12199         char before calling WideCharToMultiByte in order to get a string
12200         for the window title.
12201
12202         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12203
12204         * gdk/win32/gdk.def: Remove obsolete functions.
12205
12206         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12207         /nodefaultlib and /defaultlib switches.
12208
12209         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12210
12211 1999-10-31  Tor Lillqvist  <tml@iki.fi>
12212
12213         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12214         EuroSign).
12215
12216         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12217         same type as GdkWChar, especially on Win32.
12218
12219         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
12220
12221         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
12222         before passing to Windows GDI for drawing etc. Convert to the
12223         system default codepage before passing to Windows as window
12224         titles.
12225
12226         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
12227         support changing input locale on the fly.
12228
12229         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
12230         on-the-fly changes. Convert incoming characters from the current
12231         codepage to Unicode (and then to a UTF-8 multi-byte string) based
12232         on the current input language. Use keysym<->Unicode mapping tables
12233         and functions borrowed from xterm sources.
12234
12235         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
12236         editions of Win9x, use the ActiveX-based Active IMM (Input Method
12237         Manager) if available. IMEs and the Active IMM are available under
12238         the disguise of Chinese, Korean and Japanese support for IE and
12239         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
12240         support is present in all editions (as long as you install it).
12241
12242         Call DispatchMessage from gdk_events_queue() (and thus
12243         gdk_WindowProc()), instead of duplicating the code in
12244         gdk_WindowProc().
12245
12246         Reworked the grab handling and propagation code, factored out
12247         duplicated code snippets into separate functions. Other cleanups,
12248         too.
12249
12250         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
12251         the <dimm.h> header describing the Active IMM.
12252
12253         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
12254         just do the same as for "single" fonts.
12255
12256         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
12257         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
12258         the new keysyms from gdkkeysyms.h.
12259
12260         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
12261         fontset, so that gtkentry uses wide characters.
12262
12263         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
12264         GTk+'s system directory "gtk+", not "gtk".
12265
12266 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
12267
12268         * docs/gtkfaq.sgml: FAQ update
12269
12270 1999-10-21  Tor Lillqvist  <tml@iki.fi>
12271
12272         * gdk/win32/gdkprivate.h: Add more font private data.
12273
12274         * gdk/win32/gdkfont.c
12275         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
12276         fonts and strings. Now works much better. You still have to
12277         have a correct font selected, though. No fontset emulation yet.
12278
12279 1999-10-19  Tor Lillqvist  <tml@iki.fi>
12280
12281         * gtk/maketypes.awk: Use G_OS_WIN32.
12282
12283         * gtk/gtk.def: Add some missing entry points. Also some non-public
12284         ones, but PyGTK porter claims to need them.
12285
12286         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
12287         built-in type generation.
12288
12289 1999-10-14  Tor Lillqvist  <tml@iki.fi>
12290
12291         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
12292         GDK_FONT_FONT fonts (which is all we have for now, we don't
12293         emulate fontsets). The X11 version uses plain XDrawString in that
12294         case, too. The string passed to gdk_draw_text_wc seems to be in
12295         fact (at least, when used by gtkentry and gtktext) either in a
12296         single-byte charset, or a DBCS. Not Unicode.
12297
12298         This fixes the problem in gtkfontsel, where even if you had
12299         selected a font with a non-Latin1 charset (windows-greek, for
12300         instance), the preview still used Latin-1 glyphs.
12301
12302         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12303         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12304         (gdk_font_load): Recognize the demibold etc weights, even if we
12305         don't have the corresponding constants in the headers.
12306         (gdk_font_hash_insert): Use same hash mechanism as in the X11
12307         version. Should save font resources a bit, when we don't have
12308         multiple HFONTs for the same font.
12309
12310         * gdk/win32/gdkprivate.h: Add the names field as in the X11
12311         version.
12312
12313 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
12314
12315         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12316         X values
12317
12318 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
12319
12320         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12321         layout support (as mentioned on
12322         http://www.jcinteractive.com/gnome-ui/software/widgets/)
12323
12324 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12325
12326         * gtk/fnmatch.c
12327         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12328
12329 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
12330
12331         * configure.in (ALL_LINGUAS): Added Galician (gl)
12332
12333 1999-10-05  Tor Lillqvist  <tml@iki.fi>
12334
12335         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12336
12337         * gdk/win32/gdkcompat.c: New file, actually provide an
12338         implementation for the deprecated functions. (Just temporarily.)
12339
12340         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12341
12342         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12343
12344         * gdk/win32/gdk.def gtk/gtk.def: Updates.
12345
12346 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
12347
12348         * configure.in: Added "uk" to ALL_LINGUAS.
12349         
12350 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12351
12352         * configure.in: correct checking for BeOS check
12353
12354         * gdk/gdktypes.h
12355         * gtk/fnmatch.c
12356         * gtk/gtkfilesel.c
12357         * gtk/gtkitemfactory.c
12358         * gtk/gtkmain.[ch]
12359         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12360
12361 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12362
12363         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12364         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12365         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12366         by Bulgarian). 
12367
12368 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
12369
12370         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
12371         Fix a reference to window_private->destroyed.   
12372
12373         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12374         (ugly) setting of an internal GdkWindow member to use
12375         a _slightly_ cleaner macro.
12376
12377         * gdk/gdkprivate.h: Split GdkWindowPrivate into
12378         GdkDrawablePrivate and GdkWindowPrivate.
12379         Add extra macros for accessing GDK_DRAWABLE_ components.
12380
12381         * *.[ch]: Massive adjustments for the above, use the
12382         new macros in a lot of places.
12383
12384 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
12385
12386         * gdk/gdktypes.h: Make GdkDrawable the base type,
12387         not GdkWindow.
12388
12389 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
12390
12391         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12392
12393 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
12394
12395         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12396
12397 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
12398
12399         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12400         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12401
12402         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12403
12404         * docs/gtk-config.1: Now autogenerated.
12405         * docs/Changes-1.4.txt: started
12406         
12407 1999-10-03  Tor Lillqvist  <tml@iki.fi>
12408
12409         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12410         to #ifdef also here.
12411
12412         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12413         Owen did to the X11 backend.
12414
12415         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12416         ScrollWindowEx when blitting inside a window, it can't be correct
12417         in the general case.
12418
12419         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12420         WM_GETMINMAXINFO is easier.
12421
12422         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12423         depth equal to the bitspixel value, not the visual's depth.
12424
12425         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12426         to 24 even if the bitspixel value is 32.
12427
12428         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12429         need to check for depth==32 when bpp==32, depth will always be 24.
12430
12431 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
12432
12433         * docs/Changes-1.4.txt: Started
12434         
12435         * gtk/Makefile.am (gdk_headers): Include all the new headers.
12436
12437         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12438         
12439         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12440         into C file.
12441         
12442         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12443         header to gdkinputprivate.h.
12444
12445         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12446         unused since before 1.2.
12447
12448 1999-09-30  Tor Lillqvist  <tml@iki.fi>
12449
12450         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12451         expand possible hex escapes in the font family (put there by
12452         logfont_to_xlfd if the font name isn't a legal XLFD font family,
12453         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12454         On Win32, add hex escapes here, too.
12455
12456 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
12457
12458         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12459         to #ifdef GDK_WINDOWING_X11.
12460
12461 [ Merges from gtk-1-2 ]
12462
12463 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
12464
12465         * configure.in: fixed "GNU Make" check to pass with new make version
12466         3.77.95.
12467
12468 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
12469
12470         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12471         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12472         AM_PATH_GTK() macros don't get confused by the -pre1.
12473
12474 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12475
12476         * configure.in (REBUILD): Change check for perl5
12477           to check explicitely for v >= 5.002. (5.001
12478           does not work with our scripts.)
12479
12480 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
12481
12482         * configure.in: evaluate $PERL for the perl version check. added
12483         --disable-rebuilds to give the user an option to completely disable
12484         any source autogeneration rules.
12485
12486 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
12487
12488         * configure.in: evaluate $ac_make when checking for GNU Make.
12489
12490 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12491
12492         * docs/Makefile.am: added generation.txt.
12493
12494         * Makefile.am: require automake 1.4, build README from README.in and
12495         INSTALL from INSTALL.in in dist-hook.
12496         
12497         * README.in:
12498         * INSTALL.in: new files to autogenerate README and INSTALL from.
12499
12500         * configure.in: figure whether we have GNU Make
12501
12502         * docs/generation.txt: minor additions/corrections.
12503
12504 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12505
12506         * docs/gtkfaq.sgml: FAQ Update
12507
12508 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12509         
12510         * configure.in: Fix autoconf warnings about cross compilation by
12511         trying to provide sane defaults for AC_TRY_RUN.
12512
12513 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12514
12515         * ltconfig
12516         * ltmain.sh: upgrade to libtool 1.3.3
12517
12518 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
12519
12520         * INSTALL: Indicate that the --with-glib= configure
12521         time flag is unsupported.
12522
12523 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
12524
12525         * docs/generation.txt: Added a file that gives
12526         documenation about the autogeneration process for
12527         various autogenerated files.
12528         
12529 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12530
12531         * configure.in (LIBS): Look for libgmodule in the
12532         right location.
12533
12534 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
12535
12536         * docs/gtk_tut.sgml: Removed references to
12537         code examples in my directory on gtk.org as
12538         they should all be in the tutorial now.
12539
12540         * docs/gtk_tut.sgml: Added sources for dial-test
12541         and scribble-xinput programs that were previously
12542         missing.
12543
12544 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
12545
12546         * TODO: Added entry about menu keyboard navigation, removed
12547         some finished items.
12548
12549 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
12550
12551         * acinclude.m4: Standardize on func_dgettext
12552         not func_gettext, so that the checks for dgettext
12553         actually are paid attention to.
12554
12555 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
12556
12557         * configure.in (LIBS): Add $INTLLIBS into $LIBS
12558         directly, rather than repeating the checks for
12559         gettext.
12560
12561         * INSTALL: Added information about gettext and
12562         NLS support.
12563
12564         * acinclude.m4 (LIBM): Check for dgettext, not
12565         just gettext. This should hopefully fix things wrt
12566         systems with old versions of GNU gettext installed.
12567
12568 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12569
12570         * configure.in (LIBS): Look for libgmodule in the
12571         right location.
12572
12573 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12574
12575         * autogen.sh: add --enable-maintainer-mode
12576
12577         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
12578
12579 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
12580
12581         * docs/gtk-config.1.in:
12582           docs/Makefile.am:
12583           configure.in: gtk-config is now generated.
12584
12585         * docs/gtk-config.1: Removed, now generated.
12586
12587 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
12588
12589         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
12590         handle CreateNotify itself, still put out a debuging message for
12591         --gdk-debug=events. made the ReparentNotify debugging message more
12592         verbose.
12593         wrap xcoords translation for ConfigureEvents into an error trap,
12594         a destroy event may already be pending, and in that case, the
12595         actuall coordinate values are not at all critical.
12596
12597 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
12598
12599         * gdk/gdkcc.c: Stop leaking the color_hash all over
12600         the place. Simplify and improve the logic.
12601
12602 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12603
12604         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
12605         for prototypes and function implementations consistent (reported
12606         by Tomas Ogren).
12607
12608 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12609
12610         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
12611         send_event set in debugging output.
12612         (gdk_compress_exposures): default initialize the event so we don't
12613         operate on bogus values (namely send_event).
12614
12615 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12616
12617         * gdk/gdkwindow.c: When we receive an unexpected
12618         destroy notify on one of our windows, don't just
12619         warn about it, also mark our windows as destroyed.
12620
12621 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
12622
12623         * gdk/gdkfont.c (gdk_font_hash_insert): Add
12624           name => font and name => fontset hashes. The 
12625           name => fontset hash is a _big_ win since we
12626           weren't previously caching fontsets at all and loading
12627           fontsets is expensive. The name => font hash
12628           is less of a win, but it does save us from doing
12629           repeated XQueryFont calls on the same font.
12630
12631         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12632           list so we can remove font/fontset from hash.
12633
12634 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12637           and slightly confusing test. [ XInternAtom (,,TRUE)
12638           will never return None ].
12639
12640 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
12641
12642         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12643           gdk/gdkwindow.c (gdk_window_set_hints):
12644
12645         Don't omit setting the properties if flags == 0 -
12646         there may be an existing set of properties there
12647         already. (Very old bug. Would it be better to
12648         delete the property instead?)
12649
12650         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
12651           spelling error in comment.
12652
12653 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12656           to avoid stomping over gdk_error_warnings.
12657
12658         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12659           as (bits_per_pixel + 7) / 8. This gives the same
12660           result as before for multiples of 8, but actually
12661           a "reasonable" value for 1bit or 4bit displays.
12662
12663 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12664
12665         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12666         GNU Make.
12667
12668 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12669
12670         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12671         discarding configure events.
12672
12673 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12674
12675         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12676         refcount is greater than zero.
12677
12678         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12679
12680         * gdk/gdkfont.c (gdk_font_unref): Likewise.
12681
12682         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12683
12684         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12685
12686 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12687
12688         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12689         that format 32 => sizeof(item) == 4. It really is
12690         sizeof(long).
12691
12692 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
12693
12694         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12695         core dump at all on X IO errors, only core dump
12696         if --enable-debug for X errors.
12697
12698 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
12699
12700         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12701         unknown window:" message. disabled ConfigureNotify discarding code,
12702         because it led to events being processed out of order.
12703
12704 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
12705
12706         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12707
12708         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12709         we export this function, supress error warnings and don't reset the
12710         error code in the first half of this function.
12711
12712         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12713         code (instead of just -1) so gdk_error_trap_pop() reveals something
12714         actually informative about the error that happened.
12715
12716         * gdk/*.c:
12717         don't rely on gdk_error_code being -1 if an error occoured, but just
12718         gdk_error_code != 0.
12719
12720 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
12721
12722         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12723         pointer *before* invoking the filter function, so we at least don't
12724         crash if a filter is removed that is currently executed. window filters
12725         *really* need to be made truely reentrant at some point.
12726
12727 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
12728
12729         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12730         PropertyNotify debug messages.
12731
12732 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
12733         
12734         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12735         
12736         * gdk/gdkim.c: Fix cut-and-paste errors for 
12737         x/y and PreeditAttributes/StatusAttributes.
12738
12739 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12740
12741         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12742         G_MAXINT to 2^16 to alleviate overflow problems in
12743         various window managers.
12744
12745 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12746
12747         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12748         for fontsets.
12749
12750 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
12751
12752         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12753         Initialize size_hints.x and size_hints.y because kwm
12754         brokenly pays attention to them.
12755         (Bug #1181 -  Lars Heete <hel@admin.de>)
12756
12757 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
12758
12759         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
12760         return value of gdk_list_visuals(). 
12761         (Bug #1193 - Morten Welinder <terra@diku.dk>)
12762
12763 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12764
12765         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12766         XSetIMValues to (void *) when comparing to NULL, to workaround
12767         the problem of some compilers barfing since older X headers don't
12768         have the prototype for it.
12769
12770 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
12771
12772         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12773         for pseudocolor where colormap->colors was double
12774         allocated.
12775
12776         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12777         color value in the hash table with the pixel filled
12778         in so when we do later hash table lookups, the color
12779         value is correct.
12780         
12781 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12782
12783         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12784         making the call
12785
12786 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
12787
12788         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12789         pointed out by Morten Welinder <terra@diku.dk>.
12790
12791 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12792
12793         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12794           default filter from the list
12795
12796 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12797
12798         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12799           default filter from the list
12800
12801 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12802
12803         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12804
12805         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12806         g_strdup_printf instead of calcing the length separately
12807
12808 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
12809
12810         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12811         that we don't do in many other places. (Fixing duplicate 
12812         #include of config.h)
12813
12814         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12815         Otherwise, #ifndef XINPUT_NONE check in the latter
12816         doesn't work. (Bug #546)
12817
12818 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
12819
12820         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12821         "None" case insensitive.
12822
12823 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12824
12825         * gdk/gdkselection.c: 
12826         Add error traps so if the other end of the connection
12827         dies, we survive.
12828
12829 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12830
12831         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12832         dest_xid field into two fields - one for the window
12833         to send in messages, one to indicate the last looked
12834         up window for caching purposes. This is needed, so
12835         that Leave messages get the correct window.
12836
12837 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
12838
12839         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12840         Fix warning created by people mucking around
12841         with the gsource API.
12842
12843         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12844         Change mapping between GIOCondition and GdkInputCondition
12845         to match the way the Linux kernel does it. This should
12846         fix problems where closed pipes were no longer signalling
12847         GDK_INPUT_READ on systems with a native poll().
12848
12849 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
12850
12851         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
12852         explicitly for the string "None" - it is in the XPM
12853         spec and some servers treat unknown colors in odd ways
12854         (like asking the user!)
12855
12856 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12857
12858         * gdk/gdkevents.c: made "->" into a "." of previous change so
12859         it compiles
12860
12861 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
12862
12863         * gdk/gdkevents.c (gdk_compress_exposures): Set the
12864         window field of the event structure before calling
12865         user filters.
12866
12867 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12868
12869         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12870         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
12871
12872 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
12873
12874         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12875         intermediate text property - prevents major memory
12876         leak when gdk_use_mb.
12877         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12878
12879 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12880
12881         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12882         gtk-a-higuti-990322-[0-3]
12883
12884         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
12885         sizeof(wchar_t) != sizeof (GdkWChar)
12886
12887         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12888         that was causing -DX_LOCALE not to work.
12889
12890         * gtk/gtkrc.c (gtk_rc_init):
12891         X_LOCALE will never have LC_MESSAGES defined
12892
12893         * gdk/gdk.c (gdk_init_check):
12894         Remove --xim-preedit and --xim-status from argv properly.
12895
12896         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12897         that the client window is present on the X server
12898         before we pass it to the input method.
12899
12900 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12901
12902         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12903         if --display is specified on the command line, than
12904         the drag window will not be created on that display.
12905         
12906 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
12907
12908         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12909         lookups with only_if_exists == TRUE were inserting
12910         bogus values into the atom cache.
12911
12912 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12913
12914         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12915         then reset it to NULL.
12916
12917         * gdk/gdkcolor.c:
12918         (gdk_colors_free): 
12919         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12920         key for g_hash_table_remove() in both functions, this prevents us
12921         from accessing possibly uninitialized portions of a GdkColor structure
12922         where we are only interested in its pixel value.
12923
12924 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12925
12926         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12927         font hash table, if we have a GdkFontPrivate entry for this font
12928         already, simply increment its reference count, provided by Olaf Dietsche
12929         <olaf.dietsche+list.gtk@netcologne.de>.
12930
12931 1999-09-21  Tor Lillqvist  <tml@iki.fi>
12932
12933         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12934         just to be sure.
12935
12936         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12937         unused variables, leftovers from the X11 version.
12938
12939         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12940
12941         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12942         downcase fields on X11.
12943
12944 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12945         
12946         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12947         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12948
12949 1999-09-17  Tor Lillqvist  <tml@iki.fi>
12950
12951         * gdk/win32/gdk.def: Add gdk_threads_mutex.
12952
12953         * gtk/makefile.msc: Correct path to libintl.
12954
12955         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12956         use of gint vs. int, and gint vs. gboolean in headers and
12957         definitions. Use GtkType for the *_get_type functions. Note that
12958         these changes preserve binary compatibility.
12959
12960         * gdk/gdk.c
12961         * gdk/win32/gdk.c
12962         * gdk/gdk.h: Fix inconsistencies: gint vs int.
12963
12964         * gtk/gtkmain.c
12965         * gtk/gtkclist.c
12966         * gtk/gtkmenufactory.c
12967         * gtk/gtknotebook.c
12968         * gtk/gtkwidget.c: Fix inconsistencies, also gint
12969         vs. gboolean.
12970
12971         * gtk/gtkcolorsel.[ch]
12972         * gtk/gtkcombo.[ch]
12973         * gtk/gtkdrawingarea.[ch]
12974         * gtk/gtkgamma.[ch]
12975         * gtk/gtkhandlebox.[ch]
12976         * gtk/gtkhpaned.[ch]
12977         * gtk/gtkhruler.[ch]
12978         * gtk/gtkplug.[ch]
12979         * gtk/gtkpreview.[ch]
12980         * gtk/gtkruler.[ch]
12981         * gtk/gtksocket.[ch]
12982         * gtk/gtkstatusbar.[ch]
12983         * gtk/gtktoolbar.[ch]
12984         * gtk/gtkvbbox.[ch]
12985         * gtk/gtkvpaned.[ch]
12986         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12987         functions.
12988
12989         * gtk/gtkgamma.h: Fix bug, missing () in call of
12990         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
12991
12992 1999-09-14  Tor Lillqvist  <tml@iki.fi>
12993
12994         * gdk/gdkcolor.c (gdk_colormap_new)
12995         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12996         colormap->colors was allocated twice.
12997
12998         * gdk/win32/gdk.c: Remove some unused stuff.
12999
13000         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
13001         colormap.
13002
13003         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
13004         * gtk/gtklabel.h (gtk_label_get_type)
13005         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
13006         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
13007         in a couple of places, not guint.
13008
13009 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13010
13011         * configure.in,po/et.po: added Estonian language file
13012
13013 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13014
13015         * configure.in,po/da.po: added Danish file
13016
13017 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
13018
13019         * docs/gtkfaq.sgml: Minor FAQ Update
13020
13021 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
13022
13023         * docs/gtkfaq.sgml: FAQ update
13024
13025 1999-08-27  Tor Lillqvist  <tml@iki.fi>
13026
13027         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
13028         way to get window contents continually refreshed while resizing. I
13029         didn't like the effects myself, so it's not on by default.
13030
13031         * gdk/win32/gdkprivate.h: New flag variable
13032         gdk_event_func_from_window_proc, FALSE by default.
13033
13034         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
13035         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
13036         are passed --gdk-event-func-from-window-proc.
13037
13038         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
13039         and we have am event_func, call it instead of enqueing the event.
13040
13041 1999-08-23  Tor Lillqvist  <tml@iki.fi>
13042
13043         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
13044         Kelley: Set expose_count in GdkEventExposes correctly.
13045
13046         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
13047         MULTIPLE_WINDOW_CLASSES).
13048
13049         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
13050         for bug in NT, apparently NT *does* draw the end pixel, too, in
13051         LineTo with a one-pixel pen, so we don't have to do it ourselves.
13052
13053 1999-08-21  Tor Lillqvist  <tml@iki.fi>
13054
13055         Improvements by Hans Breuer: 
13056
13057         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
13058
13059         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
13060         CS_?REDRAW flags as they cause lots of (late) redraws when "show
13061         window contents while dragging" is turned on. Allocate at least
13062         one unique class for every GdkWindowType. If support for single
13063         window-specific icons is ever needed (eg. Dialog specific), every
13064         such window should get its own class.
13065
13066 1999-08-19  Tor Lillqvist  <tml@iki.fi>
13067
13068         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
13069         error that caused crashes.
13070
13071 1999-08-17  Tor Lillqvist  <tml@iki.fi>
13072
13073         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
13074         window, use ScrollWindowEx, and call UpdateWindow. This prevents
13075         bugs when for instance part of the window was outside the
13076         display. Thanks to Philippe Colantoni for finding and fixing this.
13077
13078 1999-08-16  Tor Lillqvist  <tml@iki.fi>
13079
13080         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
13081         endpoint calculations which were totally wrong. (A little RTFMing
13082         helps a lot ;-)
13083
13084         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
13085         from a separate directory, not from gettext, because of licensing
13086         issues (we want to use the LGPL version).
13087
13088         * README.win32: Mention the intl from glibc vs from gettext issue.
13089
13090 1999-08-13  Tor Lillqvist  <tml@iki.fi>
13091
13092         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
13093         in the key event handling: Now AltGr chars work again. Also,
13094         now Alt-digits are passed up as well as Control-digits.
13095         Pass keypad plus and minus as normal plus and minus.
13096
13097 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13098
13099         * docs/gtkfaq.sgml: FAQ Update
13100
13101 1999-07-25  Tor Lillqvist  <tml@iki.fi>
13102
13103         * README.win32
13104         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
13105         the Wintab SDK.
13106
13107         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
13108         OK, but getting closer. Guard against bogus tilt data from Wacom
13109         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
13110         enable easier building without Wintab.
13111
13112         * gdk/win32/gdkinput.h
13113         * gdk/win32/gdkevents.c 
13114         * gdk/win32/gdkwindow.c: Minor changes related related to above.
13115         
13116         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
13117         code. As we have just one visual on Win32, no sense to have it in a
13118         table, and no need for the hash table.
13119
13120         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
13121         better on white background.
13122
13123 1999-07-21  Tor Lillqvist  <tml@iki.fi>
13124
13125         * README.win32: Update gcc build instructions. Mention gettext is
13126         GPL.
13127
13128         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
13129         supported cursor size with GetSystemMetrics.
13130
13131         * gdk/win32/gdkfont.c
13132         * gtk/gtkfontsel.c: Guard against some font weight and charset
13133         symbols being undefined (in mingw32 headers).
13134
13135         * gdk/win32/makefile.cygwin
13136         * gtk/makefile.cygwin
13137         * gtk/gtkthemes.c: No longer need to have differently named
13138         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
13139
13140 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
13141
13142         * docs/gtkfaq.sgml: Long awaited FAQ update.
13143
13144 1999-07-15  Tor Lillqvist  <tml@iki.fi>
13145
13146         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
13147         it. Obscure bit manipulation needed.
13148
13149         * gdk/win32/gdkevents.c: Logging.
13150         
13151         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
13152         style (file name include compiler name) for theme engines.
13153
13154 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13155
13156         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13157
13158         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13159         events. The key.string wasn't zero-terminated, still we strdup'ed
13160         it in gdk_event_copy(). Synthesize crossing events for button
13161         events before possible propagation.
13162
13163         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13164
13165         * gdk/win32/makefile.cygwin
13166         * gtk/makefile.cygwin: Use new DLL naming style for the
13167         GCC-compiled ones.
13168
13169         * gdk/win32/makefile.msc
13170         * gtk/makefile.msc: Cosmetics mostly.
13171
13172         * gtk/gtk.def: Add missing entry points.
13173
13174         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13175
13176 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13177
13178         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13179         or height is zero. Don't print a warning if Pie or Arc fails, they
13180         always fail (?) for very narrow ellipses.
13181
13182         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13183         the part or the destination window corresponding to source area
13184         outside of the source drawable's boundary.
13185
13186         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13187         anything if less than two points.
13188
13189         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13190         return NULL. Gtk cut-and-paste inside a single program works
13191         better this way. (It always gets the clipboard contents from
13192         Windows, not from its own copy, which is cleared anyway. I can't
13193         say I fully understand what happens... Emulating the X selection
13194         and property stuff is a bit of a mess.)
13195
13196         * gdk/win32/gdkevents.c
13197         * gdk/win32/gdkproperty.c: A bit more verbose logging.
13198
13199         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13200         that never got deleted). Revamp gdk_region_shrink.
13201
13202         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13203         after use.
13204
13205         * gtk/gtk.def: Add some missing entry points.
13206
13207         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13208         component.
13209
13210 1999-07-04  Tor Lillqvist  <tml@iki.fi>
13211
13212         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13213         Control-digits specially.
13214
13215 1999-07-03  Tor Lillqvist  <tml@iki.fi>
13216
13217         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13218
13219 1999-06-28  Tor Lillqvist  <tml@iki.fi>
13220
13221         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
13222         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
13223         finding this.)
13224
13225 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
13226
13227         * gtk+.spec.in: Corrected some typos in files section.
13228         
13229 1999-06-15  Tor Lillqvist  <tml@iki.fi>
13230
13231         * README.win32: Mention using GNU gettext.
13232         * config.h.win32: Enable NLS stuff.
13233         * gtk/makefile.msc: Use GNU gettext.
13234         * gdk/win32/gdkdnd.c: Minor header reorg.
13235         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
13236         cosmetics.
13237         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
13238         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
13239
13240 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
13241
13242         * acinclude.m4
13243         * config.guess
13244         * config.status
13245         * ltconfig
13246         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
13247
13248 1999-05-30  Tor Lillqvist  <tml@iki.fi>
13249
13250         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
13251         SafeAdjustWindowRectEx. Don't override all calls to
13252         AdjustWindowRectEx by it, but use it only in two places: When
13253         creating a new top-level window and when moving a top-level
13254         window.
13255
13256         Use screen coordinate rectangle, not client rectangle, in
13257         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
13258         when we try to place a window so that the decoration (mainly,
13259         title bar) isn't visible.
13260
13261         These changes fix the bug that showed up for instance as the
13262         GIMP's saved top-level windows moving right and down (by an amount
13263         equal to the window decoration) for each session. This bug showed
13264         up also in testgtk's "Saved Position".
13265
13266         gdk_window_resize also redone a bit.
13267
13268 1999-05-25  Tor Lillqvist  <tml@iki.fi>
13269
13270         * gtk/testgtkrc: Add (commented out) Windows-style theme
13271         include line.
13272
13273         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
13274
13275 1999-05-18  Tor Lillqvist  <tml@iki.fi>
13276
13277         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
13278         gdkx.h to a gdk subdirectory, so that applications can include
13279         these with <gdk/*.h> without trouble.
13280
13281         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
13282         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
13283         have their bitmap destroyed.
13284
13285         * gdk/win32/gdk.def: Add gdk_root_parent.
13286
13287 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
13288
13289         * configure.in
13290           gtk-config.in
13291           ltconfig
13292           ltmain.sh     
13293           gtk/Makefile.am: changes to compile nicely (with xlib) 
13294           on BeOS
13295
13296 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13297
13298         * acinclude.m4
13299         * config.guess
13300         * config.sub
13301         * ltconfig
13302         * ltmain.sh: upgrade to libtool 1.3
13303
13304 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
13305
13306         * gtk/gtkclist.c:
13307         * gtk/gtkctree.c: merges from gtk-1-2
13308
13309 1999-04-25  Tor Lillqvist  <tml@iki.fi>
13310
13311         Support added for building using a GNU toolchain on Win32,
13312         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13313
13314         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13315         * config.h.win32: Changes for gcc.
13316         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13317         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13318         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13319         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13320         Protect shl stuff unavaiilable with mingw32 headers.
13321         * gdk/win32/gdkevents.c: Fix typo.
13322         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13323         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13324         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13325         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13326         the mingw32 headers.
13327         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13328         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13329         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13330         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13331         Test for NATIVE_WIN32, not _MSC_VER.
13332         * gtk/gtkmain.c: No use warning about developer version on Win32,
13333         there aren't any non-developer versions anyhow.
13334         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13335         * gtk/makefile.msc: Use pthread from another directory. Minor other
13336         changes. 
13337
13338 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13339
13340         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13341           default filter from the list
13342
13343 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
13344
13345         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13346          when gtk_widget_grab_default() is called for a widget that
13347          is not within a GtkWindow.
13348
13349 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
13350
13351         * docs/gtk_tut.sgml, examples/clist.c: use a
13352           scrolled window in the clist example. Minor
13353           tutorial fixes.
13354
13355 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
13356
13357         * docs/gtk_tut.sgml: Style check from David King
13358           <dking@youvegotmail.net>
13359
13360 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
13361
13362         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13363         compile with unknown value of GDK_WINDOWING
13364
13365 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
13366
13367         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13368         after the rule is fired.
13369         (install-exec-local): Install gdkconfig.h only if the contents are
13370         different from the currently installed gdkconfig.h.
13371
13372 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
13373
13374         * gdk/Makefile.am (configexecincludedir): Rename from 
13375         configincludedir so that gdkconfig.h will be installed 
13376         as part of `make install-exec'. 
13377
13378 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13379
13380         * acinclude.m4
13381         * config.guess
13382         * config.sub
13383         * ltconfig
13384         * ltmain.sh: upgrade to libtool 1.2f
13385
13386         * autogen.sh: libtool is not required to autogen gtk+
13387
13388         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13389         needed)
13390
13391 1999-03-18  Tor Lillqvist  <tml@iki.fi>
13392
13393         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13394         declaring gdk variables exported/imported from the DLL. New image
13395         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13396         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13397         GDK_DRAG_PROTO_OLE2.
13398
13399         * gdk/gdk.h: Merge in Win32 version: Two new functions,
13400         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13401         declared only for the Win32 version, but could be in the X11
13402         version as well. (Needed for a Xlib-less gdk_imlib.)
13403         gdk_color_hash should have only one parameter. Declare
13404         gdk_threads_mutex with GDKVAR.
13405         
13406         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13407         just one parameter.
13408
13409         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13410         per pixel, not bits.
13411
13412         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13413         Fetch bpp (which means bits-per-pixel here) from another place on
13414         Win32. Accept also depth==32 (which we might get on Win32) with
13415         bpp==32.
13416
13417         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13418         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13419         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13420         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13421         in the backend-dependent directory, not in the common gdk
13422         directory.
13423
13424         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13425         headers.
13426
13427 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
13428
13429         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13430         want to use the Gtk+ devel version (which is true, and yes - even i am
13431         currently working with the 1.2.x branch). so everyone reading this, you
13432         probably want to issue
13433         cvs checkout -r glib-1-2 glib
13434         and
13435         cvs checkout -r gtk-1-2 gtk+
13436         as your next two comands.
13437
13438 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
13439
13440         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13441         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13442
13443         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13444         file. strongly deprecated the GTK_HAVE_* macros, we provide
13445         GTK_CHECK_VERSION() for people that need to check for certain
13446         Gtk+ versions.
13447
13448         * gtk/gtkcompat.h: removed this from CVS.
13449         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13450         idea right from the start, it just didn't seem like that back then.
13451
13452 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
13453
13454         * merges from gtk-1-2:
13455
13456 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
13457
13458         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13459         item factory class has been created.
13460         (gtk_item_factory_parse_rc): likewise.
13461
13462         * gtk/gtkmenu.c:
13463         keep proper references for old_active_menu_item.
13464         (gtk_menu_reparent): unset the usize of the new parent,
13465         so the menu can sanely be size requested and we don't get nasty screen
13466         artefacts upon next reparentation.
13467         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13468         enter notify. only synthesize enter notifies if the pointer really is
13469         inside the event window.
13470         (gtk_menu_popdown): use gtk_menu_shell_deselect().
13471         (gtk_menu_popup): move the background setting stuff into
13472         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13473
13474         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13475         gtk_menu_shell_select_item() to select the new item.
13476         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13477         do the right thing for deselection as well.
13478
13479 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
13480
13481         * gtk/gtkwidget.[hc]:
13482         (gtk_widget_accelerators_locked): return whether a widget's accelerators
13483         are locked.
13484
13485         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13486         existing accelerators if the widget's accelerators are locked.
13487
13488 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
13489
13490         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13491
13492         * gtk/gtkmenu.c: truely forward key press and key release events to
13493         the menu widget from the toplevel or tearoff window. we can't simply
13494         connect to that, we need to stop further processing of the events as
13495         well.
13496
13497 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
13498
13499         * gtk/gtkmenu.c:
13500         (gtk_menu_key_press): pass event->keyval, event->state to
13501         gtk_accelerator_valid, instead of event->keyval twice.
13502         refuse to install single letter accelerators for menus that use
13503         single letter shortcuts.
13504
13505         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13506         gtk_menu_ensure_uline_accel_group().
13507
13508         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13509         which will always return an uline accel group, made
13510         gtk_menu_get_uline_accel_group() return NULL if the group isn't
13511         yet created.
13512
13513 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
13514
13515         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13516
13517         * gtk/gtkclist.c (gtk_clist_column_title_passive):
13518         Leave button sensitive, trap  button_press, button_release,
13519         motion_notify, enter_notify and leave_notify events instead.
13520         (gtk_clist_column_title_active): disconnect event handler.
13521         (gtk_clist_drag_data_get): fixed memory leak. Reported by
13522         Guillaume Laurent <glaurent@worldnet.fr>
13523
13524 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
13525
13526         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13527         width/height mixups.
13528
13529         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13530         if needed.
13531
13532 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
13533
13534         * gtk/testgtk.c (create_item_factory): unref the item factory after
13535         window's destruction.
13536
13537         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13538         count on the menu shell around the menu item's activation, since the
13539         signal emission may cause menu shell destruction.
13540
13541         * gtk/gtkitemfactory.c:
13542         the previous code leaked one accel group per menu. we use
13543         gtk_menu_get_uline_accel_group() now to fix that, and with that
13544         also create the underline accelerator group of the menus only if
13545         required (i.e. an underline accelerator has been specified).
13546         (gtk_item_factory_construct):
13547         (gtk_item_factory_create_item): removed code that would create an
13548         extra accel group for the menu (and leak references).
13549         (gtk_item_factory_create_item): adapted the underline accelerator
13550         installation code to properly feature gtk_menu_get_uline_accel_group().
13551
13552         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
13553         menu->accel_group, this may return NULL if the accelerator group
13554         hasn't been set yet.
13555         added gtk_menu_get_uline_accel_group() to retrive the underline
13556         accelerator group of the menu, this will be created on demand
13557         and proper care is taken about its reference count.
13558
13559         * gtk/gtkitemfactory.h:
13560         * gtk/gtkitemfactory.c:
13561         dumped the approach of keeping a widgets by action list on the
13562         factory since the factory<->widget destroy negotiation didn't work
13563         and would be hard to get going at all. instead we keep a list of
13564         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
13565         persistant throughout a program's life time).
13566         also, i removed the static const gchar *key_* variables, and made
13567         them inline strings (they weren't actually used anyways).
13568         (gtk_item_factory_add_item): update ifactory->items.
13569         (gtk_item_factory_destroy): destroy ifactory->items (and remove
13570         the item factory pointer from the remaining ifactory widgets).
13571         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
13572         list to find the widget.
13573         (gtk_item_factory_get_item): new function that works around
13574         gtk_item_factory_get_widget() limitations, this function will only
13575         return menu items, even for <Branch> entries.
13576
13577 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13578
13579         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13580         font hash table, if we have a GdkFontPrivate entry for this font
13581         already, simply increment its reference count, provided by Olaf Dietsche
13582         <olaf.dietsche+list.gtk@netcologne.de>.
13583
13584         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13585         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13586
13587 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
13588
13589         * gtk/gtkcontainer.c:
13590         (gtk_container_add_with_args):
13591         (gtk_container_addv):
13592         (gtk_container_add): before adding a child to a conatiner, make sure
13593         it is (default) constructed, this is neccessary because under certain
13594         circumstances the child will get relized and mapped immediatedly, in
13595         which case it has to be constructed already.
13596
13597 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
13598
13599         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
13600         values > 1 as TRUE also.
13601
13602 1999-03-16  Tor Lillqvist  <tml@iki.fi>
13603
13604         * README.win32: New file.
13605                 
13606         * configure.in: Check for lstat.
13607
13608         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
13609         completeness.
13610
13611         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
13612
13613         * gtk/gtk.def: Removed CRs.
13614
13615         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
13616         ..\gdk\win32).
13617
13618         * gdk/win32/makefile.msc: Correct upwards relative paths.
13619         
13620 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
13621
13622         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13623           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13624           it was connecting a void function to expose_event and the int
13625           returning function to the draw signal
13626
13627 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
13628
13629         * configure.in:
13630         Use correct path to libgmodule.la when ref'ing uninstalled copy
13631         of glib.  (Already in stable branch, Bug #417)
13632
13633 1999-03-15  Tor Lillqvist  <tml@iki.fi>
13634
13635         Win32 merge and general portability stuff:
13636                 
13637         * acconfig.h,configure.in: Check for <sys/time.h>.
13638
13639         * gdk/win32: New directory (actually, been there for a while).
13640         
13641         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13642         NATIVE_WIN32, and use these. Always case fold on Win32. No
13643         backslashed escapes on native Win32.
13644
13645         * gtk/{gtk.def,makefile.msc}: New files.
13646
13647         * gtk/Makefile.am: Add above new files.
13648         
13649         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13650         instead of <strings.h>.
13651
13652         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13653         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13654         <unistd.h> appropriately.
13655
13656         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13657         Use ABS() (from <glib.h>) instead of abs().
13658         
13659         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13660         of gtk (and thus glib) headers, so that WIN32 will be
13661         defined. With MS C, include <direct.h> for mkdir prototype.
13662
13663         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13664         some casts, needed by MS C.
13665
13666         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13667         implemented).
13668
13669         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13670         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
13671         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13672
13673         * gtk/gtkmain.h: Mark variables for export/import on Win32.
13674                 
13675         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13676         the event is not a hint, or its window is not the slider. Needed
13677         on Win32, at least.
13678
13679         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13680         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13681         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13682         a subdirectory of the Windows directory as gtk system
13683         configuration directory.
13684
13685         * gtk/gtkselection.c: No chunks on Win32.
13686
13687         * gtk/gtksocket.c: Not implemented on Win32.
13688
13689         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13690
13691         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13692
13693         * gtk/maketypes.awk: Declare variables with a macro that expands to
13694         necessary export/import magic in the case of Win32.
13695                 
13696         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13697
13698 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
13699
13700         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13701         since those were meant only for gdki18n.h.  
13702         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13703         for widechar tests.
13704         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13705
13706 1999-03-13  Tor Lillqvist  <tml@iki.fi>
13707
13708         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13709         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13710
13711         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13712         installed) to CFLAGS.
13713
13714         * gdk/Makefile.am: Add rules for gdkconfig.h.
13715
13716         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13717         APIs.
13718
13719         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13720         gdkx.h anyway when compiling for X11.
13721         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13722         general): Merge in Win32 version.
13723         
13724         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13725         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13726         expansion (if we don't have HAVE_PWD_H), allow for drive
13727         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
13728         included code from Craig Setera's port to Win32 (the one that uses
13729         X11, and the cygwin dll), even if it probably will be abandoned.
13730
13731         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13732         the user entered one herself.  This way one can complete *.h and
13733         don't get matches on any .help files, for instance.
13734         
13735 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13736
13737         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13738         font hash table, if we have a GdkFontPrivate entry for this font
13739         already, simply increment its reference count, provided by Olaf Dietsche
13740         <olaf.dietsche+list.gtk@netcologne.de>.
13741
13742         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13743         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13744
13745 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13746
13747         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13748         the number of calls to gdk_draw_point() (and thus to X) by
13749         clipping the points by hand.
13750
13751         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13752         the clip parameter.
13753         (gtk_handle_box_paint): Only paint the handle if the expose area
13754         intersects it.
13755
13756 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13757
13758         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13759
13760 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
13761
13762         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13763         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13764
13765 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13766
13767         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13768          textmode (O_TEXT) for OS/2 version.
13769
13770 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
13771
13772         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
13773         GtkSpinButton, "input" and "output", to make the output more flexible.
13774         The user has to provide a mapping between adjustment->value and the
13775         output string (and vice versa, if the spin button is editable). 
13776         See testgtk for examples.
13777
13778 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
13779
13780         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13781         new one.
13782         
13783         * configure.in: set gtk+ version to 1.3.0.