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