]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Flag invisible widgets as TOPLEVEL.
[~andy/gtk] / ChangeLog.pre-2-2
1 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4         widgets as TOPLEVEL.
5
6         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7         TOPLEVEL widgets are containers.
8
9         * gtk/gtkinvisible.h: Remove useless include.
10
11 2000-12-11  Havoc Pennington  <hp@redhat.com>
12
13         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
14         Handle chopping off \r\n and 0x2029 in addition to \n before
15         passing to PangoLayout
16
17         * gtk/gtkimcontextsimple.c
18         (gtk_im_context_simple_get_preedit_string): 
19         return an empty string if no match is pending
20
21         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
22         assertion that the returned preedit string was sane
23
24         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
25         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
26         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
27
28 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
29
30         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
31         Fix up finalizer to chain to its parent.
32
33 2000-12-11  Alexander Larsson  <alexl@redhat.com>
34
35         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
36         Clearified the difference between the keyboard types. Wrote a note
37         about the magic sysrq key to get out of raw mode.
38
39 2000-12-09  James Henstridge  <james@daa.com.au>
40
41         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
42         member to hold masks for detecting the start of a protocol packet.
43         (mouse_devs): add packet start masks for ps2 and ms device types.
44         Left the mask for fidmour blank, as I have no idea what it should
45         be.
46         (handle_mouse_io): skip bytes until we get to the start of a
47         packet.  My Logitech mouse seems to be passing an extra NULL pad
48         byte, and GPM does a similar thing here.
49         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
50         this is the ms mouse driver.
51         (gdk_fb_mouse_ms_packet): fix up button handling, which was
52         completely broken except for button1.  It was checking the wrong
53         bit in the packet for the status of the right mouse button, and
54         wrongly assuming right == button2 rather than 3.  I fixed that and
55         also added support for middle button (button2).
56
57 2000-12-08  Havoc Pennington  <hp@redhat.com>
58
59         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
60         that cause a segfault on text insertion
61
62         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
63         warning
64
65         * gtk/gtktextiter.c (test_log_attrs): use
66         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
67
68         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
69         Get log attrs for a line, using a cache stored on the buffer
70         
71         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
72         reported by Jeff Franks
73
74 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
75
76         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
77         /dev/ttyS0 -> /dev/mouse
78
79 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
80
81         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
82         Added dummy gdk_fontset_load.
83
84 2000-12-08  Alexander Larsson  <alexl@redhat.com>
85
86         * docs/README.linux-fb:
87         * docs/Makefile.am:
88         Initial GtkFB docs.
89         
90         * gdk/linux-fb/Makefile.am:
91         Define GDK_DATA_PREFIX.
92
93         * gdk/linux-fb/gdkmain-fb.c:
94         Fix typo.
95         Change default display to /dev/fb0.
96
97         * gdk/linux-fb/gdkpango-fb.c:
98         Add $(prefix)/share/fonts/ to font path.
99         
100 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
101
102         * gdk/linux-fb/gdkkeyboard-fb.c:
103         New file containing the abstracted keyboard driver. Most code
104         taken from gdkinput-ps2.c
105
106         * gdk/linux-fb/gdkinput-ps2.c:
107         Removed file.
108         
109         * gdk/linux-fb/Makefile.am:
110         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
111
112         * gdk/linux-fb/gdkcolor-fb.c:
113         display->fb was renamed to display->fb_fd.
114
115         * gdk/linux-fb/gdkcursor-fb.c:
116         gdk_mouse_get_info -> gdk_fb_mouse_get_info
117
118         * gdk/linux-fb/gdkinput.c:
119         Moved gdk_input_init here from gdkinput-ps2.c
120
121         * gdk/linux-fb/gdkmain-fb.c:
122         display->fb was renamed to display->fb_fd.
123         Now the tty and the console is opened here instead
124         of in the keyboard driver. Also check GDK_VT to see what
125         tty to open.
126         Move gdk_beep () here from gdkinput-ps2.c
127         gdk_mouse_get_info -> gdk_fb_mouse_get_info
128
129         * gdk/linux-fb/gdkmouse-fb.c:
130         Add header.
131         gdk_mouse_get_info -> gdk_fb_mouse_get_info
132         Return correct keyboard modifiers.
133         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
134
135         * gdk/linux-fb/gdkprivate-fb.h:
136         Add tty and vt info to display.
137         Add orignal modeinfo storage to display
138         Update global functions
139
140         * gdk/linux-fb/gdkwindow-fb.c:
141         Added gdk_fb_window_find_focus().
142         gdk_mouse_get_info -> gdk_fb_mouse_get_info
143
144 2000-12-07  Havoc Pennington  <hp@pobox.com>
145
146         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
147         function, noticed by Alex
148
149 2000-12-06  Elliot Lee  <sopwith@redhat.com>
150
151         * configure.in: Detect freetype properly
152         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
153         above.
154
155 2000-12-06  Alexander Larsson  <alexl@redhat.com>
156
157         * gdk/linux-fb/Makefile.am:
158         Add gdkmouse-fb.c
159         
160         * gdk/linux-fb/gdkmouse-fb.c:
161         New file. Abstracted the mouse drivers a bit.
162
163         * gdk/linux-fb/gdkcursor-fb.c:
164         The cursor hide/show functions was moved here from gdkinput-ps2.c.
165
166         * gdk/linux-fb/gdkinput-ps2.c:
167         Removed old mouse handling code. Moved cursor handling code
168         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
169         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
170         gdk_mouse_get_info.
171
172         * gdk/linux-fb/gdkmain-fb.c:
173         Pass NULL pointers for x,y in gdk_mouse_get_info call.
174
175         * gdk/linux-fb/gdkprivate-fb.h:
176         Removed public gdk_fb_find_common_ancestor, added and renamed
177         functions for the new mouse handling code.
178
179         * gdk/linux-fb/gdkwindow-fb.c:
180         Moved gdk_fb_window_send_crossing_events here. added global
181         variable gdk_fb_window_containing_pointer. made
182         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
183         renamed to gdk_mouse_get_info.
184
185 2000-12-06  Alexander Larsson  <alexl@redhat.com>
186
187         * gdk/linux-fb/gdkevents-fb.c:
188         Update to match latest gmain/gsource changes.
189
190         * gdk/linux-fb/gdkinput-ps2.c:
191         Bogus gdk_keymap_get_entries_for_keycode implementation so that
192         it links. Will be implemented later.
193
194 2000-12-03  Havoc Pennington  <hp@pobox.com>
195
196         * gdk/Makefile.am: add gdkkeys.[hc]
197
198         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
199         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
200
201         * acconfig.h, configure.in: add checks and command line options
202         for XKB
203
204         * gdk/x11/gdkkeys-x11.c: Implement the above functions
205         
206         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
207         and group in the key event
208
209         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
210         field with the low-level hardware key code, and a group
211         field with the keyboard group
212
213         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
214         and declare a couple globals used for keymap handling
215         
216         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
217         hold down Shift-Control and type a hex number to get a Unicode 
218         character corresponding to the hex number
219         (gtk_im_context_simple_get_preedit_string): Fix cursor position
220         (return bytes not chars)
221
222 2000-12-05  Elliot Lee  <sopwith@redhat.com>
223
224         * gdk/gdkcolor.h: Make GdkColor specify element sizes
225         to avoid waste on 64-bit platforms.
226
227 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
228
229         * INSTALL: Fix link to PNG home, remove reference
230         to fribidi.
231
232         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
233         
234         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
235         tested.)
236
237         * gtk/gtkcheckmenuitem.c: Permanently turn on
238         always_show_toggle.
239
240         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
241         be NULL. (Vladimir Klebanov, #26545)
242
243         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
244         some signed/unsigned comparison problems. (#6510,
245         David Kaelbling)
246
247         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
248         return type to boolean (Oskar Liljeblad, #18648)
249
250 2000-12-05  Alexander Larsson  <alexl@redhat.com>
251
252         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
253         Remove bogus colormap setting.
254
255 2000-12-05  Alexander Larsson  <alexl@redhat.com>
256
257         * gdk/linux-fb/gdkcolor-fb.c:
258         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
259
260         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
261         Must set colormap.
262         
263 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
264
265         * docs/tutorial/gtk-tut.sgml: DND updates
266
267 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
268
269         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
270         Remove old debug g_warning().
271         (gdk_fb_draw_drawable): The src argument can be either a wrapper
272         or an implementation, just pass the implementation to draw_drawable_2.
273         
274         * gdk/linux-fb/gdkprivate-fb.h:
275         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
276
277         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
278         clear and invalidate area when window is destroyed.
279         (send_map_events): Remove old commented out code.
280
281 2000-12-05  Alexander Larsson  <alexl@redhat.com>
282
283         * gdk/linux-fb/gdkpango-fb.c:
284         Use italic instead of oblique in font aliases.
285         
286         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
287         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
288         other unsupported functions.
289
290 2000-12-04  Havoc Pennington  <hp@redhat.com>
291
292         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
293
294         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
295
296         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
297
298         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
299         hack to avoid infinite loops (synthetic expose event) - 
300         Owen has more appropriate fixes in a branch he'll check in later.
301
302         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
303         separator, CR, and CRLF as line ends
304
305         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
306         into lines using pango_find_paragraph_boundary(); other bits of
307         the widget are still going to be broken if the boundary isn't '\n'
308         though
309
310 2000-12-04  Alexander Larsson  <alexl@redhat.com>
311
312         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
313         multiply.
314
315         * gdk/linux-fb/gdkpango-fb.c:
316         Copied some 26.6 scaling macros from pango to clean up the rounding.
317         (pango_fb_font_get_glyph_info): Correct sign on x value.
318
319         * gdk/linux-fb/gdkprivate-fb.h:
320         Removed unreferenced external functions.
321
322         * modules/linux-fb/Makefile.am: Use ` instead of '.
323
324         * modules/linux-fb/basic.c:
325         Remove dead code. In particular the dummy lang engine which broke all
326         pango layouts in GtkFB. Don't include tables-big.i anymore.
327
328         * modules/linux-fb/tables-big.i:
329         Upgrade to latest version from pango. Left for reference, basic_ranges
330         moved to basic.c.
331         
332 2000-12-04  Havoc Pennington  <hp@redhat.com>
333
334         Fix bugs Alex found:
335         
336         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
337         to "draw"
338
339         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
340
341         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
342
343         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
344         implementation in here, apparently the expose() implementation was
345         dead code.
346
347 2000-12-04  Alexander Larsson  <alexl@redhat.com>
348
349         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
350         Return positive descent.
351
352 2000-12-02  Havoc Pennington  <hp@pobox.com>
353
354         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
355         method and signal
356         
357         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
358         calls gdk_window_process_updates() to push the exposes through
359         (gtk_widget_class_init): No more draw signal, no
360         gtk_widget_real_draw()  
361         
362         * gtk/gtkbin.c (gtk_bin_draw): remove
363
364         * gtk/gtkbox.c (gtk_box_draw): remove
365
366         * gtk/gtkbutton.c (gtk_button_draw): remove
367
368         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
369
370         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
371
372         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
373
374         * gtk/gtkclist.c (gtk_clist_draw): remove
375
376         * gtk/gtkentry.c (gtk_entry_draw): remove
377
378         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
379
380         * gtk/gtkfixed.c (gtk_fixed_draw): remove
381
382         * gtk/gtkframe.c (gtk_frame_draw): remove
383
384         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
385
386         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
387
388         * gtk/gtklayout.c (gtk_layout_draw): remove
389
390         * gtk/gtklist.c (gtk_list_draw): remove
391
392         * gtk/gtklistitem.c (gtk_list_item_draw): remove
393
394         * gtk/gtkmenu.c (gtk_menu_draw): remove
395
396         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
397
398         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
399
400         * gtk/gtknotebook.c (gtk_notebook_draw): remove
401
402         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
403
404         * gtk/gtkpacker.c (gtk_packer_draw): remove
405
406         * gtk/gtkrange.c (gtk_range_draw): remove
407
408         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
409
410         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
411
412         * gtk/gtktable.c (gtk_table_draw): remove
413
414         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
415
416         * gtk/gtktext.c (gtk_text_draw): remove
417
418         * gtk/gtktextview.c (gtk_text_view_draw): remove
419
420         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
421
422         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
423
424         * gtk/gtktree.c (gtk_tree_draw): remove
425
426         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
427
428         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
429
430         * gtk/gtkviewport.c (gtk_viewport_draw): remove
431
432         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
433
434         * gtk/gtkvscale.c (gtk_vscale_draw): remove
435
436         * gtk/gtkwindow.c (gtk_window_draw): remove
437
438 2000-20-01  Anders Carlsson  <andersca@gnu.org>
439
440         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
441         a GtkToggleButton is both insensitive and active, it was being
442         drawn by the GtkButton draw handler which doesn't check the
443         state. Now it's calling gtk_toggle_button_paint instead.
444         
445 2000-12-01  Havoc Pennington  <hp@redhat.com>
446
447         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
448         dangling pointers to the appearance attributes from the 
449         line display
450
451         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
452         width/height to mean "full width/height of drawable"
453
454         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
455         click to select word/line
456         
457         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
458         when getting log attrs. Get a slice, so that pixmaps and stuff
459         are properly handled.
460
461         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
462         paste into the selection (replaces selection now, previously
463         crashed or added to selection). Reveals longstanding btree bug -
464         select multiple lines, middle-click on the selection, boom. This
465         isn't related to my changes though.
466
467         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
468         PangoLogAttrs changes
469         (gtk_entry_move_backward_word): ditto
470
471         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
472         functions return bool whether the iter moved onto a
473         dereferenceable position.
474  
475         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
476         functions for motion in terms of display lines.
477
478         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
479         get the buffer a mark is inside
480         
481 2000-12-01  Alexander Larsson  <alexl@redhat.com>
482
483         * gdk/linux-fb/Makefile.am:
484         * modules/linux-fb/Makefile.am:
485         Freetype 2 final uses freetype-config
486
487         * gdk/linux-fb/gdkpango-fb.c:
488         Upgrade to use Freetype 2 final.
489         More flexible support for font aliases, this also fixes a bug with
490         GtkFontSelector, as the aliases must be visible in the font/family list,
491         or GtkFontSelector reads uninitialized memory.
492
493 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
494
495         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
496         XGetIMValues to properly terminate variable argument list, and do
497         NULL return check for ic_values and xim_styles.
498
499         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
500         Restore preedit state after XmbResetIC().
501         
502         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
503         XvaCreateNestedList() should take XvaNestedList, but not
504         XvaNestedList*.
505
506         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
507         preedit_draw_callback, preedit_caret_callback): Match
508         "preedit-changed" signal name to "preedit_changed" to be
509         consistent to the spec.
510
511         * gtk/gtkimcontextsimple.c (check_table):
512         Match "preedit-changed" to "preedit_changed" to be consistent
513         to the spec.
514
515 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
516
517         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
518         gc->clip_region == NULL>
519
520 2000-11-30  Tor Lillqvist  <tml@iki.fi>
521
522         Changes by Hans Breuer:
523         
524         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
525         Dont't use negative width and height as max_hints. This fixes
526         Owen's recent testgtk changes for win32.
527
528         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
529         gdk_win32_hdc_release): These are exported and may be called with
530         other drawable types than our GdkDrawableImplWin32 (?).
531
532         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
533         so always #define USE_BACKING_STORE.
534
535         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
536         of printf for debugging output.
537
538         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
539         
540         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
541
542         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
543         declaration.
544
545         * gtk/gtktexttypes.h: Ditto.
546
547         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
548         (GDK_VoidSymbol) also if in case of arg check failure.
549
550         * gtk/gtkimcontextsimple.c
551         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
552         position to the pointer, but to the variable it points to.
553
554         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
555
556         * gtk/gtk.def: Updates.
557
558 2000-11-29  Elliot Lee  <sopwith@redhat.com>
559
560         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
561         GTK_TYPE_TREE_MODEL.
562
563 2000-11-29  Alexander Larsson  <alexl@redhat.com>
564
565         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
566         Set the size of the font from the description.
567         (gdk_text_width): Gross hack that calculates the width
568         of text by text_length * size/2. This is necessary because
569         GtkLabel does some ugly gtk_string_width call to calculate
570         an good size.
571         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
572
573 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
574
575         * docs/tutorial/gtk-tut.sgml: DND updates
576
577 2000-11-29  Alexander Larsson  <alexl@redhat.com>
578
579         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
580         If you pass width or height == 0 to gdk_window_clear_area they
581         should be calculated from the window size.
582
583 2000-11-29  Alexander Larsson  <alexl@redhat.com>
584
585         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
586         a grab, but no grab-cursor, use the cursor from the grabbed
587         window. (gdk_fb_window_send_crossing_events): Send normal
588         enter/leave notifications if grab and owner_events == TRUE.
589
590 2000-11-29  Alexander Larsson  <alexl@redhat.com>
591
592         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
593         Do implicit button grabs, even if the window doesn't
594         want the event.
595         (gdk_fb_window_send_crossing_events): If there is a
596         grab, only the grabbed window gets normal enter/leave
597         notifications. On ungrab go from grabbed window to current.
598         Don't send any notification to b when propagating from c -> b.
599         If setting a grab on window, don't set prev_window.
600         (handle_mouse_input): Send enter/leave events to the window the
601         mouse is over, not the grabbed one.
602         
603 2000-11-28  Elliot Lee  <sopwith@redhat.com>
604
605         * gdk/gdkregion-generic.c: Zap warning.
606         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
607         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
608
609 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
610
611         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
612         The cursor should be hidden if it is part of either the
613         source or destination region. Not only if it is in both.
614         (gdk_window_set_transient_for): Silence warnings.
615
616 2000-11-28  Alexander Larsson  <alexl@redhat.com>
617
618         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
619         The default mode in X is Pie Arcs, therefore that is
620         what Gtk+ uses.
621
622 2000-11-28  Alexander Larsson  <alexl@redhat.com>
623
624         * gdk/linux-fb/gdkinput-ps2.c:
625         Implement correct EnterNotify/LeaveNotify:
626         (gdk_fb_window_send_crossing_events): New function that sends
627         all GdkCrossingEvents from the last mouse-window to the specified
628         destination.
629         (gdk_fb_window_visibility_crossing): Removed function.
630         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
631         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
632         instead of gdk_window_get_pointer() for better readability.
633
634         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
635         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
636
637         * gdk/linux-fb/gdkprivate-fb.h:
638         removed gdk_fb_window_visibility_crossing, added
639         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
640
641         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
642         New function that finds the least common ancestor of two windows.
643         (gdk_window_show, gdk_window_hide):
644         Use gdk_fb_window_send_crossing_events.
645         (gdk_fb_window_move_resize): Send configure events to toplevel
646         windows. Use gdk_fb_window_send_crossing_events.
647
648 2000-11-27  Havoc Pennington  <hp@redhat.com>
649
650         * gtk/gtkprivate.h (enum): Remove a trailing comma
651
652 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
653
654         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
655         the "changed" callback of the adjustment.  We need to redraw the
656         spin button's arrows when the adjustment's range changes.
657         (adjustment_changed_cb): Draw the arrows.
658         (gtk_spin_button_value_changed): Draw the arrows.
659
660 2000-11-23  Alexander Larsson  <alexl@redhat.com>
661
662         * gdk/linux-fb/gdkselection-fb.c:
663         Initial selection implementation.
664
665         * gtk/gtkselection.c:
666         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
667         requestor in gtk_selection_request.
668         
669         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
670         Added gdk_selection_property atom.
671
672         * gdk/linux-fb/gdkprivate-fb.h:
673         Export _gdk_selection_window_destroyed.
674         Removed mask_off_x/y from GdkCursorPrivateFB.
675         Removed hbearing, added top, left to PangoFBGlyphInfo.
676
677         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
678         Call _gdk_selection_window_destroyed
679         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
680         the root window has been created.
681         (static_dx_hack, static_dy_hack, compare_draw_rects,
682         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
683         in region. They are already sorted. Instead just traverse them in
684         reverse if draw_direction < 0.
685         
686         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
687         Double-clicks must be sent after the normal button_press.
688         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
689         
690         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
691         Pass _gdk_fb_screen_gc instead of NULL.
692
693         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
694         Initialize gdk_selection_property.
695         (gdk_event_make): Remove unused code.
696
697         * gdk/linux-fb/gdkcursor-fb.c:
698         Make the pixmap for the cursor the same size as the mask. Also remove
699         the mask_off_x/y fields in GdkCursorPrivateFB and combine
700         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
701         Now the whole cursor is visible.
702
703         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
704         Fix bug where xdest+height instead of ydest+height was used
705         to calculate if the source and dest overlapped. This fixes the
706         redraw bug when the main window in testgtk was scrolled when
707         partially covered by a tall window.
708         Copy rectangles in region in order depending on draw_direction.
709         Also moved the draw_direction flipping of start_y and end_y into
710         the gc functions, as this might not be what all of them want.
711         (gdk_fb_draw_lines): Support dashed lines.
712         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
713         so that the text is positioned correctly (was 1 pixel high).
714
715         gdk/linux-fb/gdkgc-fb.c:
716         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
717         all lines were drawn a pixel to short. Also checked the default of
718         the rest of the values, and they're the same as X now.
719
720         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
721         Clean up pixel positioning of the glyphs. Just use bgy->top and
722         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
723         to all divisions to get correct rounding behaviour.
724
725         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
726         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
727         Moved start_y/end_y flip into draw_drawable implementations.
728         Flip also x rendering when draw_direction < 0.
729         Remove unneccesary multiply with draw_direction.
730
731 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
732
733         * docs/tutorial/gtk-tut.sgml:
734           - get rid of gtk_toggle_button_toggled FUD
735           - start DND section - needs work - based on:
736                 http://wolfpack.twu.net/docs/gtkdnd/
737
738 2000-11-22  Alexander Larsson  <alexl@redhat.com>
739
740         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
741         Correct calculation of font metrics. Now GtkEntrys have sane
742         size.
743
744 2000-11-22  Alexander Larsson  <alexl@redhat.com>
745
746         * gdk/gdktypes.h:
747         Add new type GdkSpan
748         
749         * docs/reference/gdk/gdk-sections.txt,
750         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
751         gdk/gdkregion.h:
752         Implement and document gdk_region_spans_intersect_foreach.
753
754         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
755         Add new file gdkrender-fb.c which contains all core
756         rendering code.
757         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
758         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
759         (optimized rectangle fillers).
760
761         * gdk/linux-fb/gdkdrawable-fb2.c:
762         Move all rendering code to gdkrender-fb.c.
763         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
764         Use the new span intersection functions in gdk_fb_fill_spans.
765         gdk_fb_draw_rectangle() clips filled rectangles and calls
766         gc->fill_rectangle with the result.
767         gdk_fb_fill_spans() gets extra argument "sorted".
768
769         * gdk/linux-fb/gdkevents-fb.c:
770         Remove unused includes and defines.
771         New function gdk_fb_get_time() to get correct time for events.
772
773         * gdk/linux-fb/gdkinput-ps2.c:
774         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
775         Make sure to set the time of all events.
776
777         * gdk/linux-fb/gdkmain-fb.c:
778         Use gdk_fb_get_time ().
779
780         * gdk/linux-fb/gdkprivate-fb.h:
781         New virtual GC calls: fill_span & fill_rectangle.
782         Export gdk_fb_get_time().
783         gdk_fb_fill_spans() gets extra argument "sorted".
784
785         * gdk/linux-fb/mi*.c:
786         Use GdkSpan instead of GdkRectangle.
787         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
788         from XFree 4 source)
789         
790 2000-11-22    <jrb@redhat.com>
791
792         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
793         reversing the order in an if statement will do.  Doing so managed
794         to make the treemodelsort half work.  Other half will follow after
795         I get the insert function fully fixed.
796
797 2000-11-21  Elliot Lee  <sopwith@redhat.com>
798         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
799         more than 2 bits. Besides, I need to implement an evil hack. :)
800
801 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
802
803         * docs/tutorial/gtk-tut.sgml: minor corrections
804
805 2000-11-20  Jonathan Blandford <jrb@redhat.com>
806         * gtk/gtktreemodelsort.h: Add convertion functions to let you
807           convert to and from relative path's and iters.
808
809         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
810           testing sorting functions a bit better.  Currently broken -- will
811           fix in morning.
812
813 2000-11-20  Havoc Pennington  <hp@redhat.com>
814
815         * gtk/gtkwidget.c: Documented a bunch of functions in here
816         (gtk_widget_realize): Warn if you try to realize
817         a widget with no parent that isn't a toplevel
818         (gtk_widget_intersect): return a gboolean
819
820 2000-11-20  Havoc Pennington  <hp@redhat.com>
821
822         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
823         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
824         scrolling to be implemented in GDK to finish. Also, right now
825         we just size_allocate all children on every layout change,
826         which is pretty lame. Test commented out of testtext.c, 
827         until it works better.
828
829 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
830
831         * gdk/linux-fb/gdkdrawable-fb2.c:
832         Removed unused arguments from gdk_fb_drawable_get_pixel().
833
834         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
835         Renamed fidur specific mouse packet data in MouseDevice to
836         generic. Used it in ps2 mouse handling code to avoid blocking
837         reads.
838
839 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
840
841         * demos/gtk-demo/main.c: Changed to have the list become
842         non-italic when the demo window is destroyed through an external
843         event (like a close button).  Doing so found three bugs in the
844         widget.
845
846         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
847
848         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
849         we actually set the cell.
850
851         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
852
853         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
854         free a leaked path.  Thanks memprof.
855
856 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
857
858         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
859         off-by-one error when destroying allocated segments
860         on failure. (Elliot)
861
862 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
863
864         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
865         memleaks found by Evan Martin.
866
867 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
868
869         * Released 1.3.2
870         
871         * NEWS: Updates for 1.3.2
872
873 2000-11-17  Tor Lillqvist  <tml@iki.fi>
874
875         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
876         but in general for window system specific events.
877
878         * gtk/gtk.def
879         * gtk/makefile.mingw.in
880         * gtk/makefile.msc.in: Update.
881         
882         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
883
884 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
885
886         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
887         distribute gtk.immodules.
888
889         * gtk/Makefile.am (install-data-local): Don't install the
890         gtk.immodules file created for the uninstalled modules;
891         instead run gtk-query-immodules after install
892
893 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
894
895         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
896         -rpath to the right install location.
897
898         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
899         -export-dynamic.
900
901         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
902         properly.
903
904 2000-11-15  Havoc Pennington  <hp@pobox.com>
905
906         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
907         patch from Mikael Hermansson to temporarily stop blinking while
908         the user is using the keyboard to type or navigate. 
909
910         Also, when blinking, stay on for longer than we stay off. Also,
911         return from start_cursor_blink if !cursor_visible, to save
912         checking that flag all over the place before we call
913         start_cursor_blink.
914
915 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
916
917         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
918         only contain a "fontset" line, which is now ignored.
919
920         * gtk/gtkentry.c (gtk_entry_button_release): Make 
921         double-click-to-select-word work.
922         
923 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
924
925         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
926         Don't move back one char when we are actually at the end of the 
927         paragraph.
928
929 2000-11-15  Robert Brady  <robert@suse.co.uk>
930
931         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
932         'o' < 'p'.
933         
934         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
935         bind_textdomain_codeset.
936
937         (gtk_init_check): Make the warning about translating default:LTR
938         sterner.
939         
940 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
941
942         * **/Makefile.am : remove unecessary rules for win32-specific
943         config-substituted targets. If you want these rules, use
944         --enable-maintainer-mode (called automatically by autogen.sh).
945         Stops a lot of unneccessary make-time warnings.
946
947         * gtk/gtktext{layout,display}.c: Factor in total width as
948         well as screen when figuring alignment for word-wrap as well as
949         no wrap; this is necessary to handle lines that cannot be wrapped
950         at all.
951
952 2000-11-15  Havoc Pennington  <hp@redhat.com>
953
954         * gtk/testtext.c: Implement essential color cycling feature
955
956 2000-11-15  Havoc Pennington  <hp@redhat.com>
957
958         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
959         when we invalidate the main window.
960
961         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
962         GtkTextView will now invalidate the side windows for us when text
963         changes.
964
965 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
966
967         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
968         unconditionally, since we may need to update the horizontal
969         scrollbars even if the height didn't change.
970
971         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
972         the extra attrs, since some of them affect size.
973
974         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
975         x_offset correctly.
976
977 2000-11-15  Havoc Pennington  <hp@redhat.com>
978
979         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
980         don't move the first line out into the margin, instead move the
981         whole paragraph in order to make space for the first line within 
982         the margin
983
984 2000-11-15  Havoc Pennington  <hp@redhat.com>
985
986         * gtk/gtktextview.c (changed_handler): offset redraw rect by
987         xoffset in addition to yoffset, so horizontal scrolling doesn't
988         break redraws
989
990 2000-11-15  Havoc Pennington  <hp@redhat.com>
991
992         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
993         from the cursor
994         (render_layout_line): fix reversed test that caused weird
995         underlines to get drawn
996
997 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
998
999         * gdk/linux-fb/gdkprivate-fb.h:
1000         Fix debug macros.
1001         
1002 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
1003
1004         * gdk/linux-fb/gdkprivate-fb.h:
1005         Added virtual functions set_pixel, get_color,
1006         fill_span and draw_drawable to the GC.
1007         Added global _gdk_fb_screen_gc to use instead of
1008         NULL when drawing to the screen.
1009         Added _gdk_fb_gc_calc_state() prototype.
1010
1011         * gdk/linux-fb/gdkgc-fb.c:
1012         Call _gdk_fb_gc_calc_state() on any gc state change.
1013
1014         * gdk/linux-fb/gdkglobals-fb.c:
1015         Add _gdk_fb_screen_gc
1016                 
1017         * gdk/linux-fb/gdkdrawable-fb2.c:
1018         _gdk_fb_gc_calc_state() calculates best functions
1019         for the GC state and depth.
1020         Moved bpp specialized code to separate functions.
1021         Added optimized 24 bpp AA draw_drawable.
1022
1023         * gdk/linux-fb/gdkevents-fb.c:
1024         Silence gcc warning.
1025
1026         * gdk/linux-fb/gdkimage-fb.c:
1027         Use _gdk_fb_screen_gc
1028
1029         * gdk/linux-fb/gdkwindow-fb.c:
1030         Init and use _gdk_fb_screen_gc
1031
1032         * gdk/linux-fb/mitypes.h:
1033         Remove unused types.
1034
1035 2000-11-14  Havoc Pennington  <hp@pobox.com>
1036
1037         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
1038         to pixels
1039
1040 2000-11-14  Havoc Pennington  <hp@pobox.com>
1041
1042         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
1043
1044         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
1045         unknown char, no real reason we were using a variable. 
1046         Remove gtk_text_unknown_char variable. Fix all the text widget
1047         files accordingly.
1048
1049         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
1050         since the Unicode spec seems to prefer that character for our
1051         purposes.
1052
1053 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
1054
1055         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
1056         value of g_getenv() isn't freeable, so g_strdup it.
1057
1058         * modules/input/inuktitut.c: Inuktitut input method.
1059
1060         * modules/input/Makefile.am: Build this.
1061         
1062 2000-11-14  Elliot Lee  <sopwith@redhat.com>
1063
1064         * gtk/Makefile.am: Install gtk.immodules, needed for operation
1065         of gtk programs.
1066
1067 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
1068
1069         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
1070         reversed > that was causing Home to go to end of previous line.
1071
1072         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
1073         modified-keypresses (leave for bindings.)
1074
1075         * modules/input/Makefile.am: Remove useless -export-dynamic
1076         from module LDFLAGS.
1077
1078 2000-11-14  Havoc Pennington  <hp@redhat.com>
1079
1080         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
1081         higher.
1082
1083         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
1084         account. Also, render rise, underline, background, etc. for
1085         pixbufs as well as text. Also, draw underlines one pixel higher.
1086
1087         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
1088         PangoAttribute for the rise, so it gets drawn properly. Also,
1089         add the GtkTextAppearance attribute for pixbuf/widget segments
1090         as well; we should go ahead and have rise, underline, background,
1091         stipple work for those
1092
1093         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
1094         Pango
1095
1096 2000-11-15  Tor Lillqvist  <tml@iki.fi>
1097
1098         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
1099
1100         * gtk/gtk.def: Update.
1101
1102         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
1103         included.
1104         (gtk_rc_get_im_module_file): Use run-time installation directory
1105         on Win32.
1106
1107         * gdk/win32/rc/gdk.rc: Remove.
1108         * gdk/win32/rc/gdk.rc.in: New file.
1109         * gdk/win32/rc/Makefile.am: New file
1110         * gdk/win32/Makefile.am: Corresponding changes.
1111
1112         * gtk/gtk.rc: Remove.
1113         * gtk/gtk-win32.rc.in: New file.
1114         * gtk/Makefile.am: Corresponding changes.
1115
1116         * configure.in: Corresponding changes.
1117
1118         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
1119         has a built gtkcompat.h. Developers using CVS code on Win32 can
1120         hand-edit it from gtkcompat.h.in.
1121
1122         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
1123         gtkcompat.h from gtkcompat.h.win32.
1124
1125 2000-11-14  Havoc Pennington  <hp@redhat.com>
1126
1127         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
1128         to default to GDK_ACTION_MOVE if the drag is within a single
1129         widget. Defaults to GDK_ACTION_COPY between widgets.
1130
1131 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
1132
1133         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
1134
1135         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
1136
1137         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
1138         srcdir != builddir
1139
1140         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
1141
1142         * configure.in (GTK_VERSION): Up to 1.3.2
1143
1144         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
1145         gtkimcontextxim.h
1146
1147         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
1148         missing doc comment.
1149
1150 2000-11-14  Alexander Larsson  <alexl@redhat.com>
1151
1152         * modules/linux-fb/basic.c:
1153         Use the glib iconv wrappers.
1154
1155 2000-11-13  Havoc Pennington  <hp@pobox.com>
1156
1157         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
1158         still more bugs.
1159
1160         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
1161         scroll the GdkWindows before realization.
1162
1163 2000-11-13  Havoc Pennington  <hp@redhat.com>
1164
1165         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
1166         where GC didn't always get updated properly
1167
1168         * demos/gtk-demo/textview.c (create_tags): Use subattributes
1169         of fonts instead of setting the entire font
1170
1171         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
1172         setting entire font
1173
1174         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
1175
1176         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
1177         a bunch of individually-settable font attributes. You can still 
1178         use the "font" and "font_desc" args, they just set all the font
1179         attributes at once.
1180
1181 2000-11-13 Elliot Lee <sopwith@redhat.com>
1182
1183         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
1184
1185 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
1186
1187         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
1188         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
1189
1190         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
1191         work better.
1192
1193 2000-11-13  Havoc Pennington  <hp@redhat.com>
1194
1195         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
1196         the module file.
1197
1198         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
1199         dest->language
1200
1201         * gtk/testtext.c: Test pixels above/below/inside paragraphs
1202         settings
1203
1204         * gtk/gtktextview.c: Implement object args and setters/getters for
1205         all the aspects of the GtkTextAttributes that are not set from
1206         GtkWidget attributes. This is spacing, justification, margins,
1207         etc.
1208
1209         (gtk_text_view_set_arg)
1210         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
1211         args
1212         (gtk_text_view_class_init): Add args for justify, left_margin,
1213         right_margin, indent, and tabs
1214         
1215
1216         * gtk/gtktextlayout.c (set_para_values): fix to display indent
1217         attribute properly
1218
1219         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
1220         replace with indent attribute
1221
1222         * gtk/gtktextlayout.c (set_para_values): multiply indent by
1223         PANGO_SCALE
1224
1225         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
1226         rearranging code to do that
1227         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
1228         i.e. don't subtract the top_margin first, just to keep
1229         all margin-futzing in one place.
1230
1231         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
1232
1233         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
1234         special case of last line, Pango now handles this itself.
1235         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
1236         Y coordinate
1237         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
1238         (find_display_line_above): wasn't moving the byte index as it
1239         iterated over lines, so always returned byte 0. Also, port to use
1240         PangoLayoutIter.
1241         (find_display_line_below): same problem as
1242         find_display_line_above. Also, port to use PangoLayoutIter.
1243
1244 2000-11-13  Alexander Larsson  <alexl@redhat.com>
1245
1246         * gdk/linux-fb/*.[ch]:
1247         Massive reindent to gtk+ standard. My hands hurt.
1248
1249         * gdk/linux-fb/gdkcolor-fb.c:
1250         Move GdkColorPrivateFB from inherited to windowing_data
1251
1252         * gdk/linux-fb/gdkcursor-fb.c:
1253         _gdk_cursor_new_from_pixmap made static
1254
1255         * gdk/linux-fb/gdkdnd-fb.c:
1256         GdkDragContextPrivate moved to windowing_data
1257
1258         * gdk/linux-fb/gdkdrawable-fb2.c:
1259         Removed endian.h, use glib endianness macros instead
1260         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
1261         and GDK_DRAWABLE_IMPL_FBDATA
1262
1263         * gdk/linux-fb/gdkfont-fb.c:
1264         Add empty gdk_font_load(). Needed for linking of Gtk+.
1265
1266         * gdk/linux-fb/gdkimage-fb.c:
1267         Removed endian.h, use glib endianness macros instead
1268         Moved GdkImagePrivateFB to windowing_data
1269         gdk_image_new_bitmap didn't always allocate enough
1270         memory.
1271
1272         * gdk/linux-fb/gdkinput-ps2.c:
1273         Added semi-working support for MS serial mice.
1274
1275         * gdk/linux-fb/gdkprivate-fb.h:
1276         s/GdkWindowPrivate/GdkWindowObject/
1277         Removed GdkWindowPrivate typedef
1278         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
1279         Removed GDK_DRAWABLE_P
1280         Move GdkColorPrivateFB from inherited to windowing_data
1281         Moved GdkImagePrivateFB to windowing_data
1282
1283         * gdk/linux-fb/gdkvisual-fb.c:
1284         Removed some unused debug code.
1285
1286         * gdk/linux-fb/gdkwindow-fb.c:
1287         Use stock cursors instead of including X headers.
1288         s/GdkWindowPrivate/GdkWindowObject/
1289
1290         * gdk/linux-fb/mitypes.h:
1291         Removed unused types.
1292
1293         * modules/linux-fb/basic.c:
1294         Use the pango fribidi wrappers.
1295
1296 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1297
1298         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
1299         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
1300         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
1301         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
1302         GEqualFunc where applicable.
1303         
1304         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
1305         pango_font_description_equal as changed in pango.
1306         
1307         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
1308
1309         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
1310
1311         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
1312
1313         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
1314
1315         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
1316
1317         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
1318
1319         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
1320         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
1321
1322         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
1323         gtk_rc_styles_compare -> gtk_rc_styles_equal.
1324
1325 2000-11-12  Havoc Pennington  <hp@pobox.com>
1326
1327         * demos/gtk-demo/Makefile.am (democodedir): change demo install
1328         dir to datadir/gtk+-2.0/demo
1329
1330         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
1331         sorts of text widget and Pango font bugs. Urgh.
1332
1333         * demos/gtk-demo/Makefile.am (demos): Add textview.c
1334
1335         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
1336         tree that you should double click to see the demo. Fix 
1337         types of variables to reflect changed return values from 
1338         GtkTreeStore and GtkTreeViewColumn constructors.
1339
1340         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
1341         newly-created buffer to prepare for GObject semantics
1342
1343         * gtk/testtext.c: don't leak the buffer with GObject semantics
1344
1345         * gtk/testtextbuffer.c: ditto
1346         
1347 2000-11-12  Havoc Pennington  <hp@pobox.com>
1348
1349         Rename this testgtk to gtk-demo to avoid confusion, and 
1350         install it so people can use it as a supplement to 
1351         the documentation.
1352         
1353         * demos/gtk-demo: Moved from demos/testgtk
1354
1355         * demos/testgtk: Removed
1356
1357         * configure.in: make Makefile in gtk-demo
1358         
1359         * demos/gtk-demo/Makefile.am: Install sample source to 
1360         datadir/gtk-demo (maybe there's a better place?), and 
1361         rename the binary to gtk-demo
1362         
1363         * demos/gtk-demo/main.c (load_file): Load installed sample
1364         source if source isn't found in pwd.
1365
1366 2000-11-09  Havoc Pennington  <hp@pobox.com>
1367
1368         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
1369         argument to set the char displayed when visibility == FALSE
1370         (gtk_entry_create_layout): If !entry->visible, replace 
1371         all chars with the "invisible char"
1372
1373         * gtk/testgtk.c: Test the invisible_char deal
1374         
1375 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
1376
1377         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
1378         can't get a native font in the right encoding.
1379
1380 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
1381
1382         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
1383         respectively.
1384
1385 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
1386
1387         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
1388         Fix warning when moving between paragraphs.
1389
1390         * gtk/gtkentry.[ch]: Change move => move_cursor, 
1391         delete => delete_from_cursor, insert => insert_at_cursor
1392
1393 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
1394
1395         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
1396
1397         * modules/input/imthai-broken.c: A Thai input method for use if
1398         Thai keys are really generating Latin1 keysyms.
1399
1400         * modules/input/Makefile.am: Build these.
1401
1402 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
1403
1404         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
1405         g_filename_{to,from}_utf8 now takes an extra parameter.
1406
1407         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
1408         strftime into UTF-8.
1409
1410         (column_from_x, gtk_calendar_paint_day_names): Support RTL
1411         calendars.
1412
1413         (gtk_calendar_paint_day_names): Draw day names in the right 
1414         place.
1415         
1416 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
1417
1418         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
1419         problem with using result of g_get_charset() backwards -
1420         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
1421
1422         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
1423         negative min_width/height and max_width/height to
1424         mean "requisition"; this allows setting a window
1425         to be user-resizable in only one direction easily.
1426
1427         * gtk/testgtk.c (create_main_window): Remove hard-coded
1428         usize - set a default size in the vertical direction.
1429
1430 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
1431
1432         * gtk/gtkrange.c: Add some missing casts. Support 
1433         2 and 3 button clicks on the arrows to mean 
1434         "move by pages" and "jump to end". (Like gtkspinbutton)
1435
1436 2000-11-12 Hans Breuer <Hans@Breuer.Org>
1437
1438         * gdk/win32/makefile.msc : reflect build module changes
1439
1440         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
1441         from GdkPixmap*, cast implementation member instead.
1442
1443         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
1444         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
1445         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
1446         more Gdi functions return value checking. 
1447         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
1448         GdkImagePrivateWin32 *.
1449
1450         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
1451         menus useable again. Add #pragma message to keep reminded on this issue.
1452         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
1453         windows. This allows to enable backing store on Win32!
1454
1455         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
1456         in drawable is of impl type. Correct specific type checks appropriate.
1457  
1458         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
1459         GDK_WINDOW_DESTROYED before allocating new resources.
1460
1461         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
1462
1463         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
1464         (gdk_window_foreign_new) initialize parent handle.
1465         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
1466
1467         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
1468         Let the GDI invalidate the window on MoveWindow call to fix scrolling
1469         problems (e.g. main buttons in testgtk). 
1470
1471 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
1472
1473         * gtk/gtkentry.c (gtk_entry_key_press): Call 
1474         gtk_widget_activate for GDK_Return.
1475
1476         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
1477         of preedit cursor position.
1478
1479 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
1480
1481         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
1482         static.
1483
1484 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
1485
1486         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
1487         out support for multiple locales; that simple doesn't
1488         work reliably with current Xlib
1489
1490         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
1491         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
1492         Add support for positioning the cursor within the preedit string.
1493
1494 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
1495
1496         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
1497         at XIM input method module.
1498
1499         * gtk/gtktextview.c: Check for bindings after passing
1500         events to im context filter.
1501
1502 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
1503
1504         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
1505         empty attribute lists properly.
1506
1507 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
1508
1509         * gtk/queryimmodules.c (main): Return non-zero exit
1510         status if errors were encountered querying any
1511         modules.
1512
1513         * modules/input/Makefile.am (moduledir): remove
1514         leftover bin program target.
1515
1516         * docs/make-todo: Fix typo in error message.
1517
1518 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
1519
1520         * configure.in: Add modules/input/Makefile
1521
1522 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
1523
1524         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
1525         don't include gtkthemes.h.
1526
1527         * gtk/testgtk.c gtk/testtext.c: Set environment variables
1528         to point
1529
1530         * gtk/Makefile.am: Add new .c and .h files, build 
1531         gtk-query-immodules and use it to create a gtk.immodules
1532         file for use of test programs.
1533
1534         * gtk/gtkpreview.c: remove extra blank line.
1535
1536 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
1537
1538         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
1539         Add the ability to add extra tables beyond the default
1540         one, and also the ability to have compose sequences 
1541         that are prefixes of other compose sequences. 
1542
1543         * gtk/gtkimcontextsimple.c: Export a preedit string which
1544         consists of possible candidates for keystrokes that have
1545         been entered but not yet committed.
1546
1547         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
1548         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
1549
1550         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
1551         Add a function to add input-method switching menu items
1552         to a menu.
1553
1554         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
1555         when switching input methods.
1556
1557         * gtk/gtkimcontextsimple.[ch]: Change the format of
1558         the compose table to allow compose tables of different
1559         lengths / sequence.
1560
1561 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
1562
1563         * gtk/gtkimmodule.[ch]: Support routines for loading
1564         GtkIMContext implementations dynamically at runtime.
1565
1566         * modules/input/imcyrillic-translit.c: A sample input
1567         method (based on GtkIMContextSimple with an extra table),
1568         which demonstrates preedit strings and the module
1569         system for input modules
1570
1571         * gtk/queryimmodules.c: Program to query the available
1572         input modules and write the results into a file.
1573          
1574         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
1575         extra config options "im_module_file" (cache file for
1576         input method modules), and "im_module_path" - path
1577         to look for modules when generating cache file.
1578
1579         This doesn't scale.
1580
1581 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
1582
1583         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
1584         generic code from gtkthemes into a new abstraction
1585         GtkModule which has the logic for implementing
1586         a loadable module which implements a number of 
1587         GObject types.
1588
1589 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
1590
1591         * gtk/gtkeditable.[ch]: Convert GtkEditable from
1592         a class into an interface  
1593         
1594         * gtk/gtkoldeditable.[ch]: Move the old editable
1595         implementation into here, so legacy widgets can
1596         still rely on the implemenation. GtkOldEditable
1597         exports GtkEditable. Make selection handling
1598         code use new text conversion functions (and
1599         handle UTF-8 as a side-effect). Use GtkClipboard
1600         for CLIPBOARD.
1601
1602         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
1603         Adopt to match above changes.
1604
1605         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
1606         avoid GtkOldEditable implementation. Restructure
1607         to reduce number of places that modify state directly.
1608         Move to GtkBindingSet. Display the preedit string.
1609         Queue recomputation of PangoLayout and scroll position
1610         to improve effiency of doing complex changes naively.
1611         Add a menu with cut/copy/paste and input method selection.
1612
1613 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
1614
1615         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
1616         to set preedit string and attributes; display preedit string by
1617         inserting string and attributes at cursor when creating the
1618         GtkTextLineDisplay.
1619
1620         * gtk/gtktextlayout.c: Move all conversions between byte
1621         positions in PangoLayout and GtkTextIter into new functions
1622         line_display_iter_to_index/index_to_iter that properly
1623         handle the preedit string.
1624
1625         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
1626         it to return const char * (eventually will end up
1627         as GCONST char *, most likely.)
1628
1629         * gtk/gtktextview.[ch]: Handle the preedit string, call
1630         gtk_im_context_reset() as necessary, add a menu to switch
1631         input methods.
1632         
1633         * gtk/gtktextlayout.[ch]: Remove useless
1634         gtk_text_layout_get_log_attrs() function.
1635
1636 2000-11-11  Tor Lillqvist  <tml@iki.fi>
1637
1638         * gdk/gdk.def
1639         * gtk/gtk.def: Update.
1640
1641         * gdk/win32/*.c: Add last argument to g_type_register_static()
1642         calls.
1643
1644         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
1645
1646         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
1647         generated by older wheel mouse drivers. Get the correct y
1648         coordinate from WM_MOUSEWHEEL messages.
1649
1650         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
1651         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
1652         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
1653         Debugging functions.
1654
1655         * gdk/win32/gdkprivate-win32.h: Declare them.
1656
1657         * gdk/win32/gdkinput-win32.h: Add declaration for
1658         gdk_input_window_destroy().
1659
1660         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
1661
1662 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
1663
1664         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
1665         function to help handle keeping things in sync.
1666
1667 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
1668
1669         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
1670         BOXED marshallers.
1671
1672         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
1673         (gtk_list_store_class_init): use the new BOXED marshallers.
1674
1675         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
1676         new_with_values to new_with_types.
1677         (gtk_tree_store_get_column_type): add this.
1678         (gtk_tree_store_class_init): use the new BOXED marshallers.
1679
1680         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
1681         mirror some POINTER marshallers.
1682
1683 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
1684
1685         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
1686         allow more interesting iterators.  Also, made the lifecycle of
1687         iterators more explicit.
1688
1689         * gtk/gtktreemodelsort.[ch]: New model for sorting.
1690
1691         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
1692         types.
1693
1694 2000-11-09  Alexander Larsson  <alexl@redhat.com>
1695
1696         * demos/testgtk/menus.c:
1697         Changes to make the new testgtk compile after
1698         gtk_menu_append was removed.
1699
1700         * gdk/linux-fb/gdkdrawable-fb2.c
1701         (gdk_fb_get_depth, gdk_fb_get_visual,
1702         gdk_drawable_impl_fb_class_init): Implement
1703         these drawable functions. Now GtkImages work again.
1704
1705         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
1706
1707         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
1708         
1709         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
1710         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
1711         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
1712         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
1713
1714 2000-11-08  Havoc Pennington  <hp@pobox.com>
1715
1716         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
1717         visible_set args, don't know where these had gone, I thought they
1718         used to be there
1719
1720         * gtk/testtext.c: Add a menu item to apply invisibility tag;
1721         now we can test the feature and see that it's totally broken.
1722
1723 2000-11-08  Havoc Pennington  <hp@pobox.com>
1724
1725         Make DND copy pixbufs and tags when source and target share a 
1726         tag table.
1727         
1728         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
1729         in-process GTK_TEXT_BUFFER_CONTENTS target
1730         (gtk_text_view_drag_data_received): Paste from
1731         GTK_TEXT_BUFFER_CONTENTS if we receive it.
1732
1733 2000-11-08  Alexander Larsson  <alexl@redhat.com>
1734
1735         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
1736         API changes.
1737
1738         * gtk/gtkmenu.c: Add support for scrolling menus.
1739         Remove gtk_menu_append/prepend/insert, these have been moved to
1740         gtkcompat.h as #defines.
1741
1742         * gtk/gtkcompat.h.in:
1743         Add compatibility #defines for gtk_menu_append/prepend/insert
1744
1745         * gtk/gtkmenu.h: Add data needed for scrolling menus.
1746         GtkMenuPositionFunc gets an extra argument push_in.
1747         gtk_menu_append/prepend/insert removed.
1748         
1749         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
1750         positioning behaviour to fit to scrolling menus.
1751
1752         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
1753         into menuitem->submeny. That is wrong, and broke torn
1754         off submenus of torn off menus, since they were unrealized
1755         when the first menu was unrealized.
1756
1757         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
1758         gtk_menu_shell_select_item() since these need to be overridden in
1759         GtkMenu.
1760
1761         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
1762         positioning behaviour to fit to scrolling menus.
1763         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
1764         the current item so that it is prelighted when the menu pops up.
1765         This is a workaround to the fact that the menu doesn't get the
1766         initial enter event (due to grabs).
1767
1768         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
1769         s/gtk_menu_append/gtk_menu_shell_append/
1770
1771         * gtk/gtknotebook.c:
1772         s/gtk_menu_insert/gtk_menu_shell_insert/
1773
1774         * gtk/testgtk.c (create_menu, create_menus):
1775         Create the first menu with 50 items so that menu scrolling
1776         can be tested.
1777         
1778         
1779         Patch from Jonathan Blandford  <jrb@redhat.com>
1780
1781         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
1782         system to handle size requests.  First, we ask what the size of
1783         the toggle is.  Then, when allocating the size, we allocate the
1784         toggle_size first.  This way we can have multiple menu-item
1785         classes w/o needing a seperate class for each.
1786
1787         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
1788         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
1789
1790         * gtk/gtkcheckmenuitem.c
1791         (gtk_check_menu_item_toggle_size_request): New function to handle
1792         the toggle size-request.
1793
1794 2000-11-07  Havoc Pennington  <hp@redhat.com>
1795
1796         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
1797         Half-ass somewhat fix this function, so that scrolling to the
1798         insertion point works. Pango hacking is in the future to really
1799         fix it.
1800
1801         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
1802         length of data, no longer used.
1803
1804         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
1805         method contents in here, get rid of destroy method
1806         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
1807         that were backward. Remove debug spew.
1808         (cut_or_copy): Make the clipboard work with insert_range to
1809         preserve tags and pixbufs, not just the primary selection.
1810
1811 2000-11-07  Havoc Pennington  <hp@redhat.com>
1812
1813         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
1814         to gtk_text_mark_get_visible
1815
1816         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
1817         bug that was generating an invalid iterator
1818
1819         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
1820         ensure_char_offsets() in front of code placing the iter in an
1821         invalid state.
1822
1823         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
1824         make override_location arg const
1825         (paste): Replace the selection if we paste into the 
1826         current selection
1827
1828         * gtk/gtkselection.h: Remove "GtkSelectioData"
1829         (struct _GtkSelectionData): move the definition here.
1830
1831         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
1832         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
1833
1834         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
1835
1836         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
1837         (gtk_text_buffer_insert_range_interactive): implement
1838         (gtk_text_buffer_get_tags): Remove, replaced by
1839         gtk_text_iter_get_tags()
1840
1841         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
1842         limit parameter, to avoid infinite linear scan.
1843         (gtk_text_iter_backward_search): Add search limit
1844         (gtk_text_iter_forward_find_char): Add search limit
1845         (gtk_text_iter_backward_find_char): Add search limit
1846
1847 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
1848
1849         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
1850         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
1851         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
1852         gdk/linux-fb/gdkwindow-fb.c:
1853         use g_object_new() instead of g_type_create_instance() which
1854         is a private function for fundamental type implementations.
1855
1856         * gdk/linux-fb/gdkinput-ps2.c:
1857         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
1858         instead just store the current modifier state. Add a (somewhat broken)
1859         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
1860         Rename exported function gdk_input_ps2_get_mouseinfo to
1861         gdk_input_get_mouseinfo.
1862
1863         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
1864         gdk/linux-fb/gdkwindow-fb.c:
1865         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
1866         
1867
1868 2000-11-02  Havoc Pennington  <hp@redhat.com>
1869
1870         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
1871         use stock buttons. Should be 100% source compatible, appropriate
1872         filesel fields now point to dialog->vbox and dialog->action_area.
1873         On the bizarre side, dialog->action_area and filesel->action_area
1874         are not the same widget.
1875         (gtk_file_selection_init): Put some padding around the selection
1876         entry, so it isn't touching the GtkDialog separator.    
1877
1878         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
1879         use stock buttons, etc. Should also be source compatible.
1880         Set the dialog default title in _init not _new().
1881         
1882         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
1883         Use stock buttons; don't put a button box inside the existing
1884         dialog button box. Don't bother with push/pop colormap anymore.
1885
1886         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
1887         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
1888         for message dialog, and necessary for the font selection and color
1889         selection with help and apply buttons.
1890         
1891         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
1892         to the created button widget. Set GTK_CAN_DEFAULT on the button.
1893         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
1894         between buttons, put less padding around the action area.
1895         (gtk_dialog_run): Exit on unmap rather than on destroy. 
1896         This will also exit the loop if the widget is hidden.
1897         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
1898         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
1899         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
1900         special-case delete event.
1901
1902         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
1903         formatting
1904         
1905 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
1906
1907         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
1908         button to temporarily disable position recording in the
1909         "saved position" test.
1910
1911 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
1912
1913         * gtk/gtkthemes.c: added compat code that temporarily implements
1914         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
1915         going to be revamped by owen's upcoming GtkModule patches, but
1916         untill then people want gtk to build, right? ;)
1917
1918 2000-11-04  Havoc Pennington  <hp@pobox.com>
1919
1920         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
1921         list
1922
1923         * docs/Changes-2.0.txt: Add note about
1924         gtk_container_get_toplevels()
1925
1926         * gtk/gtktextview.h: formatting
1927         
1928         * gtk/gtktextview.c: don't start descriptions with "Returns",
1929         confuses gtk-doc
1930
1931 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
1932
1933         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
1934         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
1935
1936 2000-11-03  Havoc Pennington  <hp@redhat.com>
1937
1938         * gtk/gtktexttagtable.c: Docs
1939         (gtk_text_tag_table_size): return a signed int
1940
1941         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
1942         (gtk_text_tag_event): make the event_object a GObject
1943
1944         * gtk/gtktextview.c: Write API docs for all functions.
1945
1946         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
1947         for gtk_text_view_get_window_type() called on one of the private
1948         windows.
1949
1950         * gtk/gtktextview.c: Instead of accessing text_view->buffer
1951         directly, call get_buffer() which demand-creates a default
1952         buffer. So gtk_text_view_new() can be used to create a view with a
1953         default buffer in it, if you just want an empty text box users can
1954         put data in. Useful for GUI builders also.
1955
1956 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
1957
1958         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
1959         the charset encodign portion MUST be in lowercase.
1960         * gtk/gtkrc.az: added file for Azeri language
1961
1962 2000-11-03  Havoc Pennington  <hp@redhat.com>
1963
1964         Get widgets working on the btree/buffer side. Display of them 
1965         still doesn't work.
1966         
1967         * gtk/gtktextview.c: start implementing child widget stuff
1968
1969         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
1970
1971         * gtk/gtktextlayout.c: handle embedded widgets
1972
1973         * gtk/gtktextdisplay.c: handle embedded widgets
1974
1975         * gtk/gtktextchild.c: Implement all the child anchor goo
1976
1977         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
1978         function
1979
1980         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
1981         (insert_pixbuf_or_widget_segment): abstract out common portions of 
1982         creating a child anchor or a pixbuf segment.
1983         (gtk_text_btree_create_child_anchor): new function
1984         (gtk_text_btree_unregister_child_anchor): new function
1985
1986         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
1987         allocate_child signal on GtkTextLayout
1988
1989         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
1990         values
1991         (gtk_text_iter_get_child_anchor): new function
1992
1993         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
1994         default handler for the changed signal, which calls
1995         gtk_text_buffer_set_modified(), instead of just always emitting
1996         changed then calling set_modified() manually. I guess this is
1997         maybe more flexible. It seems logical.
1998
1999 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
2000
2001         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
2002         now.
2003
2004         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
2005
2006 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
2007
2008         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
2009         been marked static.
2010
2011 2000-11-02  Havoc Pennington  <hp@redhat.com>
2012
2013         * gtk/testgtk.c (create_labels): had a test backward
2014
2015         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
2016         fields, so the dest GC ends up with the correct clip origin, 
2017         etc. Fixes a bug where colored labels didn't redraw 
2018         properly.
2019
2020 2000-11-02  Alexander Larsson  <alexl@redhat.com>
2021
2022         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
2023         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
2024         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
2025         Add last argument to t_type_register_static call.
2026         
2027         * gdk/linux-fb/gdkdrawable-fb2.c:
2028         Add last argument to t_type_register_static call.
2029         export the get_image drawable virtual function.
2030
2031         * gdk/linux-fb/gdkimage-fb.c:
2032         Add last argument to t_type_register_static call.
2033         rename gtk_image_get to _gdk_fb_get_image and
2034         export it for use by gdkdrawable-fb2.
2035
2036         * gdk/linux-fb/gdkprivate-fb.h:
2037         export _gdk_fb_get_image.
2038
2039         * gdk/linux-fb/gdkselection-fb.c:
2040         Add new api call stubs.
2041
2042         * gtk/Makefile.am:
2043         Missing ( in linux-fb part.
2044
2045         * modules/linux-fb/Makefile.am:
2046         Must link with gdk_pixbuf or get unresolved symbol.
2047
2048 2000-11-01  Havoc Pennington  <hp@pobox.com>
2049
2050         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
2051         GTK_TYPE_TEXT_ITER and BOXED marshallers
2052
2053         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
2054
2055         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
2056         
2057         * gtk/gtk-boxed.defs: add GtkTextIter
2058
2059         * gtk/gtkmarshal.list: Add marshallers for text widget that 
2060         properly use OBJECT and BOXED
2061
2062 2000-11-01  Havoc Pennington  <hp@redhat.com>
2063
2064         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
2065
2066         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
2067         before returning it. 
2068         
2069 2000-11-01  Havoc Pennington  <hp@redhat.com>
2070
2071         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2072         Clip the rectangle to be rendered to the drawable, since
2073         get_from_drawable() requires a region within the drawable
2074
2075 2000-11-01  Havoc Pennington  <hp@redhat.com>
2076
2077         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
2078         from coordinates.
2079
2080 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
2081
2082         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
2083         it isn't NULL.
2084
2085 2000-11-01  Havoc Pennington  <hp@pobox.com>
2086
2087         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
2088         on a label
2089         (gtk_label_finalize): unref the attr list if any.
2090
2091         * gtk/testgtk.c (create_get_image): close test on second click
2092         (make_message_dialog): close dialog if it exists
2093
2094         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
2095
2096         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
2097         gdk-pixbuf
2098
2099         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
2100         from Pango markup format
2101         (gtk_label_set_markup_with_accel): ditto but with accelerator
2102         parsing
2103
2104         * gtk/gtkimage.c (gtk_image_expose): reformatting.
2105
2106         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
2107         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
2108         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
2109         call gdk_window_get_origin().
2110
2111         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2112         implement GDK_PIXBUF_ALPHA_FULL
2113         
2114 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
2115
2116         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
2117         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
2118         g_signal_handlers_disconnect_matched to block/unblock and disconnect
2119         multiple handlers respectively, instead of only treating the
2120         first handler found (bug reported by owen).
2121
2122 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
2123
2124         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
2125
2126         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
2127
2128         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
2129         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
2130         gtk/gtktreeviewcolumn.h: Fixed inline docs.
2131
2132         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
2133         widget.  Needs writing someday.
2134
2135         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
2136         the docs.
2137
2138 2000-10-30  Havoc Pennington  <hp@redhat.com>
2139
2140         * gtk/gtktextview.h, gtk/gtktextview.c:
2141         Rename delete_at_cursor delete_from_cursor, and 
2142         move to move_cursor.
2143
2144 2000-10-30  Havoc Pennington  <hp@redhat.com>
2145
2146         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
2147         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
2148         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
2149         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
2150         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
2151         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
2152         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
2153         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
2154         gtktexttypes.h, gtktextview.c, gtktextview.h:
2155
2156         Massive reindentation and reformatting. Arg alignment and comments
2157         still need fixing in various places.
2158
2159 2000-10-30  Havoc Pennington  <hp@redhat.com>
2160
2161         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
2162         to be named insert_at_cursor and delete_at_cursor so C++ can
2163         handle them.
2164
2165 2000-10-28  Tor Lillqvist  <tml@iki.fi>
2166
2167         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
2168         to get a double directory separator in case the home directory
2169         ends with one. This would cause trouble especially on Windows,
2170         where the path will be confused with the syntax for an an UNC
2171         (network share) path \\server\share\path.
2172         (gtk_rc_add_initial_default_files): Ditto.
2173
2174 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
2175
2176         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
2177
2178         * gtk/gtktextview.c: Use correct marshallers.
2179
2180 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
2181
2182         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
2183         use new iter stuff, and added all the appropriate signals et al.
2184
2185         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
2186         code is internal to gtk only.
2187
2188 2000-10-28  Tor Lillqvist  <tml@iki.fi>
2189
2190         * gtk/gtk.def
2191         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
2192         glib-genmarshal etc.
2193
2194 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
2195
2196         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
2197         parallel builds.
2198
2199 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
2200
2201         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
2202
2203 2000-10-27  Robert Brady  <robert@suse.co.uk>
2204
2205         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
2206         en_GB (British), ia (Interlingua).
2207
2208 2000-10-26  Havoc Pennington  <hp@redhat.com>
2209
2210         * gtk/gtktextiter.c (my_strrstr): fix constness warning
2211
2212         Fixed output of:
2213         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
2214         
2215         * gtk/gtktextsegment.c (char_segment_new): rename
2216         (_char_segment_new_from_two_strings): rename
2217         (_toggle_segment_new): rename
2218         
2219         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
2220         (make_clipboard_widget): make it static
2221         (text_get_func): static
2222         (text_clear_func): static
2223
2224         * gtk/gtkcolorsel.c (adjustment_changed): make this function
2225         static
2226         (hex_changed): make it static
2227         (hsv_changed): make it static
2228         (opacity_entry_changed): make it static
2229
2230         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
2231         (toggle_segment_check_func): rename with _gtk
2232
2233         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
2234         (_widget_segment_new): rename
2235         (_widget_segment_add): rename
2236         (_widget_segment_remove): rename
2237         (_widget_segment_ref): rename
2238         (_widget_segment_unref): rename
2239
2240         * gtk/gtktextmark.c (_mark_segment_new): Rename
2241         _gtk_mark_segment_new   
2242
2243 2000-10-26  Havoc Pennington  <hp@redhat.com>
2244
2245         * gtk/gtkmarshal.list: add new marshallers used by the text widget
2246         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2247         types
2248
2249         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
2250         marshaller types
2251
2252         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
2253         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
2254         license on these files.
2255
2256         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
2257         work.
2258
2259         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
2260         runtime random number different for each tree, instead of 
2261         a constant I made up.
2262
2263 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
2264
2265         * gtk/Makefile.am: buncha cleanups, kludged build sources
2266         dependencies with a Makefile: oldest-source-stamp dependancy
2267         for the moment. automake is really fighting us here, with
2268         intentionally not allowing user-defined rules or dependancies
2269         prior to it's -include $(DEP_FILES) statement. sucks rocks!
2270
2271         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
2272         to public headers. tehy have a comment stating that they are
2273         "semi-public" aren't included by gtk.h and if enums popup there,
2274         they can be /*< skip >*/-ed.
2275
2276         * gtk/gtktextlayout.h: 
2277         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
2278         added LGPL... <SIGH>
2279
2280 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
2281
2282         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
2283         GtkTreeIter.  Added iterators everywhere.
2284
2285         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
2286
2287         * gtk/gtktreeviewselection.c: Changed to use the iterators.
2288
2289         * gtk/gtktreestore.c: Changed to use the iterators.
2290
2291         * gtk/gtkliststore.c: Commented out the code.  Will convert to
2292         iterators tomorrow.
2293
2294         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
2295         iterators tomorrow.
2296
2297         * gtk/treestoretest.c: Changed to use iterators.
2298
2299         * demos/testgtk/main.c: Moved to use the new iterator system.
2300
2301 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
2302
2303         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
2304         localization misbehaviour.
2305
2306         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
2307         a useless type without copy/free.
2308
2309         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
2310         of GTK_TYPE_CTREE_NODE.
2311
2312 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
2313
2314         * gtk/gtksignal.c:
2315         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
2316         applicable.
2317
2318         * gtk/gtk-boxed.defs (GtkSelectionData): specify
2319         gtk_selection_data_copy and gtk_selection_data_free
2320         do GtkSelectionData work as params in signals.
2321
2322 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
2323
2324         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
2325         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
2326         couldn't they at least give it a non-standard name?
2327         
2328         * gtk/gtktextlayout.c: arg! yet another implementation of
2329         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
2330
2331         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
2332         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
2333         home. now i know this _is_ a conspiracy.
2334
2335         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
2336         ::state-changed.
2337
2338         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
2339         (gtk_accel_group_create_add): marshaller signature fixups.
2340
2341         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
2342         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
2343
2344         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
2345         anymore.
2346
2347 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
2348
2349         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
2350         due to the signal system changes, it wouldn't build currently. to
2351         be fixed soon.
2352
2353         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
2354
2355         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
2356         so it needs gtk_marshal_VOID__ENUM() instead of
2357         gtk_marshal_NONE__UINT().
2358
2359         * gdk/gdk*.c: adapted type registration functions.
2360
2361         * gtk/gtkbindings.c:
2362         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
2363         gone.
2364
2365         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
2366
2367         * gtk/gtkobject.c:
2368         (gtk_object_destroy):
2369         (gtk_object_shutdown): fixed recursion guards. basically we have to
2370         catch the case where any of GObject.shutdown() or gtk_object_destroy()
2371         is called during ::destroy, and avoid recursion there.
2372
2373         * gtk/gtktypeutils.c:
2374         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
2375         boxed_copy/boxed_free. this needs a more general solution based on a
2376         publically installed code-generator utility.
2377
2378         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
2379         glib's gobject has support for that now.
2380         define GtkSignalMarshaller in terms of GSignalCMarshaller.
2381
2382 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
2383
2384         * gtk/gtksignal.[hc]:
2385         * gtk/gtkmarshal.[hc]:
2386         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
2387         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
2388         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
2389         care of that.
2390
2391         * *.c: marshaller name fixups.
2392
2393         * gtk/gtkmarshal.list: added a comment briefing the format.
2394
2395 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
2396
2397         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
2398         compatibility macros here now. more specifically, most of
2399         the API is preserved (yes, _most_, nonwithstanding the
2400         following exceptions listed, the API is stil lHUGE ;)
2401         things that got removed completely:
2402         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
2403         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
2404         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
2405         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
2406         gtk_signal_remove_emission_hook().
2407         non-functional functions variants:
2408         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
2409         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
2410         not supported anymore.
2411         (gtk_signal_compat_matched): new internal function to aid
2412         implementation of the compatibility macros, it  provides
2413         functionality to block/unblock/disconnect handlers based
2414         on func/data.
2415
2416         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
2417
2418         * *.c: adaptions to new type registration API signatures.
2419
2420 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
2421
2422         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
2423
2424 2000-10-25  Robert Brady  <robert@suse.co.uk>
2425
2426         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
2427         gdk_property_delete): If window == NULL, assume the root window.
2428         (restoring the behaviour that was in 1.2).
2429         
2430         * gtk/testtext.c (save_buffer): Allow creation of new files when
2431         saving.
2432
2433         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
2434         calls to read().
2435
2436 2000-10-25  Tor Lillqvist  <tml@iki.fi>
2437
2438         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
2439
2440         * gdk/win32/gdkdrawable-win32.c
2441         * gdk/win32/gdkimage-win32.c
2442         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
2443         X11 backend.
2444
2445         * gdk/win32/gdkcc-win32.c
2446         * gdk/win32/gdkcolor-win32.c
2447         * gdk/win32/gdkfont-win32.c
2448         * gdk/win32/gdkinput-win32.c
2449         * gdk/win32/gdkmain-win32.c
2450         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
2451
2452 2000-10-24  Havoc Pennington  <hp@redhat.com>
2453
2454         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
2455         it a static function
2456
2457         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
2458         redraw text when a tag is applied to it.
2459
2460         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
2461         (gtk_text_tag_affects_nonsize_appearance): private functions to
2462         see if a tag requires various kinds of redraw/layout to be queued
2463         up.
2464
2465         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
2466
2467         * gtk/testtext.c (fill_example_buffer): Put the cursor 
2468         at the start of the buffer, so search works by default
2469
2470         * gtk/gtktextiter.c (lines_match): init match_start always
2471
2472         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
2473         function, get iter at a line + a byte index
2474
2475         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
2476         to set byte position within a line
2477         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
2478
2479 2000-10-23  Havoc Pennington  <hp@redhat.com>
2480
2481         * gtk/testtext.c: Re-enable the "find" dialog
2482
2483         * gtk/testgtk.c: Add test for gdk_drawable_get_image
2484         
2485         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
2486         the arguments to gdk_draw_drawable were in the wrong order
2487         (gdk_window_paint_init_bg): This function was ignoring the
2488         init_region, instead of clipping to it, so the entire backing
2489         pixmap was cleared on every begin_paint()
2490         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
2491         was in here again, the loop kept using the same GtkWindowPaint
2492         over and over.
2493         (gdk_window_begin_paint_region): Fix a bug where we had two
2494         x_offset instead of x_offset and y_offset
2495
2496         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
2497         before we get the image.
2498         (gdk_draw_drawable): get the composite before we draw the drawable.
2499         (gdk_drawable_real_get_composite_drawable): default
2500         get_composite_drawable implementation that returns the drawable 
2501         itself
2502
2503         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
2504         get_composite_drawable virtual function
2505
2506         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
2507         list-walking bug
2508
2509         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
2510         make this work if the source drawable is a GdkDrawableImplX11
2511         instead of a public drawable type. This is really broken; the
2512         problem is that GdkDrawable needs a virtual method get_xid(), but
2513         of course that doesn't work in practice. Enter RTTI.
2514
2515         Also, improve mismatched depth message.
2516
2517         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
2518         GdkPixmap
2519
2520         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
2521         install _gdk_x11_get_image as our implementation of get_image
2522         
2523         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
2524         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
2525
2526         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
2527         gdk_drawable_get_image
2528
2529         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
2530
2531         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
2532         get_image
2533
2534         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
2535         trailing semicolon after for loop
2536
2537 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
2540         where font_desc for widget's context lagged widget's font_desc by
2541         one step.
2542
2543 2000-10-22  Tor Lillqvist  <tml@iki.fi>
2544
2545         * gdk/win32/gdkgc-win32.c
2546         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
2547
2548         * gtk/makefile.mingw.in
2549         * gtk/gtk.def: Updates.
2550
2551         * gtk/testgtk.c: sleep() is called _sleep in MS's C
2552         library.
2553
2554         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
2555
2556         * gtk/makefile.msc: Remove
2557
2558         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
2559
2560         * gtk/Makefile.am: Add it.
2561
2562         * configure.in: Generate it.
2563
2564         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
2565         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
2566         something even if not implemented, to satisfy picky MSVC.
2567
2568         Patches by Hans Breuer:
2569         
2570         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
2571         SetBkMode() and SetTextAlign() before calling
2572         pango_win32_render().
2573
2574         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
2575         Set hcliprgn to NULL after destroying it.
2576         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
2577
2578         * gdk/win32/gdkgeometry-win32.c
2579         (_gdk_windowing_window_queue_antiexpose): More effective
2580         implementation.
2581
2582         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
2583         depth as default, not the visual's.
2584
2585         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
2586         against empty title.
2587
2588         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
2589         IMAGE_PRIVATE_DATA.
2590
2591         * gdk/win32/gdkimage-win32.c: Use it.
2592
2593 2000-10-22  Robert Brady  <robert@suse.co.uk>
2594
2595         * configure.in: Check for bind_textdomain_codeset
2596
2597         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
2598         present, make use of it.
2599
2600         Add a translatable string "default:LTR" which, if translated
2601         to "default:RTL", will cause the default direction to be
2602         Right-to-Left.
2603
2604         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
2605         direction if marked as flippable.
2606
2607         * gtk/gtkhscale.c: Mark widget as flippable.
2608         
2609 2000-10-04  Havoc Pennington  <hp@redhat.com>
2610
2611         * gtk/testgtk.c (create_buttons): create some stock buttons
2612         with the default accel group
2613         (create_image): test some new GtkImage features
2614         (make_message_dialog): test GtkMessageDialog
2615         (create_modal_window): fix someone's bizzarro indentation
2616
2617         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
2618         GTK_WIN_POS_CENTER_ON_PARENT. 
2619         Add "destroy with parent" setting, which means the window goes
2620         away with its transient parent.
2621         (gtk_window_get_default_accel_group): get the default accel group
2622         for the window.
2623         (gtk_window_set_destroy_with_parent): set/unset destroy with
2624         parent flag
2625         (gtk_window_read_rcfiles): invalidate icon set caches
2626         after reloading rcfiles 
2627
2628         * gtk/gtkenums.h (GtkWindowPosition): add
2629         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
2630         on its parent window when the dialog is mapped for the first time.
2631
2632         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
2633         a simple message dialog class
2634         
2635         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
2636         handler to emit response signal, and maybe later it would
2637         honor a hide_on_delete flag - though that isn't there yet.
2638         Set border width on the vbox to 2, so we get some padding.      
2639         Use a button box for the action area.
2640         (gtk_dialog_key_press): synthesize a delete event if Esc
2641         is pressed and the GtkWidget key press handler didn't 
2642         handle the escape key.
2643         (gtk_dialog_new_with_buttons): new function creates a dialog
2644         with some default buttons in it.
2645         (gtk_dialog_add_action_widget): add an activatable widget
2646         as a button in the dialog - you can also add a non-activatable
2647         widget by accessing the action area directly.
2648         (gtk_dialog_add_button): add a simple button - stock ID or 
2649         label - to the action area
2650         (gtk_dialog_response): emit response signal
2651         (gtk_dialog_run): block waiting for the dialog, return 
2652         the response. Override normal delete_event behavior, so that 
2653         delete_event does nothing inside gtk_dialog_run().
2654
2655         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
2656         emitted when an action widget is clicked or the dialog gets
2657         delete_event
2658
2659         * gtk/gtk.h: add gtkmessagedialog.h
2660
2661         * gtk/Makefile.am: add gtkmessagedialog.[hc]
2662
2663 2000-10-18  Havoc Pennington  <hp@redhat.com>
2664
2665         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
2666         where any number of empty lines would get skipped
2667
2668         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
2669         edge.
2670
2671         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
2672         warning about invalid iterators (explain more thoroughly)
2673         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
2674
2675         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
2676         big
2677
2678         * demos/*.c: Add error handling
2679
2680         * gtk/gtktextbuffer.c: don't modify const iterators
2681
2682         * gtk/gdk-pixbuf-loader.c: Add full error handling here
2683
2684         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
2685         on file load
2686
2687         * gtk/gtkiconfactory.c: Update to reflect addition of error
2688         handling to gdk-pixbuf loaders
2689
2690 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
2691
2692         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
2693         move to new modularized testgtk.
2694
2695 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
2696
2697         * gtk/gtktreeview.c: Draw the arrows correctly.
2698
2699         * gtk/gtktreemodel.c: Added user docs.
2700
2701         * gtk/gtk.h: remove gtktreedatalist.h.
2702
2703         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
2704         parent when generating my type.
2705
2706         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
2707         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
2708
2709 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
2710
2711         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
2712         GtkTreeModel from object to interface.
2713
2714 2000-10-16  Havoc Pennington  <hp@redhat.com>
2715
2716         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
2717         compilation
2718
2719 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
2720
2721         * gtk/gtktreeselection.c: Add API documentation to all public
2722         functions.
2723
2724         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
2725         functions.
2726
2727 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
2728
2729         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
2730         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
2731         docs to all public functions.
2732
2733         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
2734         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
2735         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
2736         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
2737         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
2738         issue.
2739
2740 2000-10-14  Robert Brady  <robert@suse.co.uk>
2741
2742         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
2743
2744 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
2745
2746         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
2747         values other then G_TYPE_STRING.
2748         * gtk/gtktreeselection.c: Minor commenting updates.
2749         * gtk/gtktreeview.c: Format updates.
2750
2751 2000-10-09  Tor Lillqvist  <tml@iki.fi>
2752
2753         * README.win32: Update.
2754
2755         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
2756         lines that had been deleted by mistake (?).
2757
2758         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
2759         also the case fg==white and bg==black (but still not randomly
2760         coloured cursors). Thanks to Wolfgang Sourdeau.
2761
2762         * gdk/win32/*.c: Silence gcc -Wall.
2763
2764         * gtk/gtk.def: Add missing entry points.
2765
2766         Fixes by Hans Breuer:
2767
2768         * gdk/makefile.msc
2769         * gdk/win32/makefile.msc: Update.
2770
2771         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
2772         some MSVC thing, presumably), cause breakpoint on failures. Add
2773         GDK_NOR case. Call g_log_set_always_fatal.
2774
2775         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
2776         should be pased by reference.
2777         
2778         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
2779         
2780         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
2781
2782         * gdk/win32/gdkevents-win32.c
2783         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
2784
2785         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
2786         implementation object.
2787
2788         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
2789         not just windows.
2790         
2791         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
2792         Use the wrapper object.
2793         
2794 2000-10-06  Havoc Pennington  <hp@redhat.com>
2795
2796         * Makefile.am (SRC_SUBDIRS): contrib subdir
2797
2798         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
2799         so it can be used in Xlib version
2800
2801         * demos/testpixbuf.c (update_timeout): error checking from 1.0
2802         tree
2803
2804         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
2805         change from 1.0 tree that returns first frame of animation
2806         if the loaded file is an animation.
2807
2808         * contrib: add new directory to hold stuff that comes with GTK+
2809         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
2810         
2811         * configure.in: add contrib/*
2812
2813 2000-10-05  Havoc Pennington  <hp@redhat.com>
2814
2815         * demos/testpixbuf-save.c: add pixbuf save test
2816
2817         * demos/Makefile.am: add testpixbuf-save.c
2818
2819 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
2820
2821         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
2822         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
2823         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
2824         * gtk/gtktreeselection.[ch]: Replaced
2825         "node_selected"/"node_unselected" signal with "selection_changed"
2826         signal.
2827
2828 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
2829
2830         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
2831         tree widget.
2832
2833 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
2834
2835         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
2836         drawing.
2837
2838 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
2839
2840         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
2841         Move list pointer forwards before removing item from
2842         list. (Crash reported by Salmaso Raffaele)
2843
2844         * gdk/gdkwindow.h: Remove spurious trailing ,
2845
2846         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
2847         dependencies on uninstalled libraries, sorry folks.
2848
2849 2000-10-04  Havoc Pennington  <hp@redhat.com>
2850
2851         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2852         gtk/gtkiconfactory.c: Fix copyrights    
2853
2854         * demos/testpixbuf.c: add inline pixbuf test
2855         
2856 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
2857
2858         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
2859         Add gdk_window_iconify.
2860
2861         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
2862         (gdk_window_set_geometry_hints): Add win_gravity
2863         to geometry structure.
2864
2865         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
2866         Implement _NET_WM_PING.
2867
2868         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
2869         Set _NET_WM_PID on the client leader.
2870
2871         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
2872         Handle UTF-8 better.
2873
2874         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
2875         UTF-8 better, set _NET_WM_NAME as well. Only set
2876         icon name if it hasn't previously been explicitely 
2877         set.
2878
2879 2000-10-03  Havoc Pennington  <hp@redhat.com>
2880
2881         * gtk/testtextbuffer.c: clean up trailing whitespace,
2882         add extensive tests for tag toggle iteration.
2883         
2884         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
2885         distance
2886
2887         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
2888         optimize case where the tag root is on level 1
2889         (gtk_text_line_previous_could_contain_tag): attempt to implement
2890         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
2891         functionality
2892
2893         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
2894         Implement this, though not very efficiently.
2895
2896         * gtk/gtktextiterprivate.h: reformat
2897
2898         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
2899         iterator
2900
2901         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
2902         this to properly revalidate the iterators.
2903
2904         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
2905         properly at the end of the line (and therefore on empty lines)
2906
2907         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
2908         maybe we should return a value...
2909
2910 2000-10-03  Tor Lillqvist  <tml@iki.fi>
2911
2912         * config.h.win32: Guard definition of alloca(). glib.h now handles
2913         that.
2914
2915         * gdk/gdk.def
2916         * gtk/gtk.def: Add new entry points.
2917
2918         Changes just to make GTK+ build without errors on Win32. No hope
2919         of it working in its current state, though...:
2920         
2921         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
2922         some functions from the X11 backend, just to make GTK+ build.
2923
2924         * gdk/makefile.mingw.in
2925         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
2926         number. Add new object files.
2927
2928         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
2929         GetMessageTime to get timestamp (where on X11 uses
2930         gdk_x11_get_server_time()).
2931
2932 2000-10-02  Havoc Pennington  <hp@pobox.com>
2933
2934         * gtk/gtktextview.c: text_window_* weren't static and should have
2935         been.
2936         Start work on child widgets; not yet complete, syncing to 
2937         office computer.
2938
2939         * gtk/gtktextchild.h: change this to contain a public interface,
2940         starting work on child interfaces.
2941         * gtk/gtktextchildprivate.h: move private interfaces here
2942
2943         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
2944
2945         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
2946         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
2947         gtk/gtktextmark.c: copyright notices
2948
2949         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
2950         internal functions      
2951
2952         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
2953         internal function
2954
2955         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2956         Reformatting    
2957
2958 2000-09-30  Havoc Pennington  <hp@pobox.com>
2959
2960         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
2961         NULL start/end pointers
2962
2963         * gtk/gtktextbuffer.c: Write some docs
2964         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
2965         NULL, so you can just check whether there's a selection.        
2966
2967         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
2968         cleanup_line or segments_changed ourselves, it gets done 
2969         in unlink_segment
2970
2971         * gtk/gtktextmark.h:
2972         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
2973         
2974         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
2975
2976         * gtk/gtktextmark.c: delete some more old Tk cruft
2977
2978         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
2979         mark before removing it, so we can emit MARK_DELETED with a valid
2980         pointer.
2981         (gtk_text_buffer_mark_set): hold ref across signal emission
2982
2983         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
2984         whining about attempts to delete special marks
2985
2986         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
2987         underscore, since it's internal.
2988
2989         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
2990         now implemented in terms of iterators in gtktextiter.h
2991
2992         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
2993         New function, destructively sets contents of buffer. Also 
2994         a convenient way to clear the buffer by setting text to ""
2995
2996         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
2997         multiline string literal
2998
2999         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
3000         text changes.
3001
3002         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
3003         is not dereferenceable
3004         (gtk_text_iter_forward_lines): fix return value
3005
3006 2000-09-29  Havoc Pennington  <hp@redhat.com>
3007
3008         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
3009
3010         * gtk/gtktextview.c: Implement drag thresholding; change functions 
3011         that set border window size to have nicer name
3012         (gtk_text_view_mark_set_handler):  Fix this to have the 
3013         right signature.
3014
3015         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
3016
3017         * gtk/testtext.c: Update with API changes, put line numbers on 
3018         both sides.
3019         
3020         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
3021         with this
3022
3023         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
3024         pixbuf; delete a big block of #if 0 Tk code
3025
3026         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
3027         insert_pixmap with insert_pixbuf
3028
3029 2000-09-29  Martin Baulig  <baulig@suse.de>
3030
3031         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
3032         confusion with the GdkPixbuf of the GNOME 1.x platform.
3033
3034 2000-09-29  Havoc Pennington  <hp@pobox.com>
3035
3036         * gtk/gtktextview.c: Implement the side windows.
3037
3038         * gtk/testtext.c: Implement simple line numbering in the 
3039         left side window; seems to make scrolling sloooow. Oops.
3040         Also, cursor blink is for some reason causing redraws
3041         of the line numbers. Should investigate...
3042
3043 2000-09-28  Havoc Pennington  <hp@redhat.com>
3044
3045         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
3046         scrolling child windows, and draw focus rectangle properly.
3047         
3048         (gtk_text_view_buffer_to_window_coords):
3049         Coordinate transformation to deal with all these freaking windows
3050         and offsets
3051         (gtk_text_view_window_to_buffer_coords): transform the other way
3052
3053         * gtk/testtext.c (create_buffer): Update to match Pango API change
3054
3055         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
3056         anonymous tags
3057         (foreach_unref): don't emit remove signal from finalize, just
3058         set tag's parent to NULL
3059
3060 2000-09-26  Havoc Pennington  <hp@redhat.com>
3061
3062         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
3063         Fix some warnings       
3064
3065 2000-09-26  Havoc Pennington  <hp@redhat.com>
3066
3067         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
3068         headers into the private header list
3069
3070         * Makefile.am (pkgconfig_DATA): install pkg-config files
3071
3072         * configure.in: add pkg-config files
3073
3074         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
3075
3076         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
3077         outstanding icon caches on theme change.
3078
3079         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
3080         important types:
3081
3082         (GtkIconSource): Specification for creating a pixbuf 
3083         appropriate for a direction/state/size triplet from 
3084         a source pixbuf or filename
3085
3086         (GtkIconSet): List of GtkIconSource objects that are used to
3087         create the "same" icon (e.g. an OK button icon), and cache for
3088         rendered icons
3089
3090         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
3091         up the icon set for a given stock ID.  GTK maintains a stack of
3092         GtkIconFactory to search, and applications or libraries can add
3093         additional icon factories on top of the stack
3094         
3095         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
3096         the set of GtkIconSource specified for a given stock ID into 
3097         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
3098         RcStyle, under the specified stock ID.
3099
3100         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
3101         render_icon used to derive a GdkPixbuf from a GtkIconSource.
3102         This allows people to theme how prelight, insensitive, etc. are
3103         done.
3104
3105         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
3106         icon factories for a style, and return the resulting 
3107         icon set if any.
3108
3109         (gtk_style_render_icon): Render an icon using the render_icon 
3110         method in the GtkStyleClass.
3111
3112         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
3113         Use the style for a given widget to look up a stock ID, get the
3114         icon set, and render an icon using the render_icon method 
3115         of the style
3116
3117         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
3118         (contains information about a stock item), the built-in stock item
3119         IDs, and functions to add/lookup stock items.
3120
3121         * gtk/stock-icons/*: Stock icons that come with GTK
3122
3123         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
3124         a button based on a GtkStockItem
3125         (gtk_button_new_accel): Takes a uline string and accel group, and
3126         installs the accelerator.
3127
3128         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
3129         image-display widget.
3130
3131 2000-09-25  Havoc Pennington  <hp@redhat.com>
3132
3133         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
3134
3135         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
3136         Fix a bug when removing node data, we didn't properly 
3137         re-splice the linked list after removing the data.
3138
3139         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
3140         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
3141
3142         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
3143
3144         * gtk/gtktextlayout.c (set_para_values): Set tab array 
3145         for the layout from the GtkTextTag.
3146
3147         * gtk/gtktexttypes.h: delete tab and search cruft, 
3148         remove g_convert() in favor of GLib version
3149
3150         * gtk/gtktexttypes.c: remove tab implementation from here,
3151         move to Pango
3152
3153         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
3154         tab stuff using new PangoTabArray from Pango
3155
3156         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
3157         unused border_width stuff
3158
3159 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
3160
3161         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
3162         glib) and now useless utf_to_latin1() latin1_to_utf()
3163
3164         * gtk/gtktextview.[ch]: Change ::move_insert and
3165         ::delete_text action signals to ::move and ::delete;
3166         create the signals with the right enumeration type,
3167         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
3168         C-v bindings, change Home, End to move to beginning/end
3169         of line, Add C-Home C-End to move to beginning/end
3170         of buffer. Change ::cut_text to ::cut_clipboard, etc;
3171         combine ::scroll_text into ::move; use new GtkSelectionData
3172         functions to simplify DND text handling.
3173         
3174         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
3175         deletion enumerations here, rename enumeration values to 
3176         be consistently plural.
3177
3178         * gtk/gtktextbuffer.c: Use new clipboard interfaces
3179         for cut/copy/paste and primary selection.
3180
3181         * gtk/gtktextbuffer.[ch]: Remove excess time and
3182         'interactive' arguments from cut/copy/paste;
3183         rename cut to cut_clipboard, etc; remove
3184         gtk_text_buffer_get_clipboard_contents().
3185
3186         * gtk/gtktextlayout.[ch]: Add 
3187         gtk_text_layout_move_iter_to_line_end() to move the iter to 
3188         line ends.
3189
3190         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
3191         Functions to set or get a UTF-8 string on the selection
3192         data.
3193
3194         * gtk/gtkclipboard.[ch]: New, simplified selection handling
3195         interfaces.
3196
3197         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
3198         created widgets - one of these is useless if we don't.
3199
3200         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
3201         a public function clear all targets registered for the
3202         widget.
3203
3204         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
3205         Never call gtk_widget_realize() - that was just asking
3206         for bizarre side-effects.
3207
3208         * gtk/gtkselection.c (gtk_selection_owner_set): Call
3209         gdk_selection_owner_set even if the widget is the
3210         same so that we reliably update the timestamp on
3211         the server.
3212
3213         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
3214         gdk_x11_get_server_time() function.
3215         
3216         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
3217         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
3218         Add some tricky filtering on serial numbers for
3219         selection clear events to fix up long-standard
3220         race condition FIXME's in gtkselection.c.
3221
3222         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
3223         routines to convert from utf8 to compound text or
3224         STRING and from a text property to UTF-8.
3225
3226         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
3227         a convenience function gdk_get_current_event_time().
3228
3229         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
3230         and free selection_data->data properly
3231
3232 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
3233
3234         * gtk/gtkthemes.c: Remove some unecessary includes.
3235
3236 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
3237
3238         * gtk/gtktextdisplay.c
3239         * gtk/gtktextlayout.c
3240         * gtk/gtktexttag.c
3241         * gtk/gtktexttag.h
3242         * gtk/testtext.c: Change the overstrike property to strikethrough,
3243         to closer match pango.
3244
3245 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
3246
3247         * gtk/gtktextview.c: Fix up visibility so that focus,
3248         cursor_visible and blink interact properly.  Reenable cursor blink
3249         which had been roughly disabled. Make blink and focus
3250         properly per-view.
3251
3252         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
3253         Add a flag for whether to display insertion cursor and
3254         a function to set the flag.
3255
3256         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
3257         get_line_y() to get_line_yrange(), to be a bit more generally
3258         useful.
3259
3260 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
3261
3262         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
3263           do stop_navigating_submenu, to clear last timeout properly.
3264           Also in gtk_menu_motion_notify move ignore_enter above
3265           the conditional to make it always happen as suggested by Owen
3266
3267 2000-09-07  Tor Lillqvist  <tml@iki.fi>
3268
3269         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
3270
3271         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
3272         w32api headers.
3273
3274         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
3275         declarations.
3276
3277         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
3278         (gdk_win32_get_colormap): A line had been deleted by mistake.
3279
3280         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
3281         (gdk_event_translate): Handle more virtual keycodes to be able to
3282         generate GDK events for Control-comma, Control-period, etc.
3283
3284         * gtk/gtk.def: Add some missing entry points.
3285
3286 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
3287
3288         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
3289         Doc comment fixing. (Mostly non-matching parameter names.)
3290
3291         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
3292         comments a little to avoid looking like a doc comment.
3293
3294         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
3295         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
3296         conversions be changed to GError?)
3297
3298         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
3299         Move private #defines into .c file.
3300
3301         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
3302         order of argument addition, remove duplicates.
3303
3304         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
3305         parent class is FrameClass, not BinClass.
3306
3307         * gtk/gtk.h: Add gtkinvisible, which was missing.
3308         (It's occasionalyl useful for client apps, if seldom.)
3309
3310         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
3311         #define.
3312
3313 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
3314
3315         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
3316         coordinates when creating window, instead of GDK-space
3317         coordinates. (Avoid BadValue on too large windows.)
3318
3319 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3320
3321         * configure.in (use_mmx_asm): Remove conftest* after use along the
3322         lines of AC_TRY_COMPILE.        
3323         
3324         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
3325         of g_dirname, which is deprecated.
3326         (gtk_rc_parse_any): Removed calls to
3327         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
3328
3329         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
3330         Removed calls to g_hash_table_{freeze,thaw}, as they are
3331         deprecated now.
3332
3333         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
3334         instead of g_basename.
3335         
3336 2000-09-04 Elliot Lee <sopwith@redhat.com>
3337         
3338         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
3339         ANSI warning.
3340
3341 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
3342
3343         * gtk/gtkwidget.h:  Add some documenting comments about 
3344           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
3345           just as owen said on irc.
3346
3347         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
3348           set HAS_DEFAULT.  Only set it if there isn't another window
3349           holding it (a focus window which RECEIVES_DEFAULT) and only unset
3350           it if the widget is not the focused window with RECEIVES_DEFAULT.
3351           This fixes weird double default bugs in dialogs which has things
3352           call gtk_window_set_default at times.
3353
3354 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
3355
3356         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
3357         Nils Barth and David Santiago to improve submenu
3358         navigation. The patch does this by creating a triangular
3359         region from the point where the pointer leaves the
3360         menu to the submenu.  While the pointer is in
3361         that region and a timeout has not expired, events 
3362         that would cause the active submenu to change are
3363         ignored.
3364
3365 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
3366
3367         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
3368         moving a toplevel window immediately after sizing it would
3369         result in it being sized back to the old size since 
3370         impl->width, impl->height aren't updated until we hear
3371         back from the server. There is still a (longstanding) bug
3372         here that gdk_window_get_size() will give the wrong size
3373         until we do hear back.
3374
3375 2000-08-31  Havoc Pennington  <hp@redhat.com>
3376
3377         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
3378         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
3379         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
3380         Rename GtkTextStyleValues to GtkTextAttributes
3381
3382 2000-08-31  Havoc Pennington  <hp@pobox.com>
3383
3384         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
3385         for rapid testing whether an iterator is the end iterator
3386         (gtk_text_btree_new): init end line cache
3387         (gtk_text_line_is_last): use fast cached line to 
3388         see if we're the last line.
3389         (get_last_line): use cached line here too, should 
3390         speed up some random unrelated code.
3391         
3392 2000-08-30  Havoc Pennington  <hp@pobox.com>
3393
3394         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
3395         signals.
3396
3397         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
3398         delete_text signals. This allows the signals to be used for
3399         implementing undo.
3400
3401         * gtk/gtktextbuffer.c: Change signal handler signatures; 
3402         provide "interactive" argument when emitting insert_text or
3403         delete_text signal.
3404         
3405 2000-08-30  Havoc Pennington  <hp@pobox.com>
3406
3407         * gtk/gtktextbuffer.c: Docs
3408
3409 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
3410
3411         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
3412         from switch statements, since Tor removed the enumeration
3413         value.
3414         
3415         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
3416         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
3417
3418 2000-08-29 Elliot Lee <sopwith@redhat.com>
3419         * */*.h: Use G_GNUC_CONST.
3420
3421 2000-08-27  Havoc Pennington  <hp@pobox.com>
3422
3423         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
3424         minor indentation fixes, inserted some FIXME about stuff I
3425         realized was broken while documenting it.
3426         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
3427         GTK convention  
3428
3429 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
3430
3431         * gtk/testgtk.c (create_styles): Fix double free of
3432         font desc.
3433
3434 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
3435
3436         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
3437         
3438         * gtk/testgtk.c (create_styles): Add a test for modifying
3439         the style through gtk_widget_modify_*.
3440
3441         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
3442         a function to get the current modifier style.
3443
3444         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
3445         of the passed in GtkRcStyle instead of ref'ing it.
3446
3447         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
3448
3449 2000-08-20  Tor Lillqvist  <tml@iki.fi>
3450
3451         * gdk/gdkimage.h
3452         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
3453         shared memory image+pixmap GdkImage type, or
3454         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
3455         I am dropping that.
3456
3457         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
3458         actually call gtk_init_abi_check(), passing also
3459         sizeof(GtkWindow). Ditto for gtk_init_check(). 
3460
3461         * gtk/gtk.def
3462         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
3463         New functions, used to check that the GTK+-using code has been
3464         compiled using the correct compiler and switches. In particular,
3465         with gcc one has to use the -fnative-struct switch as GTK+ is
3466         compiled with that.
3467
3468 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
3469
3470         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
3471         ->prev fields when merging lists. (Found simultaneously
3472         by Pawel Salek and Jakub Jelinek)
3473
3474 2000-08-12  Tor Lillqvist  <tml@iki.fi>
3475
3476         * gdk/gdk.def
3477         * gtk/gtk.def: Add missing entries.
3478
3479         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
3480         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
3481
3482         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
3483         function. Dummy implementation at this point.
3484
3485         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
3486         rules. Undefine GTK_COMPILATION when compiling the test programs.
3487         
3488         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
3489
3490 2000-08-11  Tor Lillqvist  <tml@iki.fi>
3491
3492         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
3493         to convert back and forth from UTF-8 and the "system" (or "current
3494         locale") charset when necessary. Indentation/spacing cleanup.
3495
3496 2000-08-10  Havoc Pennington  <hp@redhat.com>
3497
3498         * Makefile.am (snapshot): Change the format of the snapshot
3499         version to match glib
3500
3501         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
3502         from EXTRA_DIST since it doesn't seem to exist
3503
3504 2000-08-10  Tor Lillqvist  <tml@iki.fi>
3505
3506         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
3507         version of the directory name (not the UTF-8 one) when building
3508         the path name to stat().
3509
3510 2000-08-03  Elliot Lee  <sopwith@redhat.com>
3511
3512         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
3513         PANGO_ATTR_SHAPE set.
3514
3515 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
3516
3517         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
3518         Peter Osterlund to simplify the code while keeping the
3519         functionality the same.
3520
3521 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
3522
3523         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
3524         is_viewable() test further inside the function, since removing the 
3525         window from the redraw list without clearing ->update_area
3526         was also very broken.
3527
3528 2000-08-02  Tor Lillqvist  <tml@iki.fi>
3529
3530         * configure.in: Check for <unistd.h>.
3531
3532 2000-08-01  Martin Baulig  <baulig@suse.de>
3533
3534         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
3535         to display the message that this is a development version of GTK+.
3536
3537 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
3538
3539         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
3540         was depending on widget->allocation instead of the width of text_area,
3541         which was incorrect for subclasses like GtkSpinButton.
3542
3543         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
3544         with width == 1 tests that should be width == -1.
3545
3546 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
3547
3548         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
3549         (broken, Elliot, every single window blank on X) custom code with call
3550         to gdk_window_is_viewable() which a) prevents code duplicate and
3551         b) works. 
3552
3553 2000-07-31  Elliot Lee  <sopwith@redhat.com>
3554
3555         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
3556         to get the GDK_PARENT_ROOT() macro to work.
3557         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
3558         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
3559         of, windows that aren't shown.
3560         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
3561         pointer grab stuff.
3562
3563 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
3564
3565         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
3566           s/gtk_main_iteration/g_main_iteration/
3567
3568           Did this already in change:
3569                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
3570           don't know how it got reverted.
3571
3572 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
3573
3574         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
3575         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
3576
3577         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
3578         not gdk_pixbuf.
3579
3580 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
3581
3582         * configure.in,po/{sp,sr}.po: Added Serbian files
3583
3584 2000-07-30  Tor Lillqvist  <tml@iki.fi>
3585
3586         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
3587
3588         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
3589         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
3590         GIOChannel implementation.
3591
3592         * gdk/win32/gdkinput.c
3593         * gdk/win32/gdkpango-win32.c: Update license name here, too.
3594
3595         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
3596         definition to match prototype.
3597
3598         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
3599
3600 2000-07-27  Elliot Lee  <sopwith@redhat.com>
3601
3602         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
3603         function, to allow handling image formats that cannot be detected
3604         by looking at content alone.
3605
3606 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
3607
3608         * docs/tutorial/*.gif *.jpg *.eps
3609           Update these to the same look-n-feel.
3610           Why does including images in DocBook suck so badly?
3611
3612 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
3613
3614         * gtk/gtktable.c: applied patch from Phil Thompson
3615         <phil@river-bank.demon.co.uk> that enables space settings for
3616         the last row/columns as well.
3617
3618 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
3619
3620         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
3621         updates the license headers to the GNU Lesser General Public License,
3622         as well as updating the copyright year to 2000.
3623
3624 2000-07-26  Robert Brady  <rwb197@zepler.org>
3625
3626         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
3627           and po/Makefile, was installing and looking for them under gtk20
3628           and gtk2 respectively.
3629
3630 2000-07-25  Havoc Pennington  <hp@redhat.com>
3631
3632         * gtk/testtext.c: Comment out some stuff that depends on the rest
3633         of my patches.
3634
3635 2000-07-25  Havoc Pennington  <hp@redhat.com>
3636
3637         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
3638         buffer
3639
3640 2000-07-25  Havoc Pennington  <hp@redhat.com>
3641
3642         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
3643         widget changes.
3644
3645         * gtk/gtktextview.h: To be consistent with usage of "line"
3646         throughout the API to mean "newline-terminated thingy", change
3647         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
3648         to MOVEMENT_LINE.
3649
3650         (GtkTextView): Add flags for default editability, and whether to
3651         show the cursor. Add functions to get/set that. Add 
3652
3653         (gtk_text_view_get_iter_location): new function
3654
3655         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
3656         gtktextlayout.h
3657         (g_convert): Add g_convert temporarily, will go in glib in a bit
3658         
3659         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
3660         GtkTextTagTableForeach instead of brokenly using GHFunc.
3661         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
3662
3663         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
3664         moved to public header.
3665
3666         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
3667         "invisible", since "elide" was a bad name.
3668         (gtk_text_tag_get_priority): Added
3669
3670         (GtkTextStyleValues): put this in public header, along with
3671         functions to use it.
3672
3673         * gtk/gtktextmarkprivate.h: Include more headers, since we no
3674         longer include gtktextbtree.h.
3675
3676         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
3677         gtk_text_mark_deleted
3678
3679         * gtk/gtktextlayout.h: Don't include the "really private" headers,
3680         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
3681         to make this possible. Now we only need to install
3682         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
3683         (However the Makefile.am isn't changed yet because of the
3684         logistics of merging gtk-hp-patches piecemeal)
3685
3686         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
3687         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
3688         gtk_text_iter_get_line is now used in the public API for a
3689         different purpose.
3690
3691         * gtk/gtktextiter.h: Clean up function names to be more
3692         consistent. Always call char offset "offset" and byte index
3693         "index". A "line" is always a line number. 
3694
3695         (gtk_text_iter_is_last): new function, more efficient than 
3696         the existing way to check
3697         (gtk_text_iter_is_first): new function, also more efficient
3698
3699         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
3700
3701         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
3702         gtk_text_iter_forward_char, etc.
3703
3704         (gtk_text_iter_forward_to_tag_toggle): Renamed from
3705         forward_find_tag_toggle, since this isn't a linear search
3706
3707         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
3708
3709         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
3710         New functions, search for a buffer substring.
3711
3712         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
3713         interactive and default editable (since we need to store that info
3714         until we receive the selection data).
3715
3716         Remove all the _at_char and at_line etc. versions of functions;
3717         only have iterator versions.
3718
3719         Add _interactive() versions of functions, that consider the
3720         editability of text. (FIXME add interactive flag to the 
3721         insert/delete signals per Darin's suggestion)
3722
3723         (gtk_text_buffer_get_tag_table): new function, demand-creates the
3724         tag table if necessary
3725
3726         Remove declaration of gtk_text_buffer_get_iter_from_string
3727
3728         (_gtk_text_buffer_get_btree): private/internal function, added.
3729         
3730
3731         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
3732         (gtk_text_line_is_last): new function
3733
3734 2000-07-25  Havoc Pennington  <hp@redhat.com>
3735
3736         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
3737         using GtkProgressBar. See Changes-2.0.txt for details.
3738
3739         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
3740         "pulse_step" which are the equivalent of
3741         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
3742         Implement new API.
3743         
3744         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
3745         (use_text_format) to mark whether text set on the progress bar is
3746         a format string. Deprecate entire GtkProgress interface.
3747
3748         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
3749         (gtk_progress_build_string): make this a no-op if use_text_format
3750         is FALSE
3751
3752         * docs/Changes-2.0.txt: Describe progress bar changes.
3753
3754 2000-07-25  Tor Lillqvist  <tml@iki.fi>
3755
3756         * Makefile.am: Include the build directory.
3757
3758         * configure.in: Generate build/Makefile, build/win32/Makefile,
3759         gdk/, gdk/win32/, and gtk/makefile.mingw.
3760
3761         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
3762         Add GETTEXT_PACKAGE.
3763         
3764         * gdk/gdk.def
3765         * gtk/gtk.def: Updates.
3766
3767         * gdk/gdkfont.h
3768         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
3769         need them any longer.
3770
3771         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
3772
3773         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
3774         PANGOWIN32_LIBS and gdk_pixbuf.
3775
3776         * gdk/win32: Compiles, but no doubt doesn't work at all.
3777
3778         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
3779
3780         * gdk/win32/gdkinput.c: New file, temporarily.
3781         
3782         * gdk/win32/gdkinput-win32.h: New file
3783
3784         * gdk/win32/gdkinputprivate.h: Remove.
3785
3786         * gdk/win32/gdkpango-win32.c: New file.
3787
3788         * gtk/makefile.mingw.in: New file
3789
3790         * gtk/makefile.cygwin: Removed
3791         
3792         * gtk/Makefile.am: Update accordingly.
3793
3794         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
3795         made externally visible.
3796
3797         * gtk/gtkmain.c: Use it.
3798         
3799         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
3800         is enough.
3801
3802         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
3803
3804 2000-07-24 Elliot Lee <sopwith@redhat.com>
3805         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
3806         individual backends already.
3807         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
3808         again. Yes, there really is a good reason for this, if you are using the gdkregion
3809         internals, and if you're not, why do you care?
3810         * gdk/gdkwindow.c: Fix inverted condition
3811         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
3812         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
3813         * gtk/gtkrange.c: Redraw trough when moving.
3814         * gtk/gtktypeutils.c: Fix warning by adding const cast.
3815         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
3816
3817 2000-07-23  Tor Lillqvist  <tml@iki.fi>
3818
3819         * configure.in: Check for mkstemp and sigsetjmp. Output
3820         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
3821
3822         More work on GDK for Win32. Still in an intermediate state.
3823
3824         * gdk/makefile.cygwin
3825         * gdk/win32/makefile.cygwin: Removed.
3826         
3827         * gdk/makefile.mingw.in
3828         * gdk/win32/makefile.mingw.in: New files.
3829
3830         * gdk/Makefile.am
3831         * gdk/win32/Makefile.am: Generate and distribute them.
3832
3833         * gdk/win32/gdkwindow-win32.h
3834         * gdk/win32/gdkdrawable-win32.h
3835         * gdk/win32/gdkpixmap-win32.h: New files.
3836
3837         * gdk/win32/gdkcolor-win32.c
3838         * gdk/win32/gdkcursor-win32.c
3839         * gdk/win32/gdkdrawable-win32.c
3840         * gdk/win32/gdkgc-win32.c
3841         * gdk/win32/gdkimage-win32.c
3842         * gdk/win32/gdkprivate-win32.h
3843         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
3844         Rename fields and variables called xcursor, xid, etc (these names
3845         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
3846
3847 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
3848
3849         * gtk/gtkentry.[ch]: Fix some problems with vertical
3850         alignment.
3851
3852         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
3853         char/byte confusion.
3854
3855 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
3856
3857         * gtk/gtktextview.c (changed_handler): Fix bug where
3858         redraw wasn't being done properly when height of
3859         dirty region changed.
3860
3861         * demos/Makefile.am: Remove various references to
3862         -lgmodule
3863
3864 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
3865
3866         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
3867         PangoAttrShape to reserve space for pixmaps, add 
3868         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
3869         in the display functions.
3870         
3871         * gtk/testgtk.c (create_layout): Set some more exotic
3872         scrolled window options
3873
3874         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
3875         Add function to set the shadow type of a window, to allow
3876         putting a shadow around widgets such as GtkLayout or GnomeCanvas
3877         which don't draw their own frame.
3878
3879 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
3880
3881         * docs/tutorial/package-db-tutorial.sh: New file for
3882           packaging DocBook format tutorial
3883
3884 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
3885
3886         * docs/tutorial/gtk-tut.sgml: Minor updates
3887
3888         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
3889
3890 2000-07-19  Tor Lillqvist  <tml@iki.fi>
3891
3892         * gtk/gtksignal.c: Fix C++ comment.
3893
3894         * gtk/gtkimmulticontext.c
3895         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
3896         don't return value from void functions.
3897
3898         * gtk/gtk.def: Add gtk_rc_style_unref.
3899
3900 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3901
3902         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
3903         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
3904         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
3905         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
3906         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
3907         gtk/gtktypeutils.h: Include files outside of the extern "C"
3908         block. Makes some C++ compiler happy. Reported by Denis Vakatov
3909         <vakatov@peony.nlm.nih.gov>.
3910
3911 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
3912
3913         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
3914           Completes first pass. Hurrah!
3915
3916 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
3917
3918         * docs/tutorial/gtk-tut.sgml: More clean ups.
3919
3920 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
3921
3922         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
3923         paint the background of the text area which was accidentally
3924         removed at some point.
3925
3926         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
3927           
3928          - Move most of the functionality from the theme vtable
3929            into GtkRcStyleClass and GtkStyleClass. The moved
3930            vtable functions were changed a bit in the move to
3931            work better in their new home.
3932
3933          - Get rid of the engine and engine_data fields from
3934            GtkRcStyle and GtkStyle; instead the theme
3935            engine derives theme-specific subclasses of GtkRcStyle
3936            and GtkStyle
3937
3938          - Add extra dlsym() found entry point to themes,
3939            theme_create_rc_style().
3940
3941         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
3942         in gtk_style_real_copy.
3943
3944         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
3945         to register a type associated with an engine. (The engine
3946         won't be unloaded as there is an instance of the type.)
3947
3948
3949 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
3950
3951         * docs/tutorial/gtk-tut.sgml: Clean ups.
3952
3953 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
3954
3955         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
3956           of cleaning up to do.
3957
3958 2000-07-15  Tor Lillqvist  <tml@iki.fi>
3959
3960         * gdk/testgdk.c: New file, quick hack to test backends for
3961         pixel-by-pixel correctness of the most simple graphic operations.
3962
3963 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
3964
3965         * Really release 1.3.1
3966         
3967         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
3968         include structure.
3969
3970 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
3971
3972         * Released 1.3.1
3973
3974 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
3975
3976         * gtk/gtktextlayout.c: use FALSE for size_only most
3977         of the time when calling gtk_text_layout_get_line_display()
3978         to avoid causing double reshapes when a redraw follows
3979         immediately after.
3980
3981 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
3982
3983         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
3984         appropriate region and gdk_window_process_updates() so trough
3985         updating doesn't lag behind the window being scrolled.
3986
3987         * gdk/gdkgc.c: Make parent_class pointer static.
3988          
3989 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
3990
3991         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
3992         include <string.h>.
3993          
3994         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
3995         cut-and-paste error in computing memory offset for 4 channels.
3996
3997 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
3998
3999         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
4000         gtk_rc_append_default_pixmap_path(), since it wasn't
4001         adding an interesting path and we don't have a meaningful
4002         default for this value.
4003
4004 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
4005
4006         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
4007         gtk-config to gtk-config-2.0 move gtk_.m4 to
4008         gtk-2.0.m4
4009
4010         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
4011         gdk/Makefile.am demos/Makefile.am: Change 
4012         library names to libgtk-1.3.la, etc, so that we
4013         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
4014
4015         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
4016         gdk/Makefile.am gdk/x11/Makfile.am
4017         Move include files into /usr/include/gtk-2.0, 
4018         /usr/lib/gtk-2.0/include/
4019          
4020         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
4021         gtk/gtkintl.h: Change package for gettext from 
4022         gtk+ to gtk20. Put hack in autogen.sh to modify
4023         po/Makefile.in.in after gettextize to make this
4024         possible.
4025
4026         * gtk+.spec: Some updates, not tested.
4027
4028         * gdk-pixbuf/Makefile.am: Move loaders into
4029         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
4030
4031         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
4032         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
4033         to THEMENAME/gtk-2.0/. Move engine directory  to
4034         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
4035         
4036 2000-07-12  Tor Lillqvist  <tml@iki.fi>
4037
4038         Win32 changes, still doesn't build though.
4039
4040         * gdk/makefile.cygwin
4041         * gdk/win32/makefile.cygwin
4042         * gtk/makefile.cygwin: Updates.
4043
4044         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
4045         default values for fg and bg pixel as X11 does (0 and 1), not
4046         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
4047         Use 0 for pen width by default (treated as 1 anyway later, but for
4048         apps that might check the value in the GdkGC).
4049         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
4050         interface to gdk_gc_predraw and _postdraw.
4051
4052         * gdk/win32/gdkwin32.h
4053         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
4054
4055         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
4056         extraneous semicolon.
4057
4058         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
4059
4060         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
4061         not the Win32 bitspixel value.
4062
4063         * gdk/win32/gdkcc-win32.c:
4064         * gdk/win32/gdkcolor-win32.c 
4065         * gdk/win32/gdkprivate-win32.h
4066         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
4067         GDK object structure.
4068
4069 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
4070
4071         * docs/tutorial/gtk_tut_12.es.sgml (name): 
4072         * docs/tutorial/gtk_tut_it.sgml (name): 
4073         * docs/tutorial/gtk_tut_fr.sgml (name): 
4074         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
4075         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
4076
4077 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
4078
4079         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
4080           small changes.
4081
4082 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
4083
4084         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
4085         a bug here, never been here and never fixed anything ;(
4086         (don't segfault if tree->root_tree is NULL, which happens prior
4087         to widget realization, but puke instead).
4088
4089 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
4090
4091         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
4092         add the necessary tokens.
4093
4094         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
4095         (gtk_rc_style_to_style): copy thicknesses.
4096         (gtk_rc_init_style): apply thicknesses.
4097         (gtk_rc_parse_style): parse xthickness and ythickness.
4098
4099         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
4100
4101         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
4102         (gdk_window_new): 
4103         (_gdk_windowing_window_init): 
4104         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
4105         (gdk_pixmap_create_from_data): 
4106         (gdk_bitmap_create_from_data): 
4107         (gdk_pixmap_new): 
4108         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
4109         (gdk_image_new): 
4110         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
4111         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
4112         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
4113         (gdk_colormap_get_system): 
4114         (gdk_colormap_new): 
4115         * gdk/gdkwindow.c (gdk_window_init): 
4116         * gtk/gtkstyle.c (gtk_style_new):
4117         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
4118         * gdk/gdkpixmap.c (gdk_pixmap_init): 
4119         * gtk/gtkrc.c (gtk_rc_style_new):
4120         use g_object_new() instead of g_type_create_instance() which
4121         is a private function for fundamental type implementations.
4122
4123 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
4124
4125         * configure.in: Add check for db2html
4126
4127 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
4128
4129         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
4130         hack to set glib_debug_objects based on gtk_debug_flags.
4131
4132 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
4133
4134         * INSTALL.in: Update the Prerequisites section.
4135
4136         * Makefile.am demos/Makefile.am docs/Makefile.am
4137         docs/tutorial/Makefile.am gdk/x11/Makefile.am
4138         gdk/linux-fb/Makefile.am: Dist fixes
4139
4140 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
4141
4142         * NEWS: 10,000 foot view of 1.3.1 changes.
4143
4144 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
4145
4146         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
4147         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
4148         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
4149         gdk/x11/gdkmain-x11.c: 
4150
4151         Patch from George Lebl to add a GdkGrabStatus enumeration to use
4152         as a return value of gdk_*_grab(). Previously, we just
4153         returned the X11 values directly.
4154
4155 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
4156
4157         * gdk/x11/Makefile.am: Patch from George Lebl to 
4158         install all the headers in the right place.
4159
4160 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
4161
4162         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
4163           initial conversion to DocBook.
4164
4165 2000-07-04  Tor Lillqvist  <tml@iki.fi>
4166
4167         * README.win32: Improve a bit.
4168
4169         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
4170         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
4171         Alt+0nnn on the numpad (used to enter characters by numeric code
4172         from current DOS or ANSI codepage) working correctly, as in other
4173         Windows apps.
4174
4175         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
4176         same argument validity tests as in X11 version.
4177         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
4178
4179         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
4180         definitions in case missing from headers.
4181
4182         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
4183         destroy the window-specific cursor.
4184         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
4185         calling GetModuleHandle(NULL).
4186         (gdk_window_set_cursor): Reworked to always copy the passed cursor
4187         with CopyCursor before setting it as the window-specific
4188         cursor. It is OK for the caller to destroy the GdkCursor (and thus
4189         also its Windows cursor) after calling this function. Destroy any
4190         previous window-specific cursor.
4191
4192 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
4193
4194         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
4195         font charset is iso8859-1, not iso-8859-1.
4196
4197 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
4198
4199         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
4200         Use g_get_charset() instead of g_get_codeset().
4201
4202         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
4203         Comment out some strdup'ing functions to keep timj
4204         happy until we finish fighting this out.
4205
4206 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
4207
4208         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
4209         <= width or height.
4210
4211         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
4212         from 1.2 for parent/child states.
4213
4214         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
4215         of typos.
4216
4217         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
4218         event structures, replace with a generic axes field. Replace 
4219         deviceid/sourec with GdkDevice *device.
4220
4221         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
4222         to extract particular axis use value from event. (Also
4223         can be used for normal X/Y.)
4224
4225         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
4226         allow for arbitrary number of axes, namespace everything
4227         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
4228         everywhere.
4229
4230         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
4231         Get rid of the gdk_input_vtable setup if favor of simply
4232         defining the functions in gdkinput-none/gxi/xfree.c in
4233         a similar fashion to the way that the port structure is 
4234         done.
4235
4236         * gtk/gtkdnd.c: Fix fields of synthesized button press event
4237         for new event structures. 
4238
4239         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
4240         new device interfaces.
4241
4242 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
4243
4244         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
4245         set the initial text.
4246
4247         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
4248         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
4249         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
4250         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
4251
4252         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
4253         pango_layout_set_font_description to simplify.
4254
4255 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
4256
4257         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
4258         pango_layout_set_font_description to simplify.
4259
4260 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
4261
4262         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
4263         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
4264         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
4265
4266         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
4267         PANGO_PIXELS() macro.
4268
4269 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
4270
4271         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
4272         that returns a PangoContext owned by the widget and updated to
4273         match future changes in the widget. Also, make 
4274         gtk_widget_create_pango_layout() use this context. If we ever
4275         add a ::changed signal to PangoContext, this will make things
4276         much more convenient. 
4277
4278         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
4279         in the appropriate places instead of destroying the layouts and
4280         creating new ones.
4281
4282         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
4283         in a few strategic places.
4284
4285 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
4286
4287         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
4288         gtk_widget_size_request() on reparented child, if one. Otherwise,
4289         queue_resize() on the child never results in it getting size-requested
4290         at all.
4291
4292         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
4293         in option menus, so that (with luck) people won't copy it into
4294         their apps in the future.
4295
4296         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
4297         to gtk_option_menu_calc_size. This isn't perfect, but should fix
4298         a lot of problems with changing the size of the menu's menu
4299         items after adding it to the option menu.
4300
4301         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
4302
4303         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
4304         the text direction for a widget changes.
4305
4306         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
4307         ::direction_changed to get rid of various hacks.
4308
4309 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
4310
4311         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
4312         name.
4313
4314 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
4315
4316         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
4317         flag to the structure. Do not call XFreePixmap on pixmaps created
4318         by gdk_pixmap_foreign_new().
4319
4320 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
4321
4322         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
4323         value using GdkRGB functionality given GdkColormap and GdkColor.
4324         (name not final, waiting for inspiration.)
4325         
4326         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
4327         set the foreground/background of a GC using the GC's colormap
4328         and GdkRGB. (name not final, waiting for inspiration.)
4329
4330         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
4331         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
4332
4333         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
4334         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
4335         purely a function of the corresponding colormap. Make
4336         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
4337
4338         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
4339         gdk_pixbuf_*create_from_xpm_* in terms of
4340         gdk_pixbuf_new_from_xpm_data(), move into platform independent
4341         code.
4342
4343         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
4344         advantage of the new draw_rgb_32_image_dithalign.
4345
4346         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
4347
4348         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
4349         on each created GC.
4350
4351         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
4352
4353         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
4354         which we initialize from the drawable when the GC is created,
4355         if the drawable has a colormap.
4356
4357         * gdk/x11/gdkgc-x11.c: include string.h for memset.
4358
4359         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
4360
4361         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
4362
4363 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
4364
4365         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
4366         actually returning expose events, make sure to set
4367         the count field properly.
4368
4369         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
4370         accidentally reintroced bug which always cleared
4371         the graphics_exposures value. 
4372
4373 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
4374
4375         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
4376
4377 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
4378
4379         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
4380
4381 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
4382
4383         * docs/faq/gtk-faq.sgml: Start of Section 6.
4384
4385 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
4386
4387         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
4388         
4389         (Fixes problem with drawing childless frames. Pointed out
4390         by and a first patch from Anders)
4391         
4392         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
4393         compute a child_allocation, even if we don't have a child.
4394
4395         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
4396         Always chain to the parent's impl, even if we don't have a child.
4397
4398 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
4399
4400         * gdk/gdkrgb.c: If possible, create only a single shm segment and
4401         use multiple parts of it instead of creating a bunch of separate
4402         segments, since the maximum number of segments per system is not
4403         large. (This might be worth backporting to GTK+-1.2.x if we make a
4404         new release )
4405
4406         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
4407         structure in preparation for per-colormap GdkRGB.
4408
4409         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
4410         to False when we get EINVAL from shmget so that the caller of
4411         gdk_image_new can retry with a smaller segment size.
4412
4413 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
4414
4415         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
4416
4417 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
4418
4419         * configure.in: make the current version number 1.3.1 (binary age 0,
4420         interface age 0).
4421         
4422         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
4423         gtkcompat.h is all we want.
4424
4425         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
4426         GLib primitive types. fixed g_type_register_fundamental() argument
4427         ordering.
4428
4429         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
4430         compiles.
4431
4432         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
4433         object code cleanup, comment trigraph fixes, etc...
4434
4435 2000-06-23  Havoc Pennington  <hp@redhat.com>
4436
4437         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
4438         instead of making up a bogus name for first_para_mark
4439
4440         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
4441         0 as a context ID
4442
4443 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
4444
4445         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
4446
4447 2000-06-21  Havoc Pennington  <hp@pobox.com>
4448
4449         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
4450         we didn't check window->bg_pixmap != GDK_NO_BG.
4451
4452         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
4453         gdk-pixbuf
4454
4455 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
4456
4457         * docs/faq/gtk-faq.sgm: Move file to here.
4458           TODO: Update Makfile.am 
4459
4460 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
4461
4462         * docs/gtk-faq.sgm: Add Section 2
4463
4464 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
4465
4466         * docs/gtk-faq.sgm: New file. Start of DocBook
4467           version of the FAQ.
4468
4469 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
4470
4471         * configure.in (GDK_PIXBUF_MAJOR): Define version
4472         numbers for GDK_PIXBUF_*, as they get substituted
4473         into a header file. Need to consider versioning
4474         for gdk-pixbuf more carefully later.
4475
4476 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
4477
4478         Work with srcdir != builddir.   
4479         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
4480         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
4481         * demos/testpixbuf.c: Likewise.
4482         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
4483         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
4484         <gdk/x11/gdkx.h>.
4485         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
4486         "gdk-pixbuf.h".
4487         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
4488
4489 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
4490
4491         * TODO.xml: Change 1.4 version numbers to 2.0.
4492
4493 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
4494
4495         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
4496         fixups to GTK+ standard.
4497
4498 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
4499
4500         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
4501         gdk-pixbuf.
4502
4503         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
4504         fixups for GObject.
4505
4506         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
4507         gdk-pixbuf with GDK dependencies moved into GDK.
4508         
4509         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
4510         move gdk-pixbuf-loader here until GObject has signals.
4511
4512         * demos/: New directory of demos. Move demos from
4513         gdk-pixbuf here.
4514
4515         * demos/pixbuf-init.c: Small bit of code to check for
4516         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
4517         set GDK_PIXBUF_MODULEDIR appropriately.
4518
4519         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
4520         define which no longer makes sense.
4521
4522 2000-06-21  Havoc Pennington  <hp@redhat.com>
4523
4524         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
4525         gtk_get_default_language
4526
4527         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
4528         new function to get the default language
4529
4530         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
4531         s/gtk_text_view_style_values/gtk_text_style_values/
4532
4533         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
4534         Add a "language" field to tags.
4535
4536         (gtk_text_tag_set_arg): Fix bug in setting
4537         "bg_full_height_set" tag.
4538
4539 2000-06-21  Havoc Pennington  <hp@redhat.com>
4540
4541         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
4542         in the interfaces
4543
4544         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
4545         stuff instead when possible.
4546
4547         * gtk/gtktexttypes.h: Delete some unused constants
4548
4549         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
4550         testtextbuffer.c: use glib instead of custom unicode routines
4551
4552 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
4553
4554         * docs/es/: Removed mistakenly added generated sgml
4555
4556         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
4557         Remove outdated info files.
4558
4559         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
4560         Moved tutorial files into subdir
4561
4562         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
4563         subdir.
4564
4565         * docs/man/gtk_button.pod: Remove. (contents will be
4566         integrated into gtk-reference button page.)
4567
4568         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
4569         docs/faq/Makefile.am: Adjust for new organization
4570
4571 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
4572
4573         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
4574         not $(MKINSTALLDIRS)
4575
4576 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
4577
4578         * gtk/testgtk.c (create_text): Finish the job Elliot started
4579         of removing font setting test for text widget. (Since text widget
4580         and GdkFont are not deprecated, and cause portability problems.)
4581
4582 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
4583
4584         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
4585         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
4586         Remove use of libunicode in favor of new GLib functions.
4587
4588         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
4589         nano-x, framebuffer. The X11 include is just a hack until we get
4590         the necessary functions in gdkcolor.h, so there is no reason to
4591         add other includes of platforms.
4592
4593         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
4594         window bigger than the screen change.
4595
4596         * gtk/testgtk.c: Revert some random changes from Elliot
4597         that had no particular point and were causing testgtkrc
4598         not to function correctly.
4599         
4600         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
4601         because GdkSegment and GdkRegionBox have the same fields,
4602         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
4603         results in clearer code.
4604
4605         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
4606         gdk_input_translate_coordinates): Fix missed GdkObjectification
4607
4608 2000-06-18  Elliot Lee  <sopwith@redhat.com>
4609
4610         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
4611         * gtk/gtk{plug,socket}.h: Missed commits from previous.
4612
4613 2000-06-20  Havoc Pennington  <hp@redhat.com>
4614
4615         * modules/linux-fb/Makefile.am: Make this compile
4616         without framebuffer enabled
4617
4618         * gdk/linux-fb/Makefile.am: Add conditional to not build
4619         framebuffer unless specified in configure
4620
4621         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
4622         the size of the target instead of source if -1 was passed for
4623         width/height
4624
4625         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
4626         width/height confusion.
4627
4628 2000-06-19  Havoc Pennington  <hp@redhat.com>
4629
4630         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
4631         GDK_DRAWABLE_XID. In the future, we probably want to make it
4632         faster with G_DISABLE_CHECKS turned on.
4633
4634 2000-06-14  Havoc Pennington  <hp@redhat.com>
4635
4636         * gdk/Makefile.am: add gdkpixmap.c
4637
4638         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
4639         s/gdk_image_init/_gdk_windowing_image_init
4640
4641         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
4642         ref/unref
4643
4644         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
4645
4646         * gdk/gdkcompat.h: remove GdkWindowType compat, since
4647         GdkWindowType is now non-deprecated; 
4648         change gdk_window_get_type() compat to be
4649         gdk_window_get_window_type().
4650
4651         * gdk/gdkdnd.h: make GdkDragContext a GObject.
4652
4653         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
4654         virtual GObject. Make all functions call into the vtable.
4655         Move gdk_image_put() guts in here. Remove GdkDrawableType
4656         and gdk_drawable_get_type(), these are now GdkWindow-specific.
4657         draw_image, get_depth, get_size, set_colormap, get_colormap,
4658         get_visual added to the vtable.
4659         
4660         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
4661         GObject. Virtualize everything. 
4662         (gdk_gc_new_with_values): remove check for destroyed window,
4663         because now GdkWindow::create_gc will check this.
4664         (gdk_gc_set_values): New function to set GC values, this 
4665         was already implemented but wasn't in the header
4666
4667         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
4668
4669         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
4670         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
4671         remove _gdk_window_class; add _gdk_window_impl_get_type() and
4672         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
4673         _gdk_windowing_window_init, rename gdk_image_init to
4674         _gdk_windowing_image_init.
4675         
4676         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
4677         (gdk_draw_layout): Remove check for destroyed window, 
4678         because all the drawable methods already check it.
4679         
4680         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
4681         Add gdkpixmap.c which contains implementation of GdkDrawable
4682         virtual table (by chaining to a platform-specific implementation
4683         object).
4684         
4685         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
4686         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
4687         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
4688         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
4689         GdkColormapPrivate. 
4690
4691         * gdk/gdktypes.h: #include <glib-object.h>
4692
4693         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
4694         Move most functionality to platform-specific implementation
4695         object. GdkWindow itself now handles the backing store, then
4696         chains to the platform-specific implementation.
4697         (gdk_window_get_window_type): return GdkWindowType of the window.
4698         (gdk_window_peek_children): New routine, returns the children of 
4699         a GdkWindow
4700         (gdk_window_get_children): Was in X11-specific code and did 
4701         XQueryTree. Changed to simply return a copy of window->children; 
4702         so it can go in cross-platform code.
4703         
4704         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
4705
4706         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
4707         GdkColormap; just changed to use the new private data instead
4708         of casting to GdkColormapPrivate.
4709
4710         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
4711         gdk_cursor_new().
4712
4713         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
4714         (private data member in the GObject). 
4715         (xdnd_manager_source_filter): Function had broken 
4716         error handling, fix it (use gdk_error_trap_push).
4717
4718         * gdk/x11/gdkdrawable-x11.c: This file now implements
4719         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
4720         base class is purely for the convenience of the X port,
4721         and not part of the interface to cross-platform GDK.
4722
4723         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
4724         
4725         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
4726         specific to X, and returned by the create_gc virtual method
4727         of GdkDrawableImplX11. 
4728         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
4729         rather than gchar, this was also changed in the GdkGC vtable.
4730         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
4731         mask is 0, return immediately, instead of checking every flag.
4732         This is faster, and keeps us from segfaulting if values is NULL
4733         and the mask contains some nonzero flags.
4734
4735         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
4736         GdkWindow.
4737
4738         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
4739         GdkWindowPrivate is gone.
4740
4741         * gdk/x11/gdkim-x11.c: rename things that got renamed.
4742
4743         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
4744         remove the image_put stuff that got transferred to GdkDrawable.
4745         
4746         * gdk/x11/gdkinput.c: renamings
4747
4748         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
4749
4750         * gdk/x11/gdkpixmap-x11.c: GObject conversion
4751
4752         * gdk/x11/gdkprivate-x11.h: indentation fixes
4753
4754         * gdk/x11/gdkproperty-x11.c: renamings
4755
4756         * gdk/x11/gdkselection-x11.c: renamings
4757
4758         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
4759         implements the platform-specific "impl" object.
4760         Moved gdk_window_get_children to gdk/gdkwindow.c
4761
4762         * gdk/x11/gdkx.h: Remove all the private structs and private datas
4763         that no longer exist. Add declaration of GdkGCX11 object here.
4764         Fix all the macros to still work. 
4765
4766         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
4767         GdkDragContext from the boxed types since they are now GObjects.
4768
4769         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
4770         moved xthickness/ythickness into the instance. GtkStyleClass
4771         functions are now in the standard vtable for GtkStyle, so you have
4772         to create a GObject subclass to write a theme engine.
4773         (gtk_style_copy): fixed a leaked PangoFontDescription
4774         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
4775         can be the standard GObject function.
4776         
4777         * Throughout GTK:
4778         s/style->klass->[xy]thickness/style->[xy]thickness
4779         s/pango_layout_unref/g_object_unref/
4780
4781         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
4782         
4783         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
4784         accessing GDK internals.
4785
4786         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
4787         accessing GDK internals.
4788
4789 2000-06-18  Elliot Lee  <sopwith@redhat.com>
4790
4791         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
4792
4793         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
4794         problem by calculating event position relative to the trough
4795         rather than the slider.
4796         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
4797
4798         * gdk/gdkgc.h: Add GDK_NOR.
4799
4800         * configure.in, Makefile.am: Add modules top level dir
4801         * configure.in: Only use pangox library if building x11 target.
4802         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
4803
4804 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
4805
4806         * gtk/gtkcolorsel.c: Change private class member to be named
4807         private_data throughout the file.
4808
4809         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
4810         private_data to avoid clashing with keyword.
4811
4812 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
4813
4814         * gdk/gdkdnd.h: Add comment to remove warning.
4815
4816 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
4817
4818         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
4819         Byelorussian language; changed the Makefile and file names 
4820         to reflect that.
4821
4822 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
4823
4824         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
4825         rather than gdk_window_hide; this makes things work
4826         correctly if the window is programmatically hidden while
4827         iconified.
4828
4829 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
4830
4831         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
4832         cut and paste typo where wrong pixmap was being
4833         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
4834
4835 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
4836
4837         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
4838         Add helper function to compute format / bytes 
4839         relationship. Use in a couple places to fix up
4840         errors which assume 8 * format.
4841
4842         * gtk/gtkselection.c (gtk_selection_request): Use 32
4843         rather than 8 * sizeof (GdkAtom), to work correctly
4844         on Alpha.
4845
4846 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
4847
4848         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
4849         libgtk.la
4850         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
4851         versions
4852
4853         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
4854         checking macros return NULL since the function has a return value.
4855
4856 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
4857
4858         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
4859         GTK+ from building at all.
4860
4861         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
4862
4863 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
4864
4865         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
4866         gtk/Makefile.am: make it possible to configure gtk for different
4867         targets on the same platform. The library name is now 
4868         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
4869         flag. Only the x11 target compiles right now.
4870         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
4871         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
4872         * gdk/nanox/gdk*generic*: delete generic region code.
4873         * gdk/linux-fb/gdk*generic*: delete generic region code.
4874         * README.nanox: update information.
4875         
4876 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
4877
4878         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
4879         prepend not append. (Pointed out by Brett Hall.)
4880
4881 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
4882
4883         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
4884
4885 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
4886
4887         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
4888         need this later, and this makes sure that the atexit for
4889         glib gets called after that for GDK, so atexits are
4890         properly ordered for object leak checking.
4891
4892         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
4893
4894         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
4895         pango_x_shutdown_display()
4896
4897         * gtk/simple.c (main): Close window on destroy.
4898
4899 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
4900
4901         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
4902         to treat initial creation different from setting with 
4903         regards to the graphics-exposures parameter, so add a parameter
4904         indicating whether this is initial or not.
4905
4906 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
4907
4908         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
4909         to sort of work by adding an extra return_exposes arg
4910         to gdk_event_translate() - it might be better to simply
4911         deprecate the function altogether and force people to rewrite
4912         without it. gdk_window_scroll() handles most of it, and where
4913         gdk_window_scroll() doesn't work, simply redrawing more does.
4914
4915         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
4916         assertion.
4917
4918         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
4919
4920         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
4921         bunch of pretty much useless /* Print debugging info */ comments 
4922         which had drifted away from the code they were commenting.
4923
4924 2000-06-02  Havoc Pennington  <hp@pobox.com>
4925
4926         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
4927         is in working order.
4928         
4929         * gtk/testtext.c: Change to reflect anonymous mark API
4930
4931         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
4932
4933         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
4934         field, which was unused.
4935
4936         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
4937         saves some typing.
4938
4939         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
4940
4941         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
4942         flag on the insertion point and selection bound
4943
4944         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
4945         make mark-manipulation functions take a GtkTextMark* instead of a
4946         mark name.
4947         
4948         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
4949         GtkTextMarkBody; will be used to detect attempts to delete
4950         the permanent marks (insert and selection bound)
4951
4952         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
4953
4954 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
4955
4956         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
4957         flag to on.
4958
4959         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
4960         Honor DOUBLE_BUFFRED_FLAG
4961
4962         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
4963         function to set the DOUBLE_BUFFERED flag.
4964
4965         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
4966         or not exposes done on the widget should be double-buffered.
4967
4968         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
4969         to be what would be expected. (Fixes problem with a
4970         g_return_if_fail() validating a TextDirection enumeration)
4971
4972 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
4973
4974         * gtk/gtkwidget.c: Remove all references to 
4975         offscreen flag which was no longer used.
4976
4977         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
4978
4979         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
4980         for non-null label_widget->parent.
4981
4982         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
4983         which no longer was used.
4984
4985         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
4986
4987         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
4988         for null arguments.
4989
4990         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
4991         check for destroyed windows.
4992
4993 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
4994
4995         * gtk/gtkimmulticontext.c: Add a finalize method and unref
4996         the slave context there.
4997
4998         * gtk/gtkinvisible.[ch]: Make reference counting behavior
4999         identical to GtkWindow.
5000
5001 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
5002
5003         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
5004         pangox to here, so we can write them independent of rendering
5005         system, using GDK primitives.
5006
5007         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
5008         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
5009         since we have a rendering-system independent implementation in
5010         terms of draw_glyphs().
5011         
5012         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
5013         function to render a single line.
5014
5015         * gdk/x11/gdkpango.c: Move the guts of this file mostly
5016         into ../gdkpango.c, which simplifies things, since we
5017         don't have to deal with raw X gc's.
5018
5019 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
5020
5021         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
5022         get the logical attributes for a given GtkTextLine.
5023
5024 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
5025
5026         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
5027         g_locale_get_codeset() to g_get_codeset() change.
5028
5029 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
5030
5031         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
5032         descriptions.
5033
5034         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
5035         the entry.
5036
5037         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
5038         redoing (vastly simplifying) for Pango. Still needs quite
5039         a bit of work. (Size selection is currently poor. List of 
5040         predefined sizes is not a good idea, since all of these
5041         sizes won't necessarily be distinct.)
5042
5043 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
5044
5045         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
5046         CODESET results for LANG=C.
5047
5048 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
5049
5050         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
5051         which takes a stringized pango font description;
5052         ignore the older 'font' and 'fontset' declarations.
5053
5054         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
5055         field with a GdkFont derived via gdk_font_from_description(),
5056         for compatibility. (Should we just remove it entirely?
5057         Probably too much compatibility breakage, but people
5058         should be migrating to the new Pango stuff as quickly
5059         as possible.)
5060
5061 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
5062
5063         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
5064
5065 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
5066
5067         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
5068         redoing; there are some bugs in size allocation right
5069         now, the semi-existant distinction between header / day
5070         fonts was removed, but, with Pango, could actually
5071         be made functional in a nice way.
5072         
5073         * gtk/testcalender: Move calender from examples into this
5074         directory as a test program. (We really need to restrcture
5075         testgtk into a whole directory full of tests for every
5076         widget or functionality group, separated into multiple .c
5077         files.)
5078
5079 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
5080
5081         * gtk/testgtk.c (file_exists): Fix stupid typo that
5082         was keeping RC file from being loaded.
5083
5084         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
5085         RC file font code.
5086
5087 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
5088
5089         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
5090         Add function to load a GdkFont from a PangoFontDescription.
5091
5092 2000-05-29  Tor Lillqvist  <tml@iki.fi>
5093
5094         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
5095         variable should be of type GdkEventPrivate.
5096
5097 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
5098
5099         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
5100         to have any widget for the label, use a GtkLabel widget
5101         to display the text. (Based partially on a patch from
5102         Anders Carlson.)
5103
5104         (Quite a bit of code reorganization - strip 90% of the
5105         guts out of gtkaspectframe and add a single virtual
5106         func to GtkFrameClass - compute_child_allocation.)
5107
5108 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
5109
5110         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
5111         (Removed clist->row_center_offset field because caching
5112         it wasn't saving time or code, added private function
5113         _gtk_clist_create_cell_layout()).
5114
5115 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
5116
5117         * gtk/gtkaccellabel.c: Pangoized.
5118
5119         * gtk/[hv]ruler.c: Pangoized
5120
5121 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
5122
5123         * gtk/gtkfilesel.c (gtk_file_selection_init):
5124         Use gtk_clist_set_column_auto_resize() to remove need
5125         need for manual column width computations.
5126
5127 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
5128
5129         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
5130         ensuring Pango correctness, and considerably simplifying the
5131         code.
5132         
5133         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
5134
5135         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
5136         getting of numbers of lines.
5137
5138         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
5139         to the actual requested width of the lable, not to the wrap
5140         width we set.
5141
5142         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
5143
5144         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
5145           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
5146
5147         * gtk/gtktextview.c: Fix structure inheritance.
5148
5149         * gtk/gtkprogressbar.c: Pangoize.
5150
5151 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
5152
5153         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
5154         in a function.
5155
5156         * gtk/gtktextlayout.c (find_display_line_above): Fixed
5157         bug with computing line tops.
5158
5159         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
5160
5161 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
5162
5163         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
5164         and y_offset coordinates to do what we need now. (The offset between
5165         buffer and layout coordinates has been reintroduced, but is a 
5166         bit different than before.)
5167
5168         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
5169         handle the adjustments ourselves, and scroll as necessary using
5170         the new gdk_window_scroll().
5171         
5172         The advantage of this is that when we are incrementally revalidating,
5173         we are essentially rearranging things around the visible portion
5174         of the screen. With the old setup, the visible portion of the
5175         screen was moved around in the layout, so scrolling and redrawing
5176         to track that caused jumping of the display. Since we now
5177         control the scrolling ourselves, we can suppress this and
5178         only redraw when things actually change.
5179
5180 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
5181
5182         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
5183         the region not just redisplay it after-all, since we store the
5184         cursors in the LineDisplay. (Ugly interactions here between
5185         GtkLayout and GtkTextBTree here.)
5186         
5187         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
5188
5189 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
5190
5191         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
5192         Added function to scroll contents of a window while keeping the
5193         window constant. Works by XCopyArea or guffaw-scrolling depending
5194         on the details of how the window is set up. (guffaw-scrolling
5195         still needs to be filled in.)
5196
5197 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
5198
5199         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
5200         move the debugging that was tied to a global variable
5201         to that.
5202
5203         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
5204
5205         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
5206         validated flag, in line data instead of setting height/width to
5207         -1. This allows us to perform operations with partially invalid
5208         buffer (using the old size for invalid lines) and thus to do
5209         incremental vaidation. Keep height/width aggregates up to date
5210         when deleting text and rebalancing the tree.
5211
5212         * gtk/gtktextbtree.[ch]: Add functions validate a line
5213         (gtk_text_btree_validate_line), and to validate up
5214         to a number of pixels (gtk_text_btree_validate).
5215
5216         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
5217         that indicates that something is changed and a revalidation
5218         pass is needed. Change ::need_repaint to ::changed, and
5219         make it take old and new yranges instead of a rectangle.
5220
5221         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
5222         the line_data_destroy() function from 
5223         gtk_text_btree_add_view() to a virtual function in 
5224         GtkTextLayout
5225
5226         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
5227         since we are handling partial repaints in a different fashion
5228         now.
5229
5230         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
5231         of the selection instead of queueing a repaint on the
5232         entire widget.
5233
5234         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
5235         get_selection_bounds() down to btree, make the function
5236         in buffer a wrapper around the btree function.
5237
5238         * gtk/gtktextlayout.[ch]: Add functions to check if the
5239         layout is valid and to recompute either a range of pixels
5240         aroudn a line or a certain total number of pixels.
5241
5242         * gtk/gtktextlayout.[ch]: Cache a single line display;
5243         now that we only redraw the needed portions, the hit rate
5244         for this cache is quite high.
5245         
5246         * gtk/gtktextview.[ch]: Keep track of the first paragraph
5247         on the screen so that when re-laying-out the buffer, we can
5248         keep the same place. This requires connecting to ::value_changed
5249         on the adjustments
5250
5251         * gtk/gtktextview.[ch]: Add idle functions to revalidate
5252         the buffer after we receive an ::invalidated signal.
5253         
5254 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
5255
5256         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
5257         to max of allocation and layout size, not just to the
5258         layout size.
5259
5260         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
5261         Invalidate window so it gets redrawn properly.
5262
5263         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
5264         to mean the entire window.
5265
5266         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
5267         into public header.
5268
5269 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5270
5271         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
5272         to get the name of a mark.
5273
5274         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
5275         to find the paragraph from a y position.
5276
5277 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
5280         nodes have width/height >= 0, not > 0.
5281
5282 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
5283
5284         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
5285         Add a size_only flag, so when we only need the size, we don't create
5286         useless appearance attributes.
5287
5288         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
5289         duplicate setting of font description.
5290
5291         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
5292
5293 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
5294
5295         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
5296         EXTRA_DIST. It does not work well when the file that
5297         everything depends on is not in the tarball.
5298
5299 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
5300
5301         * gtk/testgtk.c: Some hacks and fixes so that it basically
5302         works when not sitting in the GTK+ build tree.
5303
5304 2000-05-03  Havoc Pennington  <hp@redhat.com>
5305
5306         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5307         Properly determine the ordering of the tag root and the current
5308         line within the tree. Previous algorithm only worked if the tag
5309         root's immediate parent was the common root of both the current
5310         line and the tag root.
5311
5312 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
5313
5314         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
5315         alignment.
5316
5317         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
5318         the widget text directional dynamically.
5319
5320         * gtk/gtktextview.[ch]: Added functions to get and set default
5321         wrap mode.
5322
5323 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
5324
5325         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
5326         in cursor location computation.
5327
5328 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
5329
5330         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
5331         vadjusment values properly when layout gets smaller.
5332
5333         * gtk/gtktextview.c (need_repaint_handler): Areas being
5334         passed in are far completely inaccurate, and sometimes
5335         too small, so, for now, just queue a redraw on the
5336         whole visible region.
5337
5338 2000-04-25  Havoc Pennington  <hp@redhat.com>
5339
5340         * gtk/gtktextbtree.c (summary_destroy): new function to 
5341         destroy tag summary nodes
5342         (gtk_text_line_next_could_contain_tag): this function was 
5343         totally broken if the line passed in wasn't below the tag
5344         root. Fix it.
5345         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
5346         "wildcard" case, we have to do a linear scan. Blah.
5347         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
5348         we have to do the linear scan
5349         (tag_removed_cb): When a tag is removed from the tag table, 
5350         remove the GtkTextTagInfo node from the btree.
5351         (gtk_text_btree_spew): Implement the spew function, for 
5352         our debugging pleasure.
5353
5354 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
5355
5356         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
5357         a problem with referring to the wrong buffer.
5358
5359         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
5360
5361         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
5362         font description to gtk_style_new() - otherwise things
5363         don't work without a .gtkrc file.
5364
5365         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
5366         tags table if we create it ourself, too.
5367
5368         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
5369         it was conflicting with XKB modifiers.
5370
5371         * gtk/gtktextview.[ch]: Add simple support for 
5372         GtkIMContext.
5373
5374 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
5375
5376         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
5377         with deletion from last commit.
5378
5379 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
5380
5381         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
5382         in the context from the current locale.
5383         
5384         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
5385         context, not hardcoded value.
5386
5387         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
5388         not logical.
5389
5390 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5391
5392         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
5393         attributes - that doesn't handle partial-glyph selection
5394         properly. Instead use new pango_layout_line_get_x_ranges()
5395         functionality to draw the selection.
5396
5397         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
5398         now properly handles out-of-range coordinates.
5399
5400         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
5401
5402         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
5403         public.
5404
5405         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
5406         for paragraphs opposite to the base direction of the widget.
5407
5408         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
5409
5410         * gtk/gtktextlayout.c: Don't split segments on marks, since that
5411         causes Arabic words to reshape as you cursor through.
5412
5413         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
5414         cursor position when moving vertically with the arrow keys and
5415         scrolling with page-up/page-down. (Arrow keys save only the X,
5416         scrolling saves both X and Y.)
5417
5418         This means you can line-up / line-down or page-up / page-down
5419         without losing your place, and also that moving vertically
5420         with the cursor keys keeps the same X position, not the same
5421         character count:
5422
5423         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
5424         arrow keys move by display lines, not paragraphs.
5425
5426 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
5427
5428         * gtk/gtklayout.c: Make sure that the bin window is at least
5429         as big as the allocation. (Should we also make sure that the
5430         bin window is big enough to completely cover widget->window?)
5431
5432         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
5433         function to get the onscreen rectangle.
5434
5435         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
5436         for offsets in window coordinates.
5437
5438 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
5439
5440         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
5441         confusion.
5442
5443         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
5444         from the widget direction.
5445
5446         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
5447         Add a "direction" attribute.
5448
5449         * gtk/gtktextview.c: global s/tkxt/text_view/.
5450
5451         * gtk/testtext.c: Added long block of text in Arabic, to test out
5452         the direction attributes. (Some problems with the shaping system
5453         for arabic become obvious - like the fact the cursor splits words
5454         into unjoined pieces.)
5455
5456 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
5457
5458         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
5459
5460         * gtk/gtktextlayout.c: Fix up alignment.
5461
5462         * gtk/testtext.c: Add some tests for centering, wrapping.
5463
5464 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
5465
5466         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
5467         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
5468         If we wrote GTK+-specific layout-render function this could just replace
5469         the draw_layout() operation in the vtable.
5470
5471         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
5472         pango_layout_get_cursor_pos() and use that function.
5473
5474         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
5475         is a non-static symbol.
5476
5477         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
5478         with gtk_text_btree_find_line_by_y()
5479
5480         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
5481         renderer that handles GtkTextAppearance attributes.
5482
5483         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
5484
5485           - Move the values in the style that don't affect geometry into a
5486             GtkTextAppearance structure.
5487           - Change underline to take a PangoUnderline and "font" a string
5488             representation of a font description
5489           - Add a "font_desc" attribute which takes a FontDescription structure.
5490
5491         * gtk/gtktextlayout.[ch]:
5492
5493           - Get rid of the display-line list per each line. Instead, we
5494             generate, on demand, a GtkTextLineDisplay structure which]
5495             contains a PangoLayout * and other necesary information
5496             (offsets, cursor locations) for displaying a paragraph.
5497           - Get rid of the code to wrap lines, create display chunks,
5498             etc. Instead, we just go through a paragraph and convert
5499             it into the necessary inputs to a PangoLayout.
5500           - Implement a new attribute type, GtkTextAttrAppearance. This
5501             holds a GtkTextAppearance, and is used to pass colors, 
5502             stipple, etc, through from the layout to the display without
5503             having to use lots and lots of individual attributes.
5504           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
5505             in terms of PangoLayout functions.
5506         
5507         * gtk/gtktextview.c: 
5508          
5509           - Handle passing the necessary PangoContext to the layout
5510           - Some fixups in painting to deal with the automatic backing store
5511             and offsetting of GTK+-1.4
5512           - Add a style_set handler so that the default style reacts
5513             properly to theme changes.
5514         
5515         * gtk/gtktext?*.[ch]: Random code-style fixes.
5516
5517         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
5518
5519 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
5520
5521         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
5522         in original form preparatory to Pango-ization and gdkimcontext-ization.
5523
5524 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
5525
5526         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
5527         so that we can derive from gtkimcontext in language bindings properly.
5528
5529 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
5530
5531         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
5532         Add a compose table including (almost) all the compose combinations
5533         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
5534         data in the XIM implementation.
5535
5536         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
5537         Moved functions to convert keyvalues from and to unicode here from
5538         the win32 port and made them public.
5539
5540 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
5541
5542         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
5543
5544 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
5545
5546         * gtk/gtkimcontext.[ch]: Base class for new input context system
5547
5548         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
5549         the real input context implementation to be loaded from modules
5550         and switched on the fly.
5551
5552         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
5553         context that just does direct keysymbol => unicode translation.
5554
5555         * gtk/gtkentry.[ch]: Start switching editing over to using
5556         GtkInputContext. (No handling of preedit yet.)
5557
5558 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
5559
5560         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
5561         many substitutions. (klass should not be subsituted.)
5562
5563 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
5564
5565         * configure.in: Add checks for Pango
5566
5567         * configure.in docs/Makefile.am: Add test for sgml2html
5568         and allow 'make dist' without building html, but print out
5569         warnings in that case. (For making snapshots)
5570
5571         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
5572         Add Pango libraries and C flags
5573
5574         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
5575         Add function (gdk_draw_layout) to draw a pango layout.
5576
5577         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
5578         for getting Pango contexts for GDK.
5579
5580         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
5581
5582         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
5583         editing.
5584
5585         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
5586         keysym => unicode translations. More languages can be added
5587         here, but real input-method support is needed.
5588
5589         * docs/Changes-1.4.txt: Added note about entry behavior.
5590         
5591         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
5592         to set the reading direction for a widget and the global direction.
5593         Add test which allows toggling the global direction. Two private
5594         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
5595
5596         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
5597           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
5598
5599         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
5600
5601         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
5602         underlining now handled by Pango.
5603
5604         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
5605         to RCStyle and Style. (Having both this and the old font name and GdkFont 
5606         is temporary.)
5607
5608         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
5609         convenience functions for creating contexts and layouts for widgets.
5610
5611         * gtk/testgtk.c: Enhance label tests with multilingual labels.
5612
5613 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
5614
5615         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
5616         titles to be active, even if they aren't visible.
5617         (gtk_clist_column_titles_passive):  Ditto.
5618
5619 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
5620
5621         * gtkmenu.c:
5622         * gtkmenu.h:
5623         * gtktypeutils.h: Spelling/grammar fixes in comments.
5624
5625 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
5626
5627         * gdk/nanox/*.h: add missing header files.
5628
5629 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
5630
5631         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
5632         send_event to TRUE.
5633         (gtk_drawing_area_size): queue a resize.
5634
5635 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
5636
5637         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
5638         the handlers, also invalidate them. bug nailed down by Karl Nelson
5639         <kenelson@ece.ucdavis.edu>.
5640
5641 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
5642
5643         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
5644         "(nil)" foundries, patch from Grigorios Magklis.
5645
5646         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
5647         on non-available fonts, based on a patch by Grigorios Magklis
5648         <maglis@cs.rochester.edu>.
5649
5650 2000-05-18  Elliot Lee  <sopwith@redhat.com>
5651
5652         * gdk/x11/gdkregion-generic.c: If a region does not have any
5653         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
5654         instead of GDK_OVERLAP_RECTANGLE_IN.
5655
5656 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
5657
5658         * gtk/gtklayout.c (gtk_layout_map): Remove references to
5659         OFFSCREEN, as it is no longer necessary.
5660
5661 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
5662
5663         * gtk/gtkcolorsel.c: Patch from David Santiago
5664         <mrcooger@cyberverse.com> to change things so that the 
5665         indicator of the active palette entry is done independently,
5666         not via the focus, since it should always be visible.
5667
5668 2000-05-17  Tor Lillqvist  <tml@iki.fi>
5669
5670         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
5671         refcount leaks as in the X11 backend.
5672
5673         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
5674         cosmetics.
5675
5676         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
5677         backend. Add _gdk_windowing_window_destroy().
5678
5679         * gtk/gtkcolorsel.c: Include correct backend-specific header.
5680         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
5681         either, but these probably do exist on nanox?)
5682         
5683         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
5684         which isn't necessarily defined by <math.h>.
5685
5686         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
5687         ancestry past GtkObject.
5688
5689         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
5690         from DLL on Win32.
5691
5692         * gtk/gtk.def: Update corresponding to recent changes.
5693
5694         * gtk/makefile.{cygwin,msc}: Updates.
5695
5696 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
5697
5698         * docs/Changes-1.4.txt: A bit of editing.
5699
5700         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
5701         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
5702         to clear the update area for the window, and clear it
5703         when hiding a window.
5704
5705         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
5706         if window destroyed.
5707
5708         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
5709
5710         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
5711         gdk_window_destroy() to the generic code, since there was a lot of 
5712         window-system-independent logic it in. Add a function:
5713         
5714          _gdk_window_destroy() 
5715
5716         to the internal API to destroy a window without unreferencing it.
5717         Add a function:
5718
5719          _gdk_windowing_window_destroy()
5720
5721         That does the windowing-system-dependent part of destroying 
5722         the window.
5723
5724 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
5725
5726         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
5727
5728 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
5729
5730         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
5731         Make gtk_widget_shape_combine_mask() keep a reference count on
5732         the pixmap since it keeps it around.
5733
5734 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
5735
5736         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
5737         leak.
5738
5739         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
5740         leak with event filters.
5741
5742 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
5743
5744         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
5745         signal handlers with the right data arguments. (Fixes
5746         some warnings when a widget was repeatedly set as a drag
5747         destination.)
5748
5749         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
5750         window so we can avoid avoid setting the DND properties on the
5751         toplevel window repeatedly.
5752
5753 2000-05-13  Tor Lillqvist  <tml@iki.fi>
5754
5755         * gdk/win32/gdkwin32.h: Define more message types missing from
5756         mingw headers.
5757
5758         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
5759         call gdk_window_destroy_notify(). It was never called. This
5760         probably meant that the GdkWindow was never freed. Thanks Owen for
5761         noticing (!).
5762
5763         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
5764         window as destroyed before calling DestroyWindow(). DestroyWindow()
5765         causes a call to the window procedure (gdk_WindowProc), which
5766         calls gdk_event_translate(), which calls
5767         gdk_window_destroy_notify(), which gets confused unless the window
5768         is set as destroyed.
5769
5770         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
5771         this function to indicate it's win32 only. Put inside #ifdef
5772         G_ENABLE_DEBUG.
5773
5774         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
5775         debugging function. (gdk_event_translate:) Add a default branch
5776         that uses the above function to print debug messages with all
5777         Windows messages symbolically.
5778
5779         * gdk/win32/gdkprivate-win32.h: Declare it, and
5780         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
5781
5782 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
5783
5784         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
5785         public header file.
5786
5787 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
5788
5789         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
5790
5791         * gtk/gtktext.c: made the adjustments no-construct args, simply
5792         provide default adjustments.
5793         (gtk_text_destroy): release adjustments.
5794
5795         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
5796         adjustment argument non-construct.
5797
5798         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
5799         instead of in finalize.
5800         (gtk_progress_get_text_from_value): 
5801         (gtk_progress_get_current_text): 
5802         (gtk_progress_set_value): 
5803         (gtk_progress_get_percentage_from_value): 
5804         (gtk_progress_get_current_percentage): 
5805         (gtk_progress_set_percentage): 
5806         (gtk_progress_configure): ensure an adjustment is present.
5807
5808 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
5809
5810         * gtk/gtkcolorsel.[hc]:
5811         * gtk/gtkcolorseldialog.[hc]:
5812         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
5813         their parent implementation, use bit fields for boolean values, don't
5814         create unused widgets, usage of glib types, braces go on their own
5815         lines, function argument alignment, #include directives etc. etc. etc..
5816
5817         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
5818
5819 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
5820
5821         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
5822
5823         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
5824         of NULL.
5825
5826         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
5827         to freed data.
5828         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
5829
5830         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
5831         to NULL when the toplevel is getting destroyed.
5832         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
5833         (gtk_menu_destroy): 
5834         (gtk_menu_init): store the information of whether we have to
5835         readd the initial child ref_count during destruction in a new
5836         GtkMenu field needs_destruction_ref_count.
5837
5838         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
5839         here, those reading: learn from my mistake! ;)
5840         in order for set_?adjustment to support a default adjustemnt if
5841         invoked with an adjustment pointer of NULL, the code read (pseudo):
5842         if (v->adjustment) unref (v->adjustment);
5843         if (!adjustment) adjustment = adjustment_new ();
5844         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
5845         now imagine the first unref to actually free the old adjustment and
5846         adjustment_new() creating a new adjustment from the very same memory
5847         portion. here, the latter comparision will unintendedly fail, and
5848         all hell breaks loose.
5849         (gtk_viewport_set_hadjustment):
5850         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
5851         after unreferencing it.
5852
5853         * gtk/gtkcontainer.[hc]: removed toplevel registration
5854         functions: gtk_container_register_toplevel(),
5855         gtk_container_unregister_toplevel() and
5856         gtk_container_get_toplevels() which had wrong semantics
5857         anyways: it didn't reference and copy the list.
5858
5859         * gtk/gtkwindow.c: we take over the container toplevel registration
5860         bussiness now. windows are registered across multiple destructions,
5861         untill they are finalized. the initial implicit reference count
5862         users are holding on windows is removed with the first destruction
5863         though.
5864         (gtk_window_init): ref & sink and set has_user_ref_count, got
5865         rid of gtk_container_register_toplevel() call. add window to
5866         toplevel_list.
5867         (gtk_window_destroy): unref the window if has_user_ref_count
5868         is still set, got rid of call to
5869         gtk_container_unregister_toplevel().
5870         (gtk_window_finalize): remove window from toplevel list.
5871         (gtk_window_list_toplevels): new function to return a newly
5872         created list with referenced toplevels.
5873         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
5874
5875         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
5876         adjustment a non-construct arg.
5877         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
5878         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
5879         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
5880
5881         * gtk/gtkrange.c: added some realized checks.
5882         (gtk_range_destroy): get rid of the h/v adjustments in the
5883         destroy handler instead of finalize. remove timer.
5884         (gtk_range_get_adjustment): demand create adjustment.
5885
5886         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
5887         we simply create them on demand now and get rid of them in
5888         the destroy handler.
5889         (gtk_viewport_destroy): get rid of the h/v adjustments in the
5890         destroy handler instead of finalize.
5891         (gtk_viewport_get_hadjustment): 
5892         (gtk_viewport_get_vadjustment): 
5893         (gtk_viewport_size_allocate): demand create h/v adjustment
5894         if required.
5895
5896         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
5897         gtk_widget_real_destroy () functionality.
5898         (gtk_widget_real_destroy): reinitialize with a new style, instead
5899         of setting widget->style to NULL.
5900
5901 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
5902
5903         * gtk/gtkcalendar.c:
5904         * gtk/gtkbutton.c: ported _get_type() implementation over to
5905         GType, either to preserve memchunks allocation facilities,
5906         or because Gtk+ 1.0 GtkTypeInfo was still being used.
5907
5908         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
5909         over. prepare for ::destroy to be emitted multiple times.
5910         removed reference tracer magic. chain into GObjectClass.shutdown()
5911         to emit ::destroy signal.
5912
5913         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
5914         fundamental.
5915
5916         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
5917         cludge.
5918
5919         * gtk/gtksocket.c:
5920         * gtk/gtkplug.c:
5921         * gtk/gtklayout.c:
5922         * gtk/gtklabel.c:
5923         * gtk/gtkargcollector.c:
5924         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
5925         not being a fundamental anymore, and to work with the new
5926         type system (nuked fundamental type varargs clutter).
5927
5928         * gtk/*.c: install finalize handlers in the GObjectClass
5929         part of the class structure.
5930         changed direct GTK_OBJECT()->klass accesses to
5931         GTK_*_GET_CLASS().
5932         changed direct object_class->type accesses to GTK_CLASS_TYPE().
5933
5934         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
5935         GType. made most of the GTK_*() type macros and Gtk* typedefs
5936         simple wrappers around macros and types provided by GType.
5937         most notably, a significant portion of the old API vanished:
5938         GTK_TYPE_MAKE(),
5939         GTK_TYPE_SEQNO(),
5940         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
5941         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
5942         GTK_TYPE_ARGS,
5943         GTK_TYPE_CALLBACK,
5944         GTK_TYPE_C_CALLBACK,
5945         GTK_TYPE_FOREIGN,
5946         GtkTypeQuery,
5947         gtk_type_query(),
5948         gtk_type_set_varargs_type(),
5949         gtk_type_get_varargs_type(),
5950         gtk_type_check_object_cast(),
5951         gtk_type_check_class_cast(),
5952         gtk_type_describe_tree(),
5953         gtk_type_describe_heritage(),
5954         gtk_type_free(),
5955         gtk_type_children_types(),
5956         gtk_type_set_chunk_alloc(),
5957         gtk_type_register_enum(),
5958         gtk_type_register_flags(),
5959         gtk_type_parent_class().
5960         replacements, where available are described in ../docs/Changes-1.4.txt.
5961         implemented compatibility functions for the remaining API.
5962
5963         * configure.in: depend on glib 1.3.1, use gobject module.
5964
5965 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
5966
5967         * TODO.xml: Various updates to current status.
5968
5969 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
5970
5971         * gtk.m4: Print out version when test succeeds.
5972
5973 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
5974
5975         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
5976         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
5977         
5978         (Original triangle color selector from Simon Budig
5979         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
5980         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
5981         Santiago <mrcooger@cyberverse.com>)
5982
5983         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
5984         out into a separate widget.
5985
5986         * gtk/testgtk.c: Add some checkbuttons for toggling palette
5987         and opacity controls.
5988
5989 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
5990
5991         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
5992         snuck in prematurely.
5993
5994 2000-05-07  Tor Lillqvist  <tml@iki.fi>
5995
5996         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
5997         had deleted a ! operator by mistake, which caused
5998         GDK_SELECTION_CLEAR events never to be generated, which caused
5999         only the first copy to the clipboard from an gtkeditable to
6000         actually cause a copy to the Windows clipboard.
6001
6002 2000-05-06  Tor Lillqvist  <tml@iki.fi>
6003
6004         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
6005         compilation, too. Current mingw gcc distributions include the
6006         necessary headers. Also the necessary IIDs are now in mingw
6007         headers/libraries, and own definitions unnecessary.
6008
6009         More hacking on OLE2 DND, still doesn't work though, and thus
6010         ifdeffed out.
6011
6012         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
6013         here, too.
6014
6015 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
6016
6017         * gdk/nanox/*: nano-X port work in progress.
6018         * gdk/simple.c: simple test for Gdk.
6019         * README.nanox: notes about the port: read this first!
6020         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
6021         with nano-X.
6022
6023 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
6024
6025         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
6026         gdk_window_clear() into common code, implement in terms of
6027         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
6028         not redirected to the backing rectangle.
6029
6030 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
6031
6032         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
6033         EXTRA_DIST. It does not work well when the file that
6034         everything depends on is not in the tarball.
6035
6036 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
6037
6038         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
6039         with recursion where process_updates() is called from
6040         an expose handler. (GtkTextView is highly broken in
6041         doing this, but it should work, so it is a nice test
6042         case.)
6043
6044 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6045
6046         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
6047         handle the case where updates are queued during processing of
6048         updates.
6049
6050 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
6051
6052         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
6053         window is on gdk_display - use that instead of segfaulting.
6054
6055 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
6056
6057         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
6058         broken and require an empty arg, give it to them.
6059
6060 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
6061
6062         * gtk/gtklabel.h: indentation fixes.
6063
6064 2000-05-02  Tor Lillqvist  <tml@iki.fi>
6065
6066         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
6067         draw too narrow or too low arcs, they seem to fail, at least with
6068         some display drivers.
6069
6070         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
6071
6072         Large changes to the Win32 backend, partially made necessary by
6073         the changes to the backend-independent internal
6074         structures. Attempts to implement similar backing store stuff as
6075         on X11. The current (CVS) version of the Win32 backend is *not* as
6076         stable as it was before the no-flicker branch was merged. A
6077         zipfile with that version is available from
6078         http://www.gimp.org/win32/. That should be use by "production"
6079         code until this CVS version is usable. (But note, the Win32
6080         backend has never been claimed to be "production quality".)
6081
6082         * README.win32: Add the above comment about versions.
6083
6084         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
6085
6086         * gdk/gdk.def: Update.
6087
6088         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
6089         presumably be replaced by some more better mechanism as 1.4 gets
6090         closer to release shape.
6091
6092         * gdk/makefile.{cygwin,msc}: Update.
6093
6094         * gdk/win32/*.c: Correct inclusions of the backend-specific and
6095         internal headers. Change code according to changes in these. Use
6096         gdk_drawable_*, not gdk_window_* where necessary.
6097
6098         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
6099         our old DND.
6100
6101         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
6102         to interpret single characters as UTF-8. Thanks to Hans Breuer.
6103         Use correct function name in warning messages.
6104
6105         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
6106         GSourceFuncs gdk_event_prepare and gdk_event_check.
6107         (gdk_event_get_graphics_expose): Do implement, use
6108         PeekMessage. Thanks to Hans Breuer.
6109         (event_mask_string): Debugging function to print an GdkEventMask.
6110         (gdk_pointer_grab): Use it.
6111
6112         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
6113         (old) book I used claimed was Hangul actually is CJK Unified
6114         Ideographs Extension A. Also, Hangul Syllables were missing.
6115         Improve logging.
6116
6117         * gdk/win32/gdkgc-win32.c: Largish changes.
6118
6119         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
6120         g_win32_getlocale() from GLib, and not setlocale() to get current
6121         locale name.
6122
6123         * gdk/win32/gdkprivate-win32.h
6124         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
6125         gdkwin32.h, similarily as in the X11 backend.
6126
6127         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
6128         assignment was used instead of equals in if test. Thanks to Hans
6129         Breuer.
6130
6131         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
6132         the X11 version.
6133
6134         * gdk/win32/makefile.{cygwin,msc}
6135         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
6136         path to the Win32 headers that works also with the mingw compiler.
6137
6138         * gtk/gtkstyle.c: Include <string.h>.
6139
6140 2000-04-26  Havoc Pennington  <hp@redhat.com>
6141
6142         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
6143         replacing the broken gtk_label_get ()
6144
6145 2000-04-15  Havoc Pennington  <hp@pobox.com>
6146
6147         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
6148         this keeps scanner scripts from getting confused.
6149
6150         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
6151         data, rather than void
6152
6153 2000-04-15  Tor Lillqvist  <tml@iki.fi>
6154
6155         * gtk/gtkclist.c (gtk_clist_motion)
6156         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
6157         with is_hint FALSE, get x and y from the event. They used to be
6158         used uninitialised. The Win32 backend never sends motion events
6159         marked as hints. This for instance fixes the annoying file and
6160         font selector behaviour in the Win32 version.
6161
6162 2000-04-14  Tor Lillqvist  <tml@iki.fi>
6163
6164         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
6165         gtk_private_n_signals variables, they are used by some software,
6166         sigh.
6167
6168         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
6169         installation directory from the Registry, where the installer
6170         should have put it.
6171
6172 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
6173
6174         * gdk/x11/Makefile.am: Fix problem with installation directory for
6175         gdkx.h
6176
6177         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
6178         <mrcooger@cyberverse.com> so that when selecting menus with the
6179         mouse, the first item will not be selected, but when selecting
6180         with an accelerator, or navigating left-right on a menubar with
6181         the menus popped up, the first item will be selected.
6182
6183 2000-04-05  Dan Damian  <dand@dnttm.ro>
6184
6185         * configure.in: Added "ro" to ALL_LINGUAS.
6186
6187 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
6188
6189         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
6190         indentation.
6191
6192         * Makefile.am (EXTRA_DIST): Fix typo.
6193
6194         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
6195         to catch gdkconfig.h
6196
6197         * gtk/gtkitemfactory.c: Added FIXME.
6198
6199 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
6200
6201         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
6202         s/return_if_fail/return_val_if_fail/g and add a return value.
6203
6204 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
6207         merge slipup.
6208
6209         * gdk/gdkinput.h: Fix missing line from merge.
6210
6211 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
6212
6213         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
6214         instead of gdkprivate.h.
6215
6216 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
6217
6218         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
6219         parent class to correctly be GtkDialogClass.
6220
6221 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
6222
6223         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
6224         toplevel windows and their immediate children by their parents,
6225         since the size of toplevel windows is out of our immediate
6226         control and we don't get any real benefit from trying to track
6227         this size for clipping.
6228
6229         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
6230         for input_only windows.
6231
6232         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
6233         to fix some hacks and make sure that we don't try to set the
6234         background of input only windows.
6235
6236 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
6237
6238         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
6239         the _really_ internal stuff, and leave gdkprivate.h for the fake private
6240         stuff that we've traditionally exposed.
6241
6242         * gdk/**.c: Use gdkinternals.h where appropriate.
6243
6244         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
6245         not include gdkprivate-x11.h, move all stuff of conceivable public
6246         interest into gdkx.h; keep all really private stuff in
6247         uninstalled header gdkprivate-x11.h.
6248
6249         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
6250         image->image_put on windows through a new function _gdk_window_draw_image()
6251         to allow us to do backing store for images. (Sort of ugly)
6252
6253         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
6254         contexts locally so that we can offset them properly when drawing 
6255         onto backing pixmaps.
6256
6257         * gdk/gdkinput.h: Reindented
6258
6259         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
6260         pixmap or color for the window, so we can properly initialize
6261         our double-buffer pixmaps, and also so that we temporarily set
6262         a background of None while scrolling.
6263
6264         * gdk/gdkregion.h: Revise region boolean operators to have an
6265         interface that is actually convenient - switch from creating new
6266         regions on every op, to "methods" that modify existing regions
6267         (A = A OP B). 3 argument forms which allow dest == src, would also
6268         be possible, but the current interfaces seem to map nicely
6269         onto what needs to be done. (There is quite a lot of region
6270         code in GDK now.)
6271
6272         * gdk/gdkregion.h: Add constructor from rectangle and a copy
6273         operator.
6274
6275         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
6276         gdkpoly-generic.h: Copy region code from Xlib, switch it over
6277         to 32 bit coordinates, modify it to be mostly GTK+ style
6278         and to have interfaces that match gdkregion.h.
6279
6280         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
6281         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
6282         create a backing pixmap and redirect all drawing to
6283         that backing pixmap until a matching gdk_window_end_paint().
6284
6285         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
6286         Create a special drawable class for GtkWindow's that 
6287         redirects the drawing to the backing pixmap as necessary
6288         and then calls the real operations in _gdk_windowing_window_class.
6289
6290         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
6291         Store invalid region for each window. Generate expose events for invalid
6292         region in an idle. This replaces both the expose compression
6293         and the redrawing queuing in GTK+. It is both more efficient and
6294         simpler than either one individually and far more so then the
6295         combination.
6296
6297         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
6298         Emulate 32 bit coordinates for windows with 16 bit coordinates
6299         by offsetting drawing, guffaw scrolling techniques and
6300         mapping/unmapping child windows as necessary.
6301
6302         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
6303         where, when invalid regions are processed, the region is stored,
6304         and if expose events come in that are detectably duplicate
6305         the processed exposes (by comparison of event serial numbers),
6306         the stored region is subtracted out of those exposes.
6307
6308         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
6309         regions newly exposed when scrolling or resizing windows.
6310         This, combined with forcing processesing of queued invalidated
6311         regions, gives nice flicker-free scrolling.
6312
6313         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
6314         invalidated regions after every scroll.
6315
6316         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
6317         emulation in GDK. Its, for all practical purposes just a
6318         GtkViewport/GtkFixed hybrid now.
6319
6320         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
6321         (16-bit) structures as necessary instead of just casting.
6322
6323         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
6324         in terms of the structures from gdkregion-generic.c, using appropriate
6325         offsets from GDK to X11 coordinates. Cache clip mask and
6326         origin and ts origin locally and only flush to the server
6327         when drawing, to avoid constantly setting and resetting these
6328         values when offsetting GC's for scrolling and backing pixmaps.
6329
6330         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
6331
6332         * gtk/gtkcontainer.c: Call process_all_updates at end
6333         of resizing to reduce flicker. (Avoids having redraw
6334         lag arbitrarily behind resize under some circumstances)
6335
6336         * gtk/gtkentry.c: Remove old backing store code, and simply take
6337         advantage of the new backing store capabilities of GDK.
6338
6339         * gtk/gtkmain.c: Simple implementation of widget backing
6340         store - simply push a paint while handling each expose.
6341         (Should really be configurable widget for widget.)
6342         
6343         * gtk/gtkwidget.c: Remove all the old complicated redraw
6344         code, and simply invalidate the GDK windows from
6345         gdk_window_queue_clear(), etc. (Sigh, so much carefully
6346         debugged complexity ... gone to the winds.)
6347
6348         Remove all the code for suppressing expose events while
6349         resizes are pending; this isn't needed since the invalid
6350         areas won't be processed until after the resizes are
6351         processed, since they are in a lower priority idle.
6352
6353 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
6354
6355         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
6356         and height of dest rectangle for non-intersecting rectangles.
6357
6358 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
6359
6360         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
6361         for GdkRectangle.
6362
6363 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
6364
6365         * gdk/gdk{events,image,private,types,window}.h
6366          gdk/x11/gdkinputprivate.h: Change all coordinates
6367          from int16 to int. Also, Change width and height from
6368          unsigned to signed to avoid all the stupid C 
6369          signedness bugs.
6370
6371 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
6372
6373         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
6374         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
6375         Add some more detailed checking.
6376
6377         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
6378         New function to retrieve the depth of a drawable.
6379
6380         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
6381         field, reorder fields to save memory. 
6382
6383 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
6384
6385         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
6386         of the background image instead of scaling the background down to
6387         a line.
6388
6389         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
6390         which temporarily set slider to wrong size.
6391
6392         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
6393         queue_clear().
6394
6395 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
6396
6397 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
6398
6399         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
6400
6401 2000-03-17  Tor Lillqvist  <tml@iki.fi>
6402
6403         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
6404         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
6405
6406         * gdk/win32/gdkfont-win32.c
6407         * gdk/win32/gdkproperty-win32.c
6408         * gdk/win32/gdkselection-win32.c
6409         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
6410         now declared such.
6411
6412 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
6413
6414         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
6415
6416 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
6417
6418         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
6419         is called without trapping X errors.
6420
6421 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
6422
6423         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
6424         way into the fontset lists.
6425
6426 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
6427
6428         * gtk/gtkthemes.h: add extern "C" scope.
6429
6430 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
6431
6432         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
6433         to make appends to the list constant. (gtk-guy-990901-0.patch)
6434
6435 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
6436
6437         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
6438         for the typename hash table.
6439
6440 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
6441
6442         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
6443         to make sure we never divide by zero. 
6444         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
6445
6446 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
6447
6448         * gtk/gtkfontsel.c: Apply patch from
6449         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
6450         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
6451
6452         Also, some cleanups in atom handling.
6453
6454 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
6455
6456         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
6457         not GtkWidget.
6458
6459 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
6460
6461         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
6462         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
6463         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
6464         more guint wrap-around bugs before going to bed.
6465
6466 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
6467
6468         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
6469         guint wrap arounds in allocation.width.
6470
6471         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
6472         process untill we fit the allocation given.
6473
6474 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
6475
6476         * gtk/gtkwidget.c:
6477         (gtk_widget_unrealize): guard widget access with ref/unref
6478         around signal emission.
6479         (gtk_widget_hide): same here, but also check its destroyed
6480         state before queueing a resize.
6481
6482 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
6483
6484         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
6485         of gtk_default_insensitive_bg as insensitive base color.
6486
6487         * gtk/gtktext.c (gtk_text_style_set): set the background color according
6488         to the widget's state.
6489         (gtk_text_realize): same here.
6490         (gtk_text_state_changed): same here.
6491         (draw_bg_rect): compare background color against base[] from
6492         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
6493
6494 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
6495
6496         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
6497         grabs are active, unless a delete event is send to the toplevel
6498         of the currently grab holding widget.
6499
6500 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
6501
6502         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
6503         debugging g_print's.
6504
6505 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
6506
6507         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
6508         ever make the scrolled-window requisition ever depend on the 
6509         visibility state of the scrollbars for the AUTOMATIC policy. 
6510         This breaks the GTK+ requisition model, and causes loops.
6511
6512 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
6513
6514         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
6515         the default font to avoid problems with XFree86-4.0 where the
6516         default charset is iso10646-1, not iso8859-1.
6517
6518 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
6519
6520         * acinclude.m4
6521         * config.guess
6522         * config.sub
6523         * ltconfig
6524         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
6525
6526         * gtk/Makefile.am: minor cosmetic consistency tweak
6527
6528 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
6529
6530         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
6531         the activate_time to 0, so that we handle a quick
6532         press/release press/release properly and don't suppress
6533         the second release. (Red Hat bug #7545)
6534
6535 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
6536
6537         * gtk/gtkctree.c (row_delete):
6538         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
6539         bugs with destruction notifier, *always* update internal
6540         structures *before* calling user code.
6541
6542 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
6543
6544         A few more fixes for bug #5487, #2051, #2677.
6545         * gtk/gtkclist.c : 
6546         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
6547         not GDK_BUTTON_PRESS.
6548         (resync_selection): resync only if selection_mode is
6549         GTK_SELECTION_EXTENDED
6550         * gtk/gtkctree.c (resync_selection): same here
6551
6552 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
6553
6554         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
6555         gdk_drag_get_selection() and gtk_menu_detach().
6556
6557         [ From Jeroen Ruigrok/Asmodai ]
6558
6559 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
6560
6561         * gtk/gtknotebook.c (gtk_notebook_size_request): 
6562         page->tab_label can be NULL.
6563
6564 2000-01-25  Havoc Pennington  <hp@pobox.com>
6565         
6566         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
6567         arg is boolean
6568
6569         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
6570
6571         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
6572
6573         * gdk/gdkproperty.c (gdk_property_get): return boolean
6574
6575         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
6576
6577         * gdk/gdkim.c (gdk_im_ready): return boolean
6578
6579         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
6580
6581         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
6582         glib clash, should fix glib)
6583
6584         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
6585         (gdk_get_show_events): return gboolean, and canonicalize 
6586         to TRUE/FALSE
6587
6588         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
6589         colormap is private
6590         (gdk_colors_alloc): gboolean whether to be contiguous
6591         (gdk_color_equal): return gboolean since we are a predicate
6592         and not a qsort() (this looks semi-wrong due to glib breakage,
6593         IMO glib should be fixed)
6594         
6595         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
6596         (gdk_get_use_xshm): return gboolean
6597         (gdk_pointer_is_grabbed): return gboolean
6598
6599         * gdk/gdk.h: Change prototypes to match all the above changes,
6600         and re-run egtk-format-protos as required.
6601
6602 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
6603
6604         * gtk/gtkctree.c (resync_selection): 
6605         * gtk/gtkclist.c (resync_selection):
6606
6607         Return immediately if clist->drag_pos < 0. This is a workaround
6608         for the corrupt state that the clist gets into when a
6609         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
6610
6611         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
6612         
6613         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
6614         variable from recent commit.
6615
6616 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
6617
6618         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
6619
6620 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
6621
6622         * gtk/Makefile.am: prefix all autogenerated source that get build in
6623         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
6624         in builddir. since we subsequently cd into srcdir for autogeneration,
6625         the paths have to be stripped from the target file names, thusly we
6626         use $(@F) as target names now.
6627         put a comment about configure.in's --disable-rebuilds option,
6628         which can be used for non-writable source directories, for development
6629         setups though, srcdir has to be *writable*.
6630
6631 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
6632
6633         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
6634           Finish the job of allowing event to be NULL.
6635           (Fixes bug #4283, reported by Chris Blizzard)
6636
6637         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
6638           things so that the cursor appears on screen, properly
6639           take into account INNER_BORDER.
6640           (Fixes bug #4754, reported by Antonio Campos)
6641
6642 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
6643
6644         * gtk/gtknotebook.c (gtk_notebook_map): Don't
6645           show the tab_label unless it itself is visible.
6646
6647           gtk/gtknotebook.c (gtk_notebook_size_request):
6648           Do a better job of making sure that the visibility
6649           of the tab label corresponds to whether it should
6650           be mapped or not.
6651
6652 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
6653
6654         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
6655           Use the requisition, not the allocation, since the
6656           allocation has not necessarily been computed yet.
6657           (Pointed out by Eugene Osintsev)
6658
6659 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
6660
6661         * gtk/gtkstyle.c (gtk_style_new): Dont' set
6662           style/base[GTK_STATE_INSENSITIVE] both to
6663           gtk_default_insensitive_bg!
6664           (Bug #2187, reported by Jonathan Blandford)
6665
6666         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
6667           Add Alt_L, Alt_R to list of invalid accelerators.
6668           (Bug #3736, reported by Vlad Harchev)
6669
6670 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
6671
6672         * gtk/gtkfilesel.c (open_ref_dir): Fix several
6673         bugs which occured after an attempt to open 
6674         invalid home directory left cmpl_state->reference_dir == NULL.
6675
6676          - completion on files in home directory didn't work
6677          - completion on an empty string caused  segfault
6678
6679          (Bug #3678, reported by Steve Ratcliffe)
6680
6681         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
6682         cut and paste error that was causing scales to
6683         be incorrectly positioned.
6684         (Bug #2956,
6685          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
6686
6687 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
6688
6689         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
6690         when checking for dcgettext, if we've found we needed
6691         it for dgettext.
6692 +
6693 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
6694
6695         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
6696         queue_clear on NO_WINDOW widgets during a reparent,
6697         since at that point the window and widget heirarchies
6698         are out of sync. This stops crashing in some cases
6699         (the scrolled window reparent test, for instance), and
6700         _probably_ won't cause drawing errors.
6701
6702         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
6703         test do what it was supposed to do and be robust against
6704         window closings, etc. (Bug #2443)
6705
6706 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
6707
6708         * gtk/gtkentry.c: Fix return values on mouse events.
6709         (Bug #2686, Sky <seb_sky@yahoo.com>)
6710
6711         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
6712         (pointed out by George Lebl)
6713
6714         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
6715         (From Ettore Perazzoli  <ettore@helixcode.com>)
6716  
6717 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
6718
6719         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
6720         clicks between rows or outside calender area correctly.
6721         (Patch from Damon Chaplin)
6722
6723         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
6724         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
6725           Call destroy function when overwriting existing data. 
6726           (Pointed out by Damon Chaplin)
6727
6728 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
6729
6730         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
6731           which was causing problems on various systems with Xmu.
6732           This hasn't been needed for a very long time.
6733           (Fixes #1185 3167)
6734
6735 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
6736
6737         * gdk/gdki18n.h: Include <ctype.h> when defining
6738           gdk_isw* in terms of is* as a fallback.
6739           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
6740
6741 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
6742
6743         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
6744           realize the widget when it is size allocated!
6745           (old, old bug)
6746
6747         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
6748           Removed unused call to gdk_window_get_size() that
6749           showed up when the above was fixed.
6750
6751 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
6752
6753         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
6754           fix up widget->window when the widget is a
6755           NO_WINDOW container widget.
6756
6757 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
6758
6759         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
6760           to account for the fact that feof() does _not_ 
6761           return TRUE on errors, and thus avoid infinite loops
6762           when trying to use gdk_pixmap_create_from_xpm()
6763           on unreadable values.
6764
6765 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
6766
6767         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
6768
6769 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
6770
6771         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
6772           gdk_gc_set_dashes to take gint8 instead of gchar to
6773           make it clearer that it is _not_ a NULL terminated string.
6774
6775         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
6776           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
6777           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
6778           arguments.
6779
6780 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
6781
6782         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
6783         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
6784         background size relative to our allocation, guard against small
6785         allocations, we may have not yet been size allocated.
6786
6787 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
6788
6789         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
6790         not just version == 3. We implement all 3 + most of 4 - 
6791         (we don't support matching text/plain;charset=iso-8859-1
6792         to a dest that expects text/plain). We'll still advertise
6793         3 to be safe, but any client implementing version >= 3
6794         must interoperate with 3.
6795         
6796 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6797
6798         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
6799         background and gc members, add a warning in gtk_tooltips_set_color()
6800         indicating that this function is deprecated.
6801
6802 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
6803
6804         * docs/gtkfaq.sgml: FAQ Update:
6805           - Minor cleanups (Emmanuel, me)
6806           - New questions:
6807                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
6808                 How can I retrieve the text from a GtkMenuItem? (timj)
6809                 How do I validate/limit/filter the input to a GtkEntry? (me)
6810                 Memory does not seem to be released when I free the list
6811                         nodes I've allocated (timj)
6812
6813 2000-03-07  Tor Lillqvist  <tml@iki.fi>
6814
6815         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
6816         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
6817         for which it is no use to call GetLastError onWin9x.
6818         (gdk_other_api_failed) New function, for general error
6819         reporting without calling GetLastError.
6820         (gdk_win32_api_failed) OTOH, this function always calls
6821         GetLastError. (gdk_win32_last_error_string) Remove this function,
6822         GLib has the equivalent now.
6823
6824         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
6825         call them with function name, file name and line number in the
6826         arguments.
6827
6828         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
6829         functions.
6830         
6831         * gtk/gtk.def: Add some missing entry points.
6832
6833         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
6834         gtk_paned_set_gutter_size, which don't exist any longer, as void.
6835         
6836         Fixes by Hans Breuer:
6837
6838         * gdk/makefile.msc: Update for debugging.
6839
6840         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
6841         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
6842         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
6843         in the dash_list.
6844
6845         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
6846         the x11 backend.
6847
6848         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
6849
6850         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
6851
6852 2000-03-04  Tor Lillqvist  <tml@iki.fi>
6853
6854         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
6855         just pixel value of background colour.
6856
6857         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
6858         containing code snippet previously duplicated in a couple of
6859         places.
6860         
6861         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
6862         gdk_colormap_color.
6863
6864         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
6865         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
6866         events for autorepeated Shift, Control and Alt keys. Use
6867         gdk_colormap_color.
6868
6869         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
6870         pointer is inside the window the cursor of which we are setting,
6871         call SetCursor immediately.
6872
6873         * gdk/win32/makefile.cygwin
6874         * gtk/makefile.cygwin: If we don't have the build number stamp
6875         file, use zero.
6876
6877         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
6878         gtk_paned_set_gutter_size as empty.
6879
6880         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
6881         
6882 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
6883
6884         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
6885           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
6886           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
6887           docs/gtk_tut.sgml docs/gtk.texi TODO:
6888
6889           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
6890
6891 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
6892
6893         * gtk/gtkcalendar.c: Implement num_marked_dates,
6894           and don't emit mutiple day_selected signals on
6895           month_prev.
6896
6897 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
6898
6899         * docs/make-todo (lineno): let title and logo be configurable so
6900         that GNOME can use this script too.
6901
6902         * TODO.xml: added logourl and a title
6903
6904 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
6905
6906         * TODO.xml: Added some UI items, and an explanatory
6907         comment at the top of the file.
6908
6909 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
6910
6911         * TODO.xml: some updates, added abunch of new entries.
6912         a note for those fiddeling with this file, when done
6913         with it, invoke:
6914         $ ./docs/make-todo TODO.xml >/dev/null
6915         and correct output errors before comitting changes.
6916
6917 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
6918
6919         * TODO.xml: Added XML-structured TODO file.
6920         * docs/make-todo: python script to turn TODO.xml into
6921           pretty XML output. 
6922
6923 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
6924
6925         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
6926         the function to let it draw the seven dots, instead of the old,
6927         much maligned, method.
6928         (draw_dot): New function to draw a dot.
6929
6930         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
6931         to draw the handle inside the border width as opposed to outside.
6932         Use paint function instead of gdk_draw_point.
6933
6934         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
6935         to draw the handle inside the border width as opposed to outside.
6936         Use paint function instead of gdk_draw_point.
6937
6938         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
6939         Change indenting to be more GTK like.
6940
6941 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
6942
6943         * docs/gtk_tut.sgml: New section on GtkCalendar
6944         * examples/calendar: Update example code
6945
6946 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
6947
6948         * docs/gtkfaq.sgml: FAQ Update
6949
6950 2000-02-19  Anders Carlsson  <andersca@gnu.org>
6951
6952         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
6953         to prevent the scroll event to be propagated upwards.
6954
6955 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
6956
6957         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
6958         OwnerGrabButtonMask from button entries for
6959         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
6960
6961         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
6962         to the event mask (which will result in button/press release
6963         being added to the event mask on Unix) so scrolling works
6964         for layouts in scroll windows.
6965
6966         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
6967
6968         Patch from Anders Carlsson  <andersca@gnu.org> to add
6969         a scroll event.
6970
6971         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
6972         scrolling to the "Test Scrolling" part of testgtk.
6973  
6974         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
6975  
6976         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
6977         it against GDK_SCROLL.
6978  
6979         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
6980         way of mouse wheel scrolling.
6981  
6982         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
6983  
6984         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
6985  
6986         * gtk/gtkmain.c: Removed previous mouse wheel hack.
6987  
6988         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
6989         gdk_event_mask_table.
6990  
6991         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
6992         GdkEventScroll handler.
6993  
6994         * gdk/gdkevents.h: Added GdkEventScroll structure.
6995  
6996 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
6997
6998         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
6999         and Anders Carlsson to change the Paned widgets so that they
7000         can be dragged from anywhere along the length. Also change
7001         the way that this is drawn to make this apparent.
7002
7003         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
7004         from George Lebl to check that option_menu->menu is present
7005         before getting history.
7006
7007 2000-02-14  Tor Lillqvist  <tml@iki.fi>
7008
7009         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
7010         before the assertion for non-NULL segment list.
7011
7012         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
7013         Seems that pattern brushes *must* be 8x8 pixels! At least on my
7014         machine, but it might be display driver dependent. Sigh, so make
7015         sure the stipple is that size. Does Windows suck or what?
7016
7017         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
7018         places.
7019
7020 2000-02-13  Havoc Pennington  <hp@pobox.com>
7021
7022         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
7023         refcount to 1
7024         (gdk_cursor_new): init refcount to 1
7025
7026         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
7027
7028 2000-02-13  Tor Lillqvist  <tml@iki.fi>
7029
7030         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
7031         so that we don't have to do unnecessary settings to the HDC.
7032
7033         * gdk/win32/gdkdrawable-win32.c
7034         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
7035         gdk_gc_predraw.
7036
7037         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
7038         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
7039         GDI paths, call WidenPath to get the outline of the stroken path,
7040         and then fill the outline (with the brush that was built from the
7041         stipple).
7042
7043         * gdk/win32/gdkgc-win32.c: Factor out common code from
7044         _gdk_win32_gc_new and gdk_win32_gc_set_values into
7045         gdk_win32_gc_values_to_win32values. Use correct colour for
7046         SetBkColor() (Until now the code actually used a random colour in
7047         the call to SetBkColor()... but that didn't show up as not many
7048         GDI APIs use the background colour. Pattern (opaque stippled)
7049         brushes do.)
7050
7051         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
7052         gdk_win32_api_failed): New functions for error logging.
7053
7054         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
7055         WIN32_API_FAILED to call them, passing function or file name and
7056         line number.
7057
7058         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
7059
7060         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
7061         GdkColor for foreground and background in GdkGCWin32Data.
7062
7063         * gdk/makefile.cygwin: Link in the resource object separately.
7064
7065         * gdk/win32/rc/gdk.rc
7066         * gtk/gtk.rc (New file)
7067         * gdk/win32/makefile.cygwin
7068         * gtk/makefile.cygwin: Update build number in DLLs automatically,
7069         as in GLib.
7070
7071 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
7072
7073         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
7074         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
7075         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
7076         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
7077         parameters given and cursor->ref_count. coding style fixups.
7078
7079         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
7080         not GtkWidget.
7081         
7082         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
7083         fix up widget macros and add _GET_CLASS() variant.
7084         
7085         * gtk/*.c: some GtkType fixups.
7086
7087 2000-02-09  Tor Lillqvist  <tml@iki.fi>
7088
7089         * gdk/win32/gdkproperty-win32.c
7090         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
7091         were reversed.
7092
7093 2000-02-04  Tor Lillqvist  <tml@iki.fi>
7094
7095         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
7096         g_filename_to_utf8 to convert the font names Windows gives us from
7097         whatever is the default codepage to UTF-8.
7098         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
7099         in the other direction.
7100
7101         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
7102         error in debugging output.
7103
7104 2000-02-02  Tor Lillqvist  <tml@iki.fi>
7105
7106         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
7107         and height parameters to gdk_window_clear_area(). Not minus one.
7108
7109 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
7110
7111         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
7112         checks if the widget passed to gtk_drag_get_data() was not the
7113         dest widget.
7114
7115 2000-02-01  Tor Lillqvist  <tml@iki.fi>
7116
7117         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
7118         g_filename_from_utf8 functions (which were added a moment ago to
7119         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
7120         size buffers.
7121
7122         gtk_file_selection_get_filename returns the filename in the C
7123         runtime encoding. It calls g_filename_from_utf8, but copies the
7124         returned string to a static buffer, which is returned. I think
7125         this is better than returning the result from g_filename_from_utf8
7126         directly, which would mean all apps that use it would have to free
7127         the return value. Or should this function care about this issue at
7128         all? Maybe a new function with clearly defined semantics.
7129
7130         * gtk/gtkfilesel.h: Add comment about
7131         gtk_file_selection_get_filename returning the filename in the C
7132         runtime's encoding.
7133
7134         * README.win32
7135         * gdk/gdk.def
7136         * gdk/makefile.{cygwin,msc}
7137         * gtk/gtk.def: Updates.
7138
7139         * gdk/gdkcursor-win32.c: Initialise refcount.
7140
7141 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
7142
7143         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
7144
7145 2000-01-30  Havoc Pennington  <hp@pobox.com>
7146
7147         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
7148         destroy
7149
7150         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
7151
7152         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
7153         implemented in platform-specific code
7154
7155         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
7156
7157         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
7158         underscore in front
7159
7160         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
7161         put an underscore in front
7162
7163         * gdk/gdkcursor.c: new file, implements
7164         gdk_cursor_ref/gdk_cursor_unref
7165
7166         * gdk/gdkcursor.h: Refcount GdkCursor
7167
7168         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
7169
7170 2000-01-29  Tor Lillqvist  <tml@iki.fi>
7171
7172         * gdk/gdkwindow.h
7173         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
7174
7175 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
7176
7177         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
7178         structures to properly inherit from GtkWidget not GtkBin.
7179
7180 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
7181
7182         * gtk+.spec.in: Added lib/gtk+/include/* to %files
7183         (bug #5178 - Peter Wainright)
7184         
7185         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
7186         so that it will be installed.
7187         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
7188
7189 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
7190
7191         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
7192         for the GtkStyleClass vtable const.
7193
7194         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
7195         take a const string argument like GtkTranslateFunc. This will
7196         require changes in use code.
7197
7198 2000-01-19  Tor Lillqvist  <tml@iki.fi>
7199
7200         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
7201         semantics (to mimic the X11 backend, which just calls XClearArea)
7202         is to check for zero width (and height), and in that case use the
7203         window's width minus x (height minus y). This fixes for instance
7204         some redraw problems with gtkclist, which were easily noticeable
7205         in the gtk file selection widget.
7206
7207         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
7208         windows.
7209
7210 2000-01-13  Tor Lillqvist  <tml@iki.fi>
7211
7212         * configure.in
7213         * gdk/Makefile.am
7214         * gdk/x11/Makefile.am
7215         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
7216         (bug #5177).
7217         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
7218         out later.
7219
7220 2000-01-09  Tor Lillqvist  <tml@iki.fi>
7221
7222         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
7223         WM_MOVE for iconified or invisible windows. This fixes various
7224         problems when minimising windows. Thanks to Bernd Herd.
7225
7226 2000-01-05  Tor Lillqvist  <tml@iki.fi>
7227
7228         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
7229         backend's draw_lines method, not draw_points.
7230
7231 2000-01-02  Tor Lillqvist  <tml@iki.fi>
7232
7233         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
7234         before Owen's reorganisation: Don't have queued_events and
7235         queued_tail statics in this file, but use gdk_queued_events and
7236         gdk_queued_tail. This makes exposure event compression work again.
7237
7238         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
7239         seem to be needed?
7240
7241 1999-12-30  Tor Lillqvist  <tml@iki.fi>
7242
7243         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
7244         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
7245         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
7246         doesn't do anything.
7247
7248         * gdk/gdk.def: Add gdk_xid_table_insert.
7249
7250         * gdk/win32/gdkprivate-win32.h
7251         * gdk/win32/gdkevents-win32.c
7252         * gdk/win32/gdkinput-win32.c
7253         
7254         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
7255         extension_events field in the GdkWindowWin32Data struct. Use only
7256         the extension_events field in GdkWindowPrivate. Previously one was
7257         set, and the other one tested, which broke tablet
7258         functionality. Thanks to Keishi Suenaga for pointing this out.
7259
7260 1999-12-18  Tor Lillqvist  <tml@iki.fi>
7261
7262         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
7263         When handling a single character (text length == 1), don't handle
7264         it as if it was UTF-8.
7265
7266 1999-12-11  Tor Lillqvist  <tml@iki.fi>
7267
7268         * Makefile.am: Distribute README.win32.
7269         
7270         * gdk/Makefile.am
7271         * gdk/win32/Makefile.am: Distribute Win32 files.
7272
7273         * gdk/makefile.msc: New file.
7274
7275         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
7276         after label).
7277
7278         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
7279         gdk_error_code as GDKVAR, as they are referred outside GDK.
7280
7281         * gdk/win32/makefile.msc: Update.
7282
7283         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
7284         tweaks. Check only if at least one of those Unicode subrange bits
7285         we care for is set. If no code page bits are set, guess (wildly)
7286         based on the charset.
7287
7288         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
7289
7290         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
7291         non-NULL.
7292
7293         * gtk/gtkdnd.c
7294         * gtk/gtklayout.c
7295         * gtk/gtkplug.c
7296         * gtk/gtkselection.c
7297         * gtk/gtksocket.c
7298         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
7299         appropriate. There must be a cleaner way to handle this?
7300
7301         * gtk/gtkrc.c: Must include windows.h on Win32.
7302
7303         * gtk/testgtk.c: No need to include gdkx.h.
7304
7305         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
7306
7307 1999-12-07  Tor Lillqvist  <tml@iki.fi>
7308
7309         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
7310         the rbearing is set to the same as the width, but this should be
7311         fixed.
7312
7313 1999-12-06  Tor Lillqvist  <tml@iki.fi>
7314
7315         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
7316         function. If Windows doesn't tell us what Unicode subranges a font
7317         covers, guesstimate based on the codepages it covers. This will
7318         hopefully help those Windows versions or fonts that don't give us
7319         any useful Unicode subrange information with GetTextCharsetInfo.
7320         Call this function in gdk_font_load_internal.
7321
7322         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
7323         minor changes.
7324
7325 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
7326
7327         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
7328         New function, long needed.
7329
7330 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
7331
7332         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
7333         only_if_exists argument of gdk_atom_intern to
7334         bool.
7335
7336 1999-11-25  Tor Lillqvist  <tml@iki.fi>
7337
7338         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
7339         Fix two copy&paste errors.
7340
7341         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
7342         win32 has changed.
7343
7344         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
7345         GdkWin32SingleFont struct.
7346
7347         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
7348         subranges of loaded fonts. Clear font signature first, in case
7349         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
7350         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
7351
7352         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
7353         Unoffset clip region.
7354
7355 1999-11-23  Tor Lillqvist  <tml@iki.fi>
7356
7357         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
7358         event->any.window before calling filter functions.
7359
7360 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
7361
7362         * gtk/gtkgamma.h: Adapt cast macros to standard.
7363
7364 [ Merges from 1.2 ]
7365
7366 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
7367
7368         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
7369         If translation does not include a '/', use entire
7370         translation instead of crashing.
7371
7372 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
7373
7374         * docs/gtk_tut.sgml:
7375         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
7376
7377 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
7378
7379         * gtk/gtkselection.c (gtk_target_list_remove): Use
7380         g_list_remove_link, not g_list_remove.
7381
7382         [ From Geert Bevin <gbevin@thunderstorms.org> ]
7383         
7384 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
7385
7386         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
7387         statement upon unselection (how the heck did that slip in?).
7388
7389 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
7390
7391         * gtk/gtktext.c (gtk_text_freeze): 
7392         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
7393         in frozen state (and aparently crashes). patch provided by Anders
7394         Melchiorsen <and@kampsax.dtu.dk>.
7395
7396 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
7397
7398         * fix insensitive default/focus widget activation,
7399         reported by Matt Goodall <mgg@isotek.co.uk>.
7400
7401         * gtk/gtkwindow.c (gtk_window_key_press_event): 
7402         (gtk_window_activate_default):
7403         (gtk_window_activate_focus):
7404         return handled=FALSE for actiavtion of insensitive default
7405         widgets. return handled=TRUE for activation of insensitive
7406         focus widgets. don't activate in either case.
7407
7408 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
7409
7410         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
7411         and $glib_cflags to match library order and in the
7412         theory that an old version of GLib is more likely to
7413         be in the include directory for X then vice-versa.
7414         (Bug #2776)
7415
7416 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
7417
7418         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
7419         to determine the locale for fontsets, not LC_MESSAGES;
7420         the user may want English messages with a handling
7421         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
7422         will still be broken) (Bug #2891)
7423
7424 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
7425
7426         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
7427
7428 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
7429
7430         * gtk/gtkrc.ko: Changed the Korean default fontset.
7431
7432 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
7433
7434         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
7435         where when scrolling to the left or top double exposes
7436         were done, causing major slowdowns.
7437
7438 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
7439
7440         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
7441         names to lowercase and alphanumeric, before looking
7442         them up.
7443
7444         * gtk/Makefile.am: Install codeset variant gtkrc files
7445         with normalized names.
7446
7447 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
7448
7449         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
7450         popup menus when the menu is already visible, but its parent
7451         is still hidden, (happens after tornoff window got hidden).
7452
7453 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
7454
7455         * gtk/Makefile.am (install-data-local): Fix
7456         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
7457         deleted, causing error messages on install.
7458
7459 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
7460
7461         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
7462         the handle as well, since we now sometimes ignore
7463         exposes on the handle while resizing.
7464
7465 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
7466
7467         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
7468         extra g_free introduced in one of the last one or two 
7469         commits.
7470
7471 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
7472
7473         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
7474         consistent, put each style that a gtkrc.* file creates
7475         in a unique namespace, remove old files before installing.
7476
7477 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
7478
7479         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
7480         gtk_rc_init is called multiple times. (Yes, people who
7481         do that have bugs in their code.)
7482
7483 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
7484
7485         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
7486         Remove it since it's generated by the Makefile anyway
7487
7488 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
7489
7490         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
7491         device->info.axes for core pointer.
7492
7493 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
7494
7495         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
7496         idle_id, to deal with obsolete, broken C libraries.
7497
7498 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
7499
7500         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
7501         allocation->x/y twice!
7502
7503         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
7504         consistent with gtk_vscale_pos_trough().
7505
7506 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
7507
7508         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
7509         be queueing a resize on a toplevel container between
7510         the time we show it and when we map it. So, we need
7511         to test GTK_WIDGET_VISIBLE() for toplevels, and only
7512         use GTK_WIDGET_DRAWABLE() for child windows.
7513
7514 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
7515
7516         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
7517         (fixes bug #2144)
7518
7519 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
7520
7521         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
7522         container DRAWABLE (instead of VISIBLE), so we don't queue
7523         resizes on non-toplevel containers.
7524
7525 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
7526
7527         * gtk/gtkselection.[ch]: Make the data argument
7528         const guchar *.
7529
7530 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
7531
7532         * gtk/gtkwindow.c: Try to behave sensibly if 
7533         the focus widget is the window itself. (Should
7534         we allow this at all?)
7535
7536 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
7537
7538         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
7539         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
7540         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
7541         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
7542         in prototypes and implementations consistent (Tomas Ogren).
7543
7544         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
7545         before the widget is unparented (reported by damon).
7546
7547         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
7548         since we provide unsigned data anyways.
7549
7550 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
7551
7552         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
7553         the call to gtk_tooltips_layout_text() until later.
7554
7555         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
7556         Call gtk_widget_ensure_style() before using the style.
7557
7558 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
7559
7560         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
7561         for old widgets that don't propagate draws to all
7562         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
7563
7564 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
7565
7566         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
7567         for a redraw but just the widget that requested the resize.
7568
7569 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
7570
7571         * gtk/gtkcontainer.c: added new widget level method
7572         gtk_container_set_reallocate_redraws() and a GtkContainer flag
7573         reallocate_redraws : 1 to reflect the setting, exported this through
7574         the argument system as a boolean ::reallocate_redraws.
7575
7576         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
7577         on the widget because the allocation changes, do so as well for
7578         widget->parent if the parent has reallocate_redraws set to TRUE.
7579         with that containers requesting reallocation redraws get automatically
7580         redrawn if their children changed allocation (this unfortunately
7581         affects also other children that didn't change allocation, but we
7582         cannot work around that before 1.3).
7583
7584 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
7585
7586         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
7587         _and_ height are >0 (not _or_).
7588
7589         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
7590         instead of gtk_container_queue_resize(), which is a core gtk internal
7591         function (must have been on crack when i queued that).
7592
7593         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
7594         we can check more reliably if we want to discard expose events.
7595         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
7596         flag.
7597         
7598         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
7599         we simply trust these events. for deciding whether to discard exposes,
7600         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
7601         
7602 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
7603
7604         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
7605         queues of areas that are completely off screen.
7606
7607         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
7608         logic for handleboxes.
7609
7610         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
7611         check on width/height.
7612
7613 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
7614
7615         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
7616         we are fine with using $@ the way we do (if we actually encounter
7617         brokeness with $@ in VPATH builds because of additional path prefixes,
7618         we need to use $(@F) actually).
7619
7620 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
7621
7622         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
7623         short lived bugs, that would allow language bindings to do surgeries
7624         to our guts.
7625
7626 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
7627
7628         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
7629         where comparison was being done against an uninitialized
7630         value causing intermittant results depending on
7631         compiler flags. Also make it clearer that we aren't
7632         ever initializing the child as 0x0 (though this will
7633         be caught in gtk_widget_size_allocate())
7634
7635 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
7636
7637         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
7638         gtk_window_unset_transient_for() call after we do checks
7639         involving the old transient parent.
7640         [ From Lance Capser <lmc@cyberhighway.net> ]
7641
7642 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
7643
7644         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
7645         an empty file.
7646
7647 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
7648
7649         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
7650         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
7651
7652 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
7653
7654         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
7655         `$@' is valid only in the build dir, not after we've done 
7656         `cd $srcdir'.  Also use `test -f' instead of less portable
7657         `test -e'.
7658
7659 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
7660
7661         * gtk/gtktext.c (correct_cache_insert): Rewrite
7662          for simplicity, and hopefully correctness.
7663          (Fixes bug #1322, which was a segfault when
7664           on some insertions with the properties around
7665           the insertion set up just wrong.)
7666
7667         * gtk/gtktext.c (gtk_text_adjustment): When we receive
7668          a "changed" signal, clamp the new value to the adjustment
7669          bounds to avoid segfaulting if someone tries to change
7670          the adjustment to a bogus value. (Bug #1795)
7671
7672 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
7673
7674         * gtk/gtkmain.c: Ignore unexpected destroy notifies
7675         for children, for toplevel windows handle them
7676         like delete_event.
7677
7678         * gtk/gtkplug.c: Add an unrealize handler so that
7679         we unref plug->socket_window when we are done
7680         with it.
7681
7682 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
7683
7684         * gtk/gtktext.c (clear_area): Fix stupid signedness
7685          problem that was causing background to sometimes
7686          be misaligned.
7687
7688 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
7689
7690         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
7691         
7692         * gtk/gtkmenu.c (gtk_menu_position): Make
7693          sure we never position menus with negative x, y,
7694          since gtk_widget_set_uposition() can't handle that.
7695
7696         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
7697          Modify the positioning code a bit so that we always
7698          put the top-left corner onscreen. (This is for
7699          UI reasons, gtk_menu_position() now takes care of
7700          gtk_widet_set_uposition() brokeness.)
7701
7702 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
7703
7704         * gtk/Makefile.am: fixed up things for -jx, x > 1.
7705
7706 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
7707
7708         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
7709           RC style that is passed in. The lack of the ref
7710           before was a bug. If people worked around this
7711           bug, this will introduce a slight memory leak
7712           in their code. The code should typically look like:
7713
7714             rc_style = gtk_rc_style_new ();
7715             [...]
7716             gtk_widget_modify_style (widget, rc_style);
7717             gtk_rc_style_unref (rc_style);
7718
7719         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
7720           the style if it was already set.
7721
7722         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
7723           style if it was set before.
7724
7725 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
7726
7727         * gtk/testgtk.c (main): Add a check to see if we
7728           are being run from the correct directory and
7729           to quit nicely if we are not.
7730
7731         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
7732           static.
7733
7734 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
7735
7736         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
7737
7738         * gtk/gtkwindow.c:
7739         queue resizes unconditionally (gtk_widget_queue_resize will figure
7740         what to do if the window is not realized).
7741         (gtk_window_move_resize): only recenter the window
7742         for GTK_WIN_POS_CENTER_ALWAYS.
7743         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
7744         the same way as GTK_WIN_POS_CENTER.
7745
7746 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
7747
7748         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
7749         with (!(info->last_flags & GDK_HINT_POS)) instead of
7750         (!info->last_flags & GDK_HINT_POS).
7751
7752         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
7753         new_height unconditionally, because we use these values even if
7754         !default_size_changed && !hints_changed.
7755         comented the (default_size_changed || hints_changed) case with
7756         respect to resize rejects from the window manager.
7757
7758         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
7759         in the zvt condition hack, since this includes the window hints, set
7760         the hints after the handling_resize case.
7761
7762         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
7763         window is initially shown with to the geometry.
7764
7765 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
7766
7767         * gtk/gtkwindow.c (gtk_window_move_resize):
7768         s/size_changed/default_size_changed/g so i know what's
7769         really going on (frying brain on smaller flame now).
7770
7771 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
7772
7773         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
7774         we have size_changed upon handling_resize. this is a gross
7775         workaround for the broken zvt widget and should be removed in
7776         1.3 again (search for FIXME).
7777         Owen provided an accurate comment for this:
7778
7779         /* We could be here for two reasons
7780          *  1) We coincidentally got a resize while handling
7781          *     another resize.
7782          *  2) Our computation of size_changed was completely
7783          *     screwed up, probably because one of our children
7784          *     is broken. It's probably a zvt widget.
7785          *
7786          * For 1), we could just go ahead and ask for the
7787          * new size right now, but doing that for 2)
7788          * might well be fighting the user (and can even
7789          * trigger a loop). Since we really don't want to
7790          * do that, we requeue a resize in hopes that
7791          * by the time it gets handled, the child has seen
7792          * the light and is willing to go along with the
7793          * new size. (this happens for the zvt widget, since
7794          * the size_allocate() above will have stored the
7795          * requisition corresponding to the new size in the
7796          * zvt widget)
7797          *
7798          * This doesn't buy us anything for 1), but it shouldn't
7799          * hurt us too badly, since it is what would have
7800          * happened if we had gotten the configure event before
7801          * the new size had been set.
7802          */
7803
7804 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
7805
7806         * gtk/gtkrc.c: deal properly with the fact that RC
7807           style lists may include rc styles more than once.
7808
7809         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
7810           unused static function.
7811
7812         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
7813           stack of directories of RC files currently being
7814           parsed and implicitely add them to pixmap path.
7815           
7816           This fixes a bug where the directory would get
7817           appended then overwritten by pixmap_path declarations.
7818
7819           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
7820
7821         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
7822           theme's exit function. (Patch from Peter Wainwright,
7823           bug #1454)
7824
7825         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
7826           Add a destroy() handler to take care of removing
7827           group for menu item. (Fixes bug #1197)
7828
7829         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
7830           in warning message.
7831
7832 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
7833
7834         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
7835         roundtrip to figure window's width and height, since we know that
7836         anyways from widget->allocation.
7837
7838 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
7839
7840         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
7841           the hints after we request the new size.
7842
7843 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
7844
7845         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
7846           GTK_WIDGET_REALIZED() assertion - we can compute the
7847           hints before we are realized.
7848
7849         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
7850           hint changing so that we have a value of hints_changed
7851           when we decide whether to constrain the window size.
7852
7853         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
7854
7855         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
7856         change back to G_MAXINT.
7857
7858 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
7859
7860         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
7861         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
7862         contain uncluttered values.
7863         (gtk_window_compute_hints): simply assert that window is realized
7864         and that geometry_info is valid, since we rely on this anyways.
7865         (gtk_window_constrain_size): major cleanups to the code.
7866         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
7867         for the base size, instead of the minimums. use 32767 as max width
7868         and height (like in gtkwindow.c) instead of G_MAXINT.
7869
7870 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
7871
7872         * cleaned up the GtkContainer.need_resize flag handling mess, we
7873         only need to force resize requests when we were prematurely
7874         realized, or our widget tree was modified when we were temporarily
7875         hidden. handling these cases directly upon showing the window (i.e.
7876         while the GdkWindow is still unmapped) avoids the need to wait for
7877         a configure event response and therefore makes the GUI more snappier
7878         and avoids blank windows during the roundtrip.
7879
7880         * gtk/gtkwidget.c:
7881         (gtk_widget_hide): 
7882         (gtk_widget_show): don't queue resizes on toplevels, they know how
7883         to deal with matters.
7884
7885         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
7886         flag directly for not visible resize containers and spare us unecessary
7887         signal emissions.
7888
7889         * gtk/gtkwindow.c:
7890         (gtk_window_realize): if we need to enforce premature size allocation,
7891         queue a container resize so we are correctly resized later on.
7892         (gtk_window_init):
7893         (gtk_window_size_request):
7894         don't freak around with the ->need_resize flag,
7895         gtk_container_queue_resize() will care about that.
7896         (gtk_window_show):
7897         handle initial resizing issues here, we can handle matters better in
7898         this place, especially since we know that our GdkWindow is still
7899         unmapped.
7900         (gtk_window_move_resize):
7901         don't care about ->need_resize at all.
7902         handle size changes properly that occoured while we waited for a
7903         configure event.
7904
7905 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
7906
7907         * gtk/gtkwidget.c (gtk_widget_set_uposition):
7908         * gtk/gtkwindow.[hc] (gtk_window_reposition):
7909         Move the hint setting code from gtk_widget_set_uposition
7910         to here; set the hints so that we respect any previously
7911         set geometry hints.
7912
7913         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
7914         change the window hints here or move the window here,
7915         let that happen in gtk_window_move_resize().
7916
7917 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
7918
7919         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
7920         to already queued resizes (and therefore redraws) on a widget, check
7921         its anchestry as well.
7922
7923         * gtk/gtkcontainer.c:
7924         (gtk_container_queue_resize): clear resize widgets for resize
7925         containers before aborting prematurely. this is especially important
7926         for toplevels which may need imemdiate processing or their resize
7927         handler to be queued.
7928         (gtk_container_dequeue_resize_handler): added new internal function for
7929         gtkwindow.c.
7930
7931         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
7932         configure event, take possible changes in window position into account
7933         as well.
7934         if we request a new window size, queue up a resize handler that will
7935         last until the configure event response arrives.
7936         combined the ->need_resize case (initial show) with the general size
7937         (hints) changed case and added even more comments.
7938         if !auto_shrink, only revert to the old allocation if the new size
7939         is smaller than the current allocation.
7940
7941 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
7942
7943         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
7944                            gtk_window_set_geometry_hints
7945                            gtk_window_set_default_size):
7946         When hints are set, queue a resize so that the hints will
7947         be eventually reset on the toplevel.
7948
7949         * gtk/gtkwindow.c (gtk_window_show): Use
7950         gtk_window_compute_default_size(). Clear the need_resize flag
7951         on the initail map so that we don't unnecessarily trigger the
7952         resize code.
7953
7954         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
7955         into separate functions. Compare the hints we are setting
7956         with what we set last time so that we can accurately
7957         tell when we need to reset the hints.
7958
7959         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
7960         function to figure out the size from requisition
7961         and default_size.
7962
7963         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
7964         from fvwm to constrain a size to the geometry hints.
7965
7966         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
7967         to compare two sets of geometry hints.
7968
7969         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
7970         from gtk_window_set_hints(), just compute the hints,
7971         don't set them.
7972
7973         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
7974         code from gtk_window_move_resize() to separate function,
7975         rationalize a bit.
7976
7977 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
7978
7979         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
7980         structure into a new private structure.
7981
7982         * gtkrc.c: Split GtkRcStyle into public/private.
7983         In the private part, add a list of pointers to the
7984         RcStyle lists this RcStyle participates in.
7985
7986         * gtkrc.c: When a RcStyle is free, remove all
7987         lists referencing it from the 
7988         realized_style_ht hash, and free those lists.
7989         
7990         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
7991         gtk_rc_init(), since that adds the default styles
7992         to the list of parsed RC files again.
7993
7994         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
7995         
7996 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
7997
7998         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
7999         checks that ensure that a widget's allocation is at least 1 in width
8000         and height. (GNOME note: this doesn't affect old panel code anymore,
8001         because GtkSocket will request width and height of at least 1 since
8002         Fri Jul 23).
8003
8004         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
8005         allocated yet (happens if the user realizes the window prematurely),
8006         size request and allocate it.
8007         (gtk_window_size_allocate): guard against guint underflows.
8008
8009 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
8010
8011         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
8012         in gtk_built_sources, so gtk.defs gets built prior to all other
8013         sources.
8014
8015 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
8016
8017         * gtk/Makefile.am:
8018         invoke indent on gtkmarshal.*. 
8019         rewrote source generation rules, use COPYING as oldest source tag for
8020         a piggyback rule to generate all sources from (don't touch it ;).
8021         major cleanups, strip spaces on build rules for GNU Make.
8022
8023         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
8024         source and target files from commandline arguments. don't invoke indent.
8025
8026 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
8027
8028         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
8029         notebook after switch to avoid drawing problems.
8030         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
8031         
8032         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
8033         show them instead. 
8034         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
8035
8036 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
8037
8038         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
8039         notebook after switch to avoid drawing problems.
8040         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
8041         
8042         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
8043         show them instead. 
8044         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
8045
8046 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
8047
8048         * gtk/gtkwindow.c:
8049         we use window->need_resize from configure_event now, to indicate that
8050         the gtkwindow should keep its allocation (e.g. because the user resized
8051         the window through window manager handles). resize_count is now reliably
8052         used to figure whether we got the allocation we requested from the
8053         window manager.
8054         configure events get queued as resizes now, the real stuff (size
8055         computation and allocation) now only goes on in gtk_window_move_resize().
8056         GtkWindow's requisition now contains its *real* requisition (like all
8057         other widgets), *not* taking usize into account.
8058         geometry_info->last_{width|height} is now updated from set_hints() only
8059         so it always contains the last hints we set for the window manager.
8060         made some event handlers return TRUE instead of FALSE.
8061         the overall code should be much more straight forward now, and the
8062         significant code portions are accompanied by comments now.
8063         (gtk_window_set_hints):
8064         removed requisition argument and made it
8065         fetch the requisition through gtk_widget_get_child_requisition.
8066         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
8067         does that now.
8068         (gtk_window_show):
8069         ensure that the widget is realized before calling 
8070         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
8071         ensure that we got properly size requested and allocated before
8072         realization.
8073         (gtk_window_configure_event):
8074         ignore plain window moves, or reallocate the widget tree through the
8075         resize queue otherwise.
8076         (gtk_window_move_resize):
8077         mostly rewrote this function to figure window manager hints more
8078         reliably, coalesce window moves and resizes to reduce configure events
8079         and do actuall size allocations.
8080
8081 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
8082
8083         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
8084         that have a resize pending, because a redraw is already queued for them.
8085
8086         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
8087         hack to clear resize_widgets.
8088
8089         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
8090         for resize containers prior to size allocation. (this is also a bit
8091         ugly, but avoids side effects for stopped emissions and is thus more
8092         reliable).
8093         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
8094
8095         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
8096         function from gtk_tooltips_expose, as we connect to ::expose_event
8097         *and* ::draw now.
8098
8099 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
8100
8101         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
8102         checks.
8103         (gtk_target_list_unref): Likewise.
8104
8105         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
8106
8107 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
8108
8109         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
8110         guard against division by zero. (Fixes bug #1339)
8111
8112 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
8113
8114         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
8115         Prevent the trivial leak of information of allowing
8116         word motion when the entry is not visible.
8117
8118 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
8119
8120         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
8121         modality to error dialog as well as confirmation dialogs.
8122         (Bug #1803, reported by Rosanna Wing Sze Yuen)
8123
8124 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
8125
8126         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
8127         tree->view_lines.
8128         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
8129
8130         * gtk/Makefile.am (install-data-local): Solaris apparently
8131         has various troubles with ln -f; use rm first instead.
8132         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
8133
8134 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
8135
8136         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
8137         use `cp' followed by `rm' (the `rm' was already there).
8138
8139 July 30, 1999 Elliot Lee <sopwith@redhat.com>
8140         
8141         * configure.in: Fix autoconf warnings about cross compilation by
8142         trying to provide sane defaults for AC_TRY_RUN.
8143         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
8144         put them into $(srcdir) when generated. Also add a dependency of
8145         gtksignal.h on gtkmarshal.h for -j builds. 
8146         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
8147
8148 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
8149
8150         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
8151         GDK_THREADS_{LEAVE,ENTER} pair.
8152         (From Paul Fisher <pnfisher@redhat.com>)
8153
8154 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
8155
8156         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
8157         width and height are always >0 (owen).
8158
8159 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
8160
8161         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
8162         change that assured that a widget's allocated with and height are
8163         always >1, since this breaks *buggy* panel code. unfortunately this
8164         back-breaks the gimp's color selector.
8165
8166         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
8167         allocation is always >0 in width and height, before sending the
8168         configure event; this is a *gross* hack to get the gimp back to work.
8169         
8170         * marked both cases with TODO-1.3
8171
8172 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
8173
8174         * gtk/gtktext.c: Don't display wrap indicators when
8175         text is not editable and word wrap is on.
8176
8177 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
8178
8179         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
8180         option menus here as they are not derived from menu shell, assure that
8181         the option menu has a menu we can add items to.
8182
8183 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
8184
8185         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
8186         width/height to (gint) before calculations and check against < 0 to
8187         avoid guint wraparounds.
8188
8189 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
8190
8191         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
8192         width and height is never zero. sanity check both dimensions against
8193         32767 and issue a warning if the allocation is greater than that.
8194
8195 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
8196
8197         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
8198         to g_main_pending() as well.
8199
8200 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
8201
8202         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
8203         call to g_main_iteration() - since that will regrab
8204         GTK+ lock to process events.
8205
8206 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
8207
8208         * gtk/gtkwindow.c
8209         - Regularize with the rest of GTK+ by making widget->requisition
8210           not reflect the set_usize()
8211         - Always recompute geometry hints, then check if they
8212           changed before sending them to the X server. The
8213           previous checks for changes would fail in a number
8214           of circumstances. 
8215
8216 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
8217
8218         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
8219
8220 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
8221
8222         * gtk/gtkdnd.c:
8223         - Code cleanups
8224         - Instantaneously update on modifier key presses
8225         - Allow cancellation of the drag with Escape.
8226
8227 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
8228
8229         * gtk/testgtk.c (create_handle_box): Set the policy
8230         to auto_shrink - otherwise the appearance is rather
8231         strange when flipping between horizontal and vertical.
8232
8233 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
8234
8235         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
8236         (gtk_window_set_default_size): don't change a value if it's < 0.
8237         queue a resize.
8238
8239 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
8240
8241         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
8242
8243 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
8244
8245         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
8246         add an extra "/" when concating "/" + filename.
8247         (From Matt Grossman <mattg@oz.net>)
8248
8249 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
8250
8251         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
8252         for fg_gc if we set it for drawing pixmap.
8253
8254 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
8255
8256         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
8257         
8258         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
8259         already set, call old engine's destroy function and
8260         unref the old engine.
8261
8262 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
8263
8264         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
8265
8266 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
8267
8268         * gtk/gtkaccelgroup.h: mark certain functions as internal.
8269
8270 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
8271
8272         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
8273         expand behaviour changed.
8274
8275         * gtk/gtklabel.c (gtk_label_set_pattern):
8276         (gtk_label_set_justify):
8277         (gtk_label_set_line_wrap):
8278         don't bother invoking queue_clear, the reallocation does
8279         that for us, always free_words so the upcoming resize will
8280         relayout the label's contents.
8281
8282 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
8283
8284         * applied argument implementation patches from Elena Devdariani
8285         <elena@cogent.ca>.
8286
8287         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
8288         ::space_style, ::relief
8289         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
8290         * gtk/gtkpreview.c: ::expand
8291         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
8292         * gtk/gtknotebook.c: ::homogeneous
8293         * gtk/gtklabel.c: ::wrap
8294         * gtk/gtklist.c: ::selection_mode
8295         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
8296         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
8297         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
8298         * gtk/gtkclist.c: ::sort_type
8299         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
8300         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
8301
8302 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
8303
8304         * gtk/gtkstyle.c: Removed ill-thought-out part of last
8305         comment.
8306
8307 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
8308
8309         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
8310         counting right when we have to attach a new style
8311         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
8312
8313         * gtk/gtkstyle.c: Documented the refcounting
8314         peculularities of gtk_style_attach.
8315
8316 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
8317
8318         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
8319         window types.
8320
8321         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
8322         of GTK_TOPLEVEL for creating the window.
8323
8324 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
8325
8326         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
8327         the last argument (reported by Per Winkvist).
8328         
8329 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
8330
8331         Fixes for invisible XOR lines (Frank Loemker
8332         <floemker@TechFak.Uni-Bielefeld.DE>)
8333         
8334         * gtk/gtkclist.c (gtk_clist_realize): Always use
8335         a non-zero pixel for GDK_XOR.
8336
8337         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
8338         Use GDK_INVERT instead of GDK_XOR.
8339
8340 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
8341
8342         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
8343         signals if h/voffsets differ from adjustment values.
8344         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
8345
8346 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
8347
8348         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
8349         ::selection-done emissions up to the topmost menu shell.
8350
8351 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
8352
8353         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
8354         the user data on the window before destroying it.
8355
8356         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
8357         unrealize handler to take care of destroying 
8358         notebook->panel properly. 
8359         (Bug #1198 - Morten Welinder <terra@diku.dk>)
8360
8361         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
8362         of g_new and g_realloc to stop memory leak. (Actually,
8363         we could just use g_realloc(), but I'm not 100% sure
8364         that is portable).
8365         (Bug #1196 - Morten Welinder <terra@diku.dk>)
8366
8367 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
8368
8369         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
8370
8371         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
8372         for fontsets.
8373
8374         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
8375         with bin/button confusion.
8376
8377 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
8378
8379         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
8380         and show how preselection of radio items is done.
8381
8382 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
8383
8384         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
8385         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
8386         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
8387         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
8388         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
8389         * gtk/gtktable.c (gtk_table_attach): 
8390         * gtk/gtklist.c (gtk_list_insert_items): 
8391         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
8392         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
8393         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
8394         * gtk/gtkbin.c (gtk_bin_add): 
8395         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
8396         * gtk/gtkfixed.c (gtk_fixed_put): 
8397         * gtk/gtklayout.c (gtk_layout_put):
8398         general fixups to container_add logic. always realize child if
8399         child->parent is realized, only map the child and queue a resize
8400         if child and child->parent are both visible.
8401
8402 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
8403
8404         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
8405         instead of gtk_container_foreach to walk and unrealize children, so
8406         composite children get also unrealized.
8407         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
8408         (gtk_widget_map): assert that the widget is visible (basic constrain).
8409         (gtk_widget_real_map): assert that the widget is realized (basic
8410         constrain).
8411
8412 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
8413
8414         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
8415
8416 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
8417
8418         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
8419         file for iso-8859-2 locales.
8420
8421         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
8422
8423 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
8424
8425         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
8426          (Pointed out by andy@rz.uni-karlsruhe.de and others).
8427          Remove some suspicious and useless lines. 
8428
8429 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
8430
8431         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
8432         width,height = 0, 0 to mean - here to edge of window,
8433         instead of -1, -1, since the former is all we support.
8434
8435 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
8436
8437         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
8438         when removing from quit_functions list.
8439
8440 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
8441
8442         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
8443
8444 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
8445
8446         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
8447          When redrawing characters on non-visible entry, use appropriate
8448          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
8449
8450 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
8451
8452         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
8453         from drag coordinates.
8454         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
8455         use drag_dest_cell.
8456
8457         * gtk/gtktree (drag_dest_cell)
8458         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
8459         (Bug #1129)
8460
8461 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
8462
8463         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
8464         translate_* fields.
8465         (gtk_item_factory_finalize): invoke translate_notify independant from
8466         translate_data.
8467         (gtk_item_factory_set_translate_func): likewise.
8468         (gtk_item_factory_destroy): only remove ifactory pointer from those
8469         widgets that belong to us (stupid me).
8470
8471 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
8472
8473         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
8474         rc_style list when lookup succeeeds.
8475
8476 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
8477
8478         * gtk/gtkctree.c (resync_selection): 
8479         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
8480         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
8481         bug.
8482
8483 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
8484
8485         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
8486         Add some missing GDK_THREADS_ENTER()/LEAVE around
8487         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
8488
8489 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
8490
8491         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
8492         rather than emit_by_name.
8493
8494         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
8495         on the widget across multiple signal emissions.
8496         (gtk_editable_delete_text): same here.
8497         (gtk_editable_class_init): set widget_class->activate_signal after
8498         editable_signals[ACTIVATE] has been created.
8499
8500 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
8501
8502         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
8503         position here prematurely -- we might not have the
8504         right ->min_position and ->max_position yet.
8505
8506 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
8507
8508         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
8509         Add error traps so if the other end of the connection
8510         dies, we survive.
8511
8512         * gtk/gtkselection.c (gtk_selection_notify): Clean
8513         up properly when selection property retrieval fails.
8514         
8515         * gtk/gtkselection.c (gtk_selection_request): Correctly
8516         reject SelectionRequest notifies where the handler
8517         returns no data.
8518
8519 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
8520
8521         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
8522         when we've previously highlighted.
8523
8524         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
8525         emit two "drag_leave" signals for Motif drops.
8526
8527         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
8528         back the correct status messages when dropping from
8529         Motif onto a proxy window that is rejecting the
8530         drop.
8531
8532 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
8533
8534         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
8535         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
8536         to compare two argument values. added gtk_arg_to_valueloc() to set a
8537         variable from an arg through its location (pointer).
8538
8539         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
8540         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
8541         as gfloat*, uchars are collected as guchar*, ints are collected as
8542         gint*, etc...
8543
8544 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
8545
8546         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
8547         Include <string.h> instead of <strings.h>.
8548
8549         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
8550         (actually, a lot more duplicate includes occur if
8551          you trace through the sequence of #include's)
8552         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
8553         
8554 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
8555
8556         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
8557         gtk-a-higuti-990322-[0-3]
8558
8559         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
8560         that was causing -DX_LOCALE not to work.
8561
8562         * gtk/gtkrc.c (gtk_rc_init):
8563         X_LOCALE will never have LC_MESSAGES defined
8564
8565 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
8566
8567         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
8568         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
8569
8570         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
8571         left/right as well (gtk-michael-980726-0.patch.gz).
8572
8573         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
8574         for pointer values, use gchar instead of char. fixed uline allocation
8575         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
8576         chunks instead of G_ALLOC_ONLY.
8577         (gtk_label_size_request): always alter requisition as passed and leave
8578         widget->requisition alone.
8579         (gtk_label_set_text): allow NULL strings.
8580         (gtk_label_new): likewise.
8581
8582 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
8583
8584         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
8585
8586 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
8587
8588         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
8589         *and* mapped (i.e. drawable).
8590         (gtk_bin_expose): only send exposes to drawable children.
8591
8592         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
8593         (gtk_box_expose): only send exposes to drawable children.
8594
8595         * gtk/gtkhscale.c (gtk_hscale_draw): 
8596         * gtk/gtkvscale.c (gtk_vscale_draw):
8597         hm, this is an ugly one. we first compute the size of our trough area
8598         here (window relative) and then check intersection with the draw_area
8599         which is parent relative because we're a NO_WINDOW widget, so we need
8600         to offset the trough area by allocation.x and allocation.y before the
8601         check. (this must not be done for the background area though, since
8602         that's already computed parent relative).
8603
8604 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
8605
8606         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
8607         unrealize title buttons.
8608
8609 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
8610
8611         * gtk/gtkclist.c (gtk_clist_column_title_passive)
8612         (gtk_clist_column_title_active): 
8613         only connect/disconnect to GtkWidgetClass::event to block mouse events.
8614
8615         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
8616         zero initialize event, removed superfluous gdk_window_get_pointer call
8617
8618         * gtk/gtklist.c (gtk_list_vertical_timeout)
8619         (gtk_list_horizontal_timeout): removed superfluous
8620         gdk_window_get_pointer call
8621
8622 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
8623
8624         * plugging problems reported by "Bruce Mitchener, Jr."
8625         <bruce@puremagic.com> due to a purify session.
8626
8627         * gtk/gtkstyle.c:
8628         (gtk_style_ref): 
8629         (gtk_style_unref): assert ref_count to be > 0.
8630
8631         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
8632         the requisition.
8633         (gtk_clist_set_shift): likewise.
8634
8635         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
8636         adjustments.
8637
8638         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
8639         event before sending it and set send_event to TRUE (which needs to
8640         be done for *all* synthesized events).
8641         (gtk_list_vertical_timeout): likewise.
8642
8643         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
8644         leaks.
8645
8646         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
8647         to TRUE when synthesizing events.
8648
8649 [ *** end of merges from 1.2 *** ]      
8650         
8651 1999-11-21  Tor Lillqvist  <tml@iki.fi>
8652
8653         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
8654         (or copied from gdkconfig.h.win32 on Win32, sigh).
8655
8656         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
8657
8658         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
8659
8660         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
8661
8662         * gdk/gdkconfig.h.win32: New file.
8663
8664         * gdk/win32/makefile.cygwin: Build just a static archive here.
8665
8666         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
8667         for the DLL from the static archive built above.
8668
8669         * gdk/gdk.def: Moved here from the win32 subdirectory.
8670
8671         * gdk/win32/*: Adapt for the changed private struct organisation.
8672
8673         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
8674
8675 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
8676
8677         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
8678         for wheel mice (buttons 4 and 5).
8679
8680 1999-11-18  Tor Lillqvist  <tml@iki.fi>
8681
8682         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
8683         drawables use just the pixel field in the foreground and
8684         background GdkColor of the GdkGC.
8685
8686         gdk_gc_set_{fore,back}ground() are called in the GIMP with
8687         GdkColors containing uninitialized (red,green,blue) fields, and
8688         just the pixel field filled in, and furthermore in the
8689         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
8690         It thus turns out that we really don't need to have the full
8691         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
8692         it later to have just the pixel values.
8693
8694 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8695
8696         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
8697
8698 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
8699
8700         * docs/gtkfaq.sgml: threads example from Erik Mouw.
8701         New question on GtkLabel background colors.
8702
8703         * docs/gtk_tut.sgml:
8704           - Correct the example code callback
8705             function definitions.
8706           - Update the gtkdial example code, from Frans van Schaik.
8707           - Update setselection.c to current API.
8708
8709         * examples/Makefile examples/*/*.c: Update to code
8710         listed in tutorial.
8711
8712 1999-11-10  Tor Lillqvist  <tml@iki.fi>
8713
8714         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
8715         subrange table (from the "Developing International Software for
8716         WIndows 95 and Windows NT" book) was missing the Hangul syllable
8717         block... Get the loaded font's charset correctly.
8718
8719         (Note that this, and the other *-win32.c files, still really are
8720         the old ones, the win32 subdirectory is not ready for compilation
8721         yet after the reorg.)
8722
8723 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
8724
8725         * gtk/gtkclist.c: Fix off-by-one bug in parameter
8726         check.
8727
8728 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
8729
8730         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
8731         on results of XQueryDeviceState().
8732
8733 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
8734
8735         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
8736         we need to accesss only ->children. We need an accessor
8737         for the children.
8738
8739         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
8740         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
8741         to get rid of gdkx.h include.
8742         
8743         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
8744         and random references to 'None'.
8745
8746         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
8747         Get rid of unused #include <gdk/gdkx.h>
8748
8749         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
8750         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
8751         gdkconfig.h.
8752
8753 1999-11-08  Tor Lillqvist  <tml@iki.fi>
8754
8755         * gdk/win32/gdkdraw.c
8756         * gdk/win32/gdkfont.c
8757         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
8758         following yesterday's changes. (Unrelated to Owen's reorg.)
8759
8760 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
8761
8762         * gdk/x11/gdkinput-gxi.c: Add missing include,
8763           fix GdkWindowPrivate => GdkDrawablePrivate.
8764
8765         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
8766
8767         * gdk/x11/Makefile.am (xinput_sources): Add missing
8768         backslash to fix building with --with-xinput=none
8769
8770 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
8771
8772         Move all X specific code into the x11/ directory.
8773         Aside from shuffling things around, did the following:
8774
8775        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
8776          gdk_arg_context_* - a simple argument parsing system
8777          in the style of popt.
8778
8779        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
8780          gdk/x11/gdkprivate-x11.h:
8781          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
8782          add ->klass and ->klass_data fields. The klass_data
8783          field points to an auxilliary structure that is
8784          windowing system dependent.
8785
8786        * gdk/gdkfont.c: Make most of the measurement functions
8787          simply wrappers around gdk_text_extents().
8788
8789        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
8790          _gdk_font_strlen() function that hides the weird
8791          behavior in gtk+-1.[02] where a string is interpreted
8792          differently for 8-bit and 16-bit fonts.
8793
8794        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
8795          to store common code for synthesizing double/triple
8796          press events.
8797         
8798        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
8799          Make all the function that modify an existing GC
8800          simply wrappers around gdk_gc_set_values().
8801          
8802        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
8803          for throwing out later.
8804
8805        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
8806          GdkImagePrivate and GdkColormapPrivate to have a
8807          windowing system dependent part (GdkFontPrivateX etc.)
8808          that "derives" from the system-independent part.
8809
8810        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
8811          Got rid of the included-source-files for XInput in
8812          favor of automake conditionals. (Which didn't exist
8813          when XInput support was originally added.)
8814
8815        * gdk/gdkrgb.c: Remove the visual id from the debugging
8816          statements since that is X11 specific; print out
8817          type/depth info instead.
8818          
8819
8820 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
8821
8822         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
8823         loading duplicates of hashed fonts.
8824
8825         * gdk/gdk.c (gdk_keysym_convert_case): rename
8826         gdk_XConvertCase to gdk_keysym_convert_case, allow
8827         results to be NULL in the GTK+ style.
8828
8829         * gdk/gdkcompat.h: Started compatibility header
8830         for renames.
8831
8832 1999-11-07  Tor Lillqvist  <tml@iki.fi>
8833
8834         * gdk/win32/gdkprivate.h: New font private structures, related to
8835         fontsets.
8836
8837         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
8838         gdk_font_list_free(). On X11, will just be wrappers to
8839         XListFonts() and XFreeFontNames(). On Win32, the code previously
8840         in gtkfontsel.c is now here.
8841
8842         New function gdk_font_xlfd_create(). On X11 will get the FONT
8843         property of the font (for GDK_FONT_FONTs), or call
8844         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
8845         builds a XLFD style name from the font information in the LOGFONT
8846         struct(s).
8847
8848         New function gdk_font_xlfd_free(), which correspondingly frees the
8849         string returned by gdk_font_xlfd_create().
8850
8851         Implement fontsets on Win32. Add a function that iterates over a
8852         wide char string and calls a callback function for each substring
8853         of wide chars from the same Unicode subrange (and thus probably
8854         available in the same real font).
8855
8856         Improve the XLFD emulation a bit.
8857
8858         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
8859
8860         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
8861         Beta3, WM_IME_CHAR messages don't seem to contain the composed
8862         multi-byte char as with the Active IMM on Win9x. Oh well, handle
8863         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
8864         ImmGetCompositionStringW() to get the composed Unicode chars.
8865
8866         * gdk/win32/gdkgc.c
8867         * gdk/win32/gdkdraw.c: Changes needed because of the font private
8868         struct changes.
8869
8870         * gdk/win32/gdk.def: Add the new functions.
8871
8872 1999-11-04  Tor Lillqvist  <tml@iki.fi>
8873
8874         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
8875         get the Platform SDK to get <dimm.h>.
8876
8877         * gdk/win32/gdkevents.c: More event handling fixes and
8878         simplification. Never generate motion events with is_hint true. We
8879         used to do that on bogus grounds earlier. Windows sends
8880         WM_MOUSEMOVE messages on button events even if the mouse hasn't
8881         moved, ignore these.
8882
8883         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
8884
8885         * gdk/win32/gdkglobals.c
8886         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
8887         the TrackMouseEvent function, and use it.
8888
8889         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
8890         char before calling WideCharToMultiByte in order to get a string
8891         for the window title.
8892
8893         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
8894
8895         * gdk/win32/gdk.def: Remove obsolete functions.
8896
8897         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
8898         /nodefaultlib and /defaultlib switches.
8899
8900         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
8901
8902 1999-10-31  Tor Lillqvist  <tml@iki.fi>
8903
8904         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
8905         EuroSign).
8906
8907         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
8908         same type as GdkWChar, especially on Win32.
8909
8910         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
8911
8912         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
8913         before passing to Windows GDI for drawing etc. Convert to the
8914         system default codepage before passing to Windows as window
8915         titles.
8916
8917         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
8918         support changing input locale on the fly.
8919
8920         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
8921         on-the-fly changes. Convert incoming characters from the current
8922         codepage to Unicode (and then to a UTF-8 multi-byte string) based
8923         on the current input language. Use keysym<->Unicode mapping tables
8924         and functions borrowed from xterm sources.
8925
8926         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
8927         editions of Win9x, use the ActiveX-based Active IMM (Input Method
8928         Manager) if available. IMEs and the Active IMM are available under
8929         the disguise of Chinese, Korean and Japanese support for IE and
8930         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
8931         support is present in all editions (as long as you install it).
8932
8933         Call DispatchMessage from gdk_events_queue() (and thus
8934         gdk_WindowProc()), instead of duplicating the code in
8935         gdk_WindowProc().
8936
8937         Reworked the grab handling and propagation code, factored out
8938         duplicated code snippets into separate functions. Other cleanups,
8939         too.
8940
8941         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
8942         the <dimm.h> header describing the Active IMM.
8943
8944         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
8945         just do the same as for "single" fonts.
8946
8947         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
8948         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
8949         the new keysyms from gdkkeysyms.h.
8950
8951         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
8952         fontset, so that gtkentry uses wide characters.
8953
8954         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
8955         GTk+'s system directory "gtk+", not "gtk".
8956
8957 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
8958
8959         * docs/gtkfaq.sgml: FAQ update
8960
8961 1999-10-21  Tor Lillqvist  <tml@iki.fi>
8962
8963         * gdk/win32/gdkprivate.h: Add more font private data.
8964
8965         * gdk/win32/gdkfont.c
8966         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
8967         fonts and strings. Now works much better. You still have to
8968         have a correct font selected, though. No fontset emulation yet.
8969
8970 1999-10-19  Tor Lillqvist  <tml@iki.fi>
8971
8972         * gtk/maketypes.awk: Use G_OS_WIN32.
8973
8974         * gtk/gtk.def: Add some missing entry points. Also some non-public
8975         ones, but PyGTK porter claims to need them.
8976
8977         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
8978         built-in type generation.
8979
8980 1999-10-14  Tor Lillqvist  <tml@iki.fi>
8981
8982         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
8983         GDK_FONT_FONT fonts (which is all we have for now, we don't
8984         emulate fontsets). The X11 version uses plain XDrawString in that
8985         case, too. The string passed to gdk_draw_text_wc seems to be in
8986         fact (at least, when used by gtkentry and gtktext) either in a
8987         single-byte charset, or a DBCS. Not Unicode.
8988
8989         This fixes the problem in gtkfontsel, where even if you had
8990         selected a font with a non-Latin1 charset (windows-greek, for
8991         instance), the preview still used Latin-1 glyphs.
8992
8993         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
8994         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
8995         (gdk_font_load): Recognize the demibold etc weights, even if we
8996         don't have the corresponding constants in the headers.
8997         (gdk_font_hash_insert): Use same hash mechanism as in the X11
8998         version. Should save font resources a bit, when we don't have
8999         multiple HFONTs for the same font.
9000
9001         * gdk/win32/gdkprivate.h: Add the names field as in the X11
9002         version.
9003
9004 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
9005
9006         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
9007         X values
9008
9009 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
9010
9011         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
9012         layout support (as mentioned on
9013         http://www.jcinteractive.com/gnome-ui/software/widgets/)
9014
9015 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
9016
9017         * gtk/fnmatch.c
9018         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
9019
9020 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
9021
9022         * configure.in (ALL_LINGUAS): Added Galician (gl)
9023
9024 1999-10-05  Tor Lillqvist  <tml@iki.fi>
9025
9026         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
9027
9028         * gdk/win32/gdkcompat.c: New file, actually provide an
9029         implementation for the deprecated functions. (Just temporarily.)
9030
9031         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
9032
9033         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
9034
9035         * gdk/win32/gdk.def gtk/gtk.def: Updates.
9036
9037 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
9038
9039         * configure.in: Added "uk" to ALL_LINGUAS.
9040         
9041 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
9042
9043         * configure.in: correct checking for BeOS check
9044
9045         * gdk/gdktypes.h
9046         * gtk/fnmatch.c
9047         * gtk/gtkfilesel.c
9048         * gtk/gtkitemfactory.c
9049         * gtk/gtkmain.[ch]
9050         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
9051
9052 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
9053
9054         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
9055         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
9056         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
9057         by Bulgarian). 
9058
9059 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
9060
9061         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
9062         Fix a reference to window_private->destroyed.   
9063
9064         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
9065         (ugly) setting of an internal GdkWindow member to use
9066         a _slightly_ cleaner macro.
9067
9068         * gdk/gdkprivate.h: Split GdkWindowPrivate into
9069         GdkDrawablePrivate and GdkWindowPrivate.
9070         Add extra macros for accessing GDK_DRAWABLE_ components.
9071
9072         * *.[ch]: Massive adjustments for the above, use the
9073         new macros in a lot of places.
9074
9075 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
9076
9077         * gdk/gdktypes.h: Make GdkDrawable the base type,
9078         not GdkWindow.
9079
9080 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
9081
9082         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
9083
9084 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
9085
9086         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
9087
9088 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
9089
9090         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
9091         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
9092
9093         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
9094
9095         * docs/gtk-config.1: Now autogenerated.
9096         * docs/Changes-1.4.txt: started
9097         
9098 1999-10-03  Tor Lillqvist  <tml@iki.fi>
9099
9100         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
9101         to #ifdef also here.
9102
9103         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
9104         Owen did to the X11 backend.
9105
9106         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
9107         ScrollWindowEx when blitting inside a window, it can't be correct
9108         in the general case.
9109
9110         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
9111         WM_GETMINMAXINFO is easier.
9112
9113         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
9114         depth equal to the bitspixel value, not the visual's depth.
9115
9116         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
9117         to 24 even if the bitspixel value is 32.
9118
9119         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
9120         need to check for depth==32 when bpp==32, depth will always be 24.
9121
9122 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
9123
9124         * docs/Changes-1.4.txt: Started
9125         
9126         * gtk/Makefile.am (gdk_headers): Include all the new headers.
9127
9128         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
9129         
9130         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
9131         into C file.
9132         
9133         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
9134         header to gdkinputprivate.h.
9135
9136         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
9137         unused since before 1.2.
9138
9139 1999-09-30  Tor Lillqvist  <tml@iki.fi>
9140
9141         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
9142         expand possible hex escapes in the font family (put there by
9143         logfont_to_xlfd if the font name isn't a legal XLFD font family,
9144         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
9145         On Win32, add hex escapes here, too.
9146
9147 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
9148
9149         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
9150         to #ifdef GDK_WINDOWING_X11.
9151
9152 [ Merges from gtk-1-2 ]
9153
9154 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
9155
9156         * configure.in: fixed "GNU Make" check to pass with new make version
9157         3.77.95.
9158
9159 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
9160
9161         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
9162         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
9163         AM_PATH_GTK() macros don't get confused by the -pre1.
9164
9165 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
9166
9167         * configure.in (REBUILD): Change check for perl5
9168           to check explicitely for v >= 5.002. (5.001
9169           does not work with our scripts.)
9170
9171 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
9172
9173         * configure.in: evaluate $PERL for the perl version check. added
9174         --disable-rebuilds to give the user an option to completely disable
9175         any source autogeneration rules.
9176
9177 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
9178
9179         * configure.in: evaluate $ac_make when checking for GNU Make.
9180
9181 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9182
9183         * docs/Makefile.am: added generation.txt.
9184
9185         * Makefile.am: require automake 1.4, build README from README.in and
9186         INSTALL from INSTALL.in in dist-hook.
9187         
9188         * README.in:
9189         * INSTALL.in: new files to autogenerate README and INSTALL from.
9190
9191         * configure.in: figure whether we have GNU Make
9192
9193         * docs/generation.txt: minor additions/corrections.
9194
9195 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
9196
9197         * docs/gtkfaq.sgml: FAQ Update
9198
9199 July 30, 1999 Elliot Lee <sopwith@redhat.com>
9200         
9201         * configure.in: Fix autoconf warnings about cross compilation by
9202         trying to provide sane defaults for AC_TRY_RUN.
9203
9204 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
9205
9206         * ltconfig
9207         * ltmain.sh: upgrade to libtool 1.3.3
9208
9209 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
9210
9211         * INSTALL: Indicate that the --with-glib= configure
9212         time flag is unsupported.
9213
9214 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
9215
9216         * docs/generation.txt: Added a file that gives
9217         documenation about the autogeneration process for
9218         various autogenerated files.
9219         
9220 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
9221
9222         * configure.in (LIBS): Look for libgmodule in the
9223         right location.
9224
9225 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
9226
9227         * docs/gtk_tut.sgml: Removed references to
9228         code examples in my directory on gtk.org as
9229         they should all be in the tutorial now.
9230
9231         * docs/gtk_tut.sgml: Added sources for dial-test
9232         and scribble-xinput programs that were previously
9233         missing.
9234
9235 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
9236
9237         * TODO: Added entry about menu keyboard navigation, removed
9238         some finished items.
9239
9240 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
9241
9242         * acinclude.m4: Standardize on func_dgettext
9243         not func_gettext, so that the checks for dgettext
9244         actually are paid attention to.
9245
9246 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
9247
9248         * configure.in (LIBS): Add $INTLLIBS into $LIBS
9249         directly, rather than repeating the checks for
9250         gettext.
9251
9252         * INSTALL: Added information about gettext and
9253         NLS support.
9254
9255         * acinclude.m4 (LIBM): Check for dgettext, not
9256         just gettext. This should hopefully fix things wrt
9257         systems with old versions of GNU gettext installed.
9258
9259 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
9260
9261         * configure.in (LIBS): Look for libgmodule in the
9262         right location.
9263
9264 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
9265
9266         * autogen.sh: add --enable-maintainer-mode
9267
9268         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
9269
9270 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
9271
9272         * docs/gtk-config.1.in:
9273           docs/Makefile.am:
9274           configure.in: gtk-config is now generated.
9275
9276         * docs/gtk-config.1: Removed, now generated.
9277
9278 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
9279
9280         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
9281         handle CreateNotify itself, still put out a debuging message for
9282         --gdk-debug=events. made the ReparentNotify debugging message more
9283         verbose.
9284         wrap xcoords translation for ConfigureEvents into an error trap,
9285         a destroy event may already be pending, and in that case, the
9286         actuall coordinate values are not at all critical.
9287
9288 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
9289
9290         * gdk/gdkcc.c: Stop leaking the color_hash all over
9291         the place. Simplify and improve the logic.
9292
9293 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
9294
9295         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
9296         for prototypes and function implementations consistent (reported
9297         by Tomas Ogren).
9298
9299 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
9300
9301         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
9302         send_event set in debugging output.
9303         (gdk_compress_exposures): default initialize the event so we don't
9304         operate on bogus values (namely send_event).
9305
9306 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
9307
9308         * gdk/gdkwindow.c: When we receive an unexpected
9309         destroy notify on one of our windows, don't just
9310         warn about it, also mark our windows as destroyed.
9311
9312 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
9313
9314         * gdk/gdkfont.c (gdk_font_hash_insert): Add
9315           name => font and name => fontset hashes. The 
9316           name => fontset hash is a _big_ win since we
9317           weren't previously caching fontsets at all and loading
9318           fontsets is expensive. The name => font hash
9319           is less of a win, but it does save us from doing
9320           repeated XQueryFont calls on the same font.
9321
9322         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
9323           list so we can remove font/fontset from hash.
9324
9325 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
9326
9327         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
9328           and slightly confusing test. [ XInternAtom (,,TRUE)
9329           will never return None ].
9330
9331 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
9332
9333         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
9334           gdk/gdkwindow.c (gdk_window_set_hints):
9335
9336         Don't omit setting the properties if flags == 0 -
9337         there may be an existing set of properties there
9338         already. (Very old bug. Would it be better to
9339         delete the property instead?)
9340
9341         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
9342           spelling error in comment.
9343
9344 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
9345
9346         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
9347           to avoid stomping over gdk_error_warnings.
9348
9349         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
9350           as (bits_per_pixel + 7) / 8. This gives the same
9351           result as before for multiples of 8, but actually
9352           a "reasonable" value for 1bit or 4bit displays.
9353
9354 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
9355
9356         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
9357         GNU Make.
9358
9359 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
9360
9361         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
9362         discarding configure events.
9363
9364 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
9365
9366         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
9367         refcount is greater than zero.
9368
9369         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
9370
9371         * gdk/gdkfont.c (gdk_font_unref): Likewise.
9372
9373         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
9374
9375         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
9376
9377 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
9378
9379         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
9380         that format 32 => sizeof(item) == 4. It really is
9381         sizeof(long).
9382
9383 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
9384
9385         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
9386         core dump at all on X IO errors, only core dump
9387         if --enable-debug for X errors.
9388
9389 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
9390
9391         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
9392         unknown window:" message. disabled ConfigureNotify discarding code,
9393         because it led to events being processed out of order.
9394
9395 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
9396
9397         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
9398
9399         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
9400         we export this function, supress error warnings and don't reset the
9401         error code in the first half of this function.
9402
9403         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
9404         code (instead of just -1) so gdk_error_trap_pop() reveals something
9405         actually informative about the error that happened.
9406
9407         * gdk/*.c:
9408         don't rely on gdk_error_code being -1 if an error occoured, but just
9409         gdk_error_code != 0.
9410
9411 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
9412
9413         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
9414         pointer *before* invoking the filter function, so we at least don't
9415         crash if a filter is removed that is currently executed. window filters
9416         *really* need to be made truely reentrant at some point.
9417
9418 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
9419
9420         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
9421         PropertyNotify debug messages.
9422
9423 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
9424         
9425         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
9426         
9427         * gdk/gdkim.c: Fix cut-and-paste errors for 
9428         x/y and PreeditAttributes/StatusAttributes.
9429
9430 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
9431
9432         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
9433         G_MAXINT to 2^16 to alleviate overflow problems in
9434         various window managers.
9435
9436 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
9437
9438         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
9439         for fontsets.
9440
9441 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
9442
9443         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
9444         Initialize size_hints.x and size_hints.y because kwm
9445         brokenly pays attention to them.
9446         (Bug #1181 -  Lars Heete <hel@admin.de>)
9447
9448 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
9449
9450         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
9451         return value of gdk_list_visuals(). 
9452         (Bug #1193 - Morten Welinder <terra@diku.dk>)
9453
9454 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
9455
9456         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
9457         XSetIMValues to (void *) when comparing to NULL, to workaround
9458         the problem of some compilers barfing since older X headers don't
9459         have the prototype for it.
9460
9461 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
9462
9463         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
9464         for pseudocolor where colormap->colors was double
9465         allocated.
9466
9467         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
9468         color value in the hash table with the pixel filled
9469         in so when we do later hash table lookups, the color
9470         value is correct.
9471         
9472 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
9473
9474         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
9475         making the call
9476
9477 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
9478
9479         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
9480         pointed out by Morten Welinder <terra@diku.dk>.
9481
9482 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
9483
9484         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
9485           default filter from the list
9486
9487 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
9488
9489         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
9490           default filter from the list
9491
9492 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
9493
9494         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
9495
9496         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
9497         g_strdup_printf instead of calcing the length separately
9498
9499 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
9500
9501         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
9502         that we don't do in many other places. (Fixing duplicate 
9503         #include of config.h)
9504
9505         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
9506         Otherwise, #ifndef XINPUT_NONE check in the latter
9507         doesn't work. (Bug #546)
9508
9509 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
9510
9511         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
9512         "None" case insensitive.
9513
9514 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
9515
9516         * gdk/gdkselection.c: 
9517         Add error traps so if the other end of the connection
9518         dies, we survive.
9519
9520 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
9521
9522         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
9523         dest_xid field into two fields - one for the window
9524         to send in messages, one to indicate the last looked
9525         up window for caching purposes. This is needed, so
9526         that Leave messages get the correct window.
9527
9528 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
9529
9530         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
9531         Fix warning created by people mucking around
9532         with the gsource API.
9533
9534         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
9535         Change mapping between GIOCondition and GdkInputCondition
9536         to match the way the Linux kernel does it. This should
9537         fix problems where closed pipes were no longer signalling
9538         GDK_INPUT_READ on systems with a native poll().
9539
9540 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
9541
9542         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
9543         explicitly for the string "None" - it is in the XPM
9544         spec and some servers treat unknown colors in odd ways
9545         (like asking the user!)
9546
9547 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
9548
9549         * gdk/gdkevents.c: made "->" into a "." of previous change so
9550         it compiles
9551
9552 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
9553
9554         * gdk/gdkevents.c (gdk_compress_exposures): Set the
9555         window field of the event structure before calling
9556         user filters.
9557
9558 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
9559
9560         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
9561         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
9562
9563 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
9564
9565         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
9566         intermediate text property - prevents major memory
9567         leak when gdk_use_mb.
9568         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
9569
9570 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
9571
9572         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
9573         gtk-a-higuti-990322-[0-3]
9574
9575         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
9576         sizeof(wchar_t) != sizeof (GdkWChar)
9577
9578         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
9579         that was causing -DX_LOCALE not to work.
9580
9581         * gtk/gtkrc.c (gtk_rc_init):
9582         X_LOCALE will never have LC_MESSAGES defined
9583
9584         * gdk/gdk.c (gdk_init_check):
9585         Remove --xim-preedit and --xim-status from argv properly.
9586
9587         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
9588         that the client window is present on the X server
9589         before we pass it to the input method.
9590
9591 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
9592
9593         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
9594         if --display is specified on the command line, than
9595         the drag window will not be created on that display.
9596         
9597 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
9598
9599         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
9600         lookups with only_if_exists == TRUE were inserting
9601         bogus values into the atom cache.
9602
9603 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
9604
9605         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
9606         then reset it to NULL.
9607
9608         * gdk/gdkcolor.c:
9609         (gdk_colors_free): 
9610         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
9611         key for g_hash_table_remove() in both functions, this prevents us
9612         from accessing possibly uninitialized portions of a GdkColor structure
9613         where we are only interested in its pixel value.
9614
9615 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
9616
9617         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
9618         font hash table, if we have a GdkFontPrivate entry for this font
9619         already, simply increment its reference count, provided by Olaf Dietsche
9620         <olaf.dietsche+list.gtk@netcologne.de>.
9621
9622 1999-09-21  Tor Lillqvist  <tml@iki.fi>
9623
9624         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
9625         just to be sure.
9626
9627         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
9628         unused variables, leftovers from the X11 version.
9629
9630         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
9631
9632         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
9633         downcase fields on X11.
9634
9635 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
9636         
9637         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
9638         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
9639
9640 1999-09-17  Tor Lillqvist  <tml@iki.fi>
9641
9642         * gdk/win32/gdk.def: Add gdk_threads_mutex.
9643
9644         * gtk/makefile.msc: Correct path to libintl.
9645
9646         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
9647         use of gint vs. int, and gint vs. gboolean in headers and
9648         definitions. Use GtkType for the *_get_type functions. Note that
9649         these changes preserve binary compatibility.
9650
9651         * gdk/gdk.c
9652         * gdk/win32/gdk.c
9653         * gdk/gdk.h: Fix inconsistencies: gint vs int.
9654
9655         * gtk/gtkmain.c
9656         * gtk/gtkclist.c
9657         * gtk/gtkmenufactory.c
9658         * gtk/gtknotebook.c
9659         * gtk/gtkwidget.c: Fix inconsistencies, also gint
9660         vs. gboolean.
9661
9662         * gtk/gtkcolorsel.[ch]
9663         * gtk/gtkcombo.[ch]
9664         * gtk/gtkdrawingarea.[ch]
9665         * gtk/gtkgamma.[ch]
9666         * gtk/gtkhandlebox.[ch]
9667         * gtk/gtkhpaned.[ch]
9668         * gtk/gtkhruler.[ch]
9669         * gtk/gtkplug.[ch]
9670         * gtk/gtkpreview.[ch]
9671         * gtk/gtkruler.[ch]
9672         * gtk/gtksocket.[ch]
9673         * gtk/gtkstatusbar.[ch]
9674         * gtk/gtktoolbar.[ch]
9675         * gtk/gtkvbbox.[ch]
9676         * gtk/gtkvpaned.[ch]
9677         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
9678         functions.
9679
9680         * gtk/gtkgamma.h: Fix bug, missing () in call of
9681         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
9682
9683 1999-09-14  Tor Lillqvist  <tml@iki.fi>
9684
9685         * gdk/gdkcolor.c (gdk_colormap_new)
9686         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
9687         colormap->colors was allocated twice.
9688
9689         * gdk/win32/gdk.c: Remove some unused stuff.
9690
9691         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
9692         colormap.
9693
9694         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
9695         * gtk/gtklabel.h (gtk_label_get_type)
9696         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
9697         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
9698         in a couple of places, not guint.
9699
9700 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
9701
9702         * configure.in,po/et.po: added Estonian language file
9703
9704 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
9705
9706         * configure.in,po/da.po: added Danish file
9707
9708 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
9709
9710         * docs/gtkfaq.sgml: Minor FAQ Update
9711
9712 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
9713
9714         * docs/gtkfaq.sgml: FAQ update
9715
9716 1999-08-27  Tor Lillqvist  <tml@iki.fi>
9717
9718         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
9719         way to get window contents continually refreshed while resizing. I
9720         didn't like the effects myself, so it's not on by default.
9721
9722         * gdk/win32/gdkprivate.h: New flag variable
9723         gdk_event_func_from_window_proc, FALSE by default.
9724
9725         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
9726         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
9727         are passed --gdk-event-func-from-window-proc.
9728
9729         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
9730         and we have am event_func, call it instead of enqueing the event.
9731
9732 1999-08-23  Tor Lillqvist  <tml@iki.fi>
9733
9734         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
9735         Kelley: Set expose_count in GdkEventExposes correctly.
9736
9737         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
9738         MULTIPLE_WINDOW_CLASSES).
9739
9740         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
9741         for bug in NT, apparently NT *does* draw the end pixel, too, in
9742         LineTo with a one-pixel pen, so we don't have to do it ourselves.
9743
9744 1999-08-21  Tor Lillqvist  <tml@iki.fi>
9745
9746         Improvements by Hans Breuer: 
9747
9748         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
9749
9750         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
9751         CS_?REDRAW flags as they cause lots of (late) redraws when "show
9752         window contents while dragging" is turned on. Allocate at least
9753         one unique class for every GdkWindowType. If support for single
9754         window-specific icons is ever needed (eg. Dialog specific), every
9755         such window should get its own class.
9756
9757 1999-08-19  Tor Lillqvist  <tml@iki.fi>
9758
9759         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
9760         error that caused crashes.
9761
9762 1999-08-17  Tor Lillqvist  <tml@iki.fi>
9763
9764         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
9765         window, use ScrollWindowEx, and call UpdateWindow. This prevents
9766         bugs when for instance part of the window was outside the
9767         display. Thanks to Philippe Colantoni for finding and fixing this.
9768
9769 1999-08-16  Tor Lillqvist  <tml@iki.fi>
9770
9771         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
9772         endpoint calculations which were totally wrong. (A little RTFMing
9773         helps a lot ;-)
9774
9775         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
9776         from a separate directory, not from gettext, because of licensing
9777         issues (we want to use the LGPL version).
9778
9779         * README.win32: Mention the intl from glibc vs from gettext issue.
9780
9781 1999-08-13  Tor Lillqvist  <tml@iki.fi>
9782
9783         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
9784         in the key event handling: Now AltGr chars work again. Also,
9785         now Alt-digits are passed up as well as Control-digits.
9786         Pass keypad plus and minus as normal plus and minus.
9787
9788 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
9789
9790         * docs/gtkfaq.sgml: FAQ Update
9791
9792 1999-07-25  Tor Lillqvist  <tml@iki.fi>
9793
9794         * README.win32
9795         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
9796         the Wintab SDK.
9797
9798         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
9799         OK, but getting closer. Guard against bogus tilt data from Wacom
9800         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
9801         enable easier building without Wintab.
9802
9803         * gdk/win32/gdkinput.h
9804         * gdk/win32/gdkevents.c 
9805         * gdk/win32/gdkwindow.c: Minor changes related related to above.
9806         
9807         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
9808         code. As we have just one visual on Win32, no sense to have it in a
9809         table, and no need for the hash table.
9810
9811         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
9812         better on white background.
9813
9814 1999-07-21  Tor Lillqvist  <tml@iki.fi>
9815
9816         * README.win32: Update gcc build instructions. Mention gettext is
9817         GPL.
9818
9819         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
9820         supported cursor size with GetSystemMetrics.
9821
9822         * gdk/win32/gdkfont.c
9823         * gtk/gtkfontsel.c: Guard against some font weight and charset
9824         symbols being undefined (in mingw32 headers).
9825
9826         * gdk/win32/makefile.cygwin
9827         * gtk/makefile.cygwin
9828         * gtk/gtkthemes.c: No longer need to have differently named
9829         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
9830
9831 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
9832
9833         * docs/gtkfaq.sgml: Long awaited FAQ update.
9834
9835 1999-07-15  Tor Lillqvist  <tml@iki.fi>
9836
9837         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
9838         it. Obscure bit manipulation needed.
9839
9840         * gdk/win32/gdkevents.c: Logging.
9841         
9842         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
9843         style (file name include compiler name) for theme engines.
9844
9845 1999-07-13  Tor Lillqvist  <tml@iki.fi>
9846
9847         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
9848
9849         * gdk/win32/gdkevents.c: Fix long-standing bug in key
9850         events. The key.string wasn't zero-terminated, still we strdup'ed
9851         it in gdk_event_copy(). Synthesize crossing events for button
9852         events before possible propagation.
9853
9854         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
9855
9856         * gdk/win32/makefile.cygwin
9857         * gtk/makefile.cygwin: Use new DLL naming style for the
9858         GCC-compiled ones.
9859
9860         * gdk/win32/makefile.msc
9861         * gtk/makefile.msc: Cosmetics mostly.
9862
9863         * gtk/gtk.def: Add missing entry points.
9864
9865         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
9866
9867 1999-07-09  Tor Lillqvist  <tml@iki.fi>
9868
9869         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
9870         or height is zero. Don't print a warning if Pie or Arc fails, they
9871         always fail (?) for very narrow ellipses.
9872
9873         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
9874         the part or the destination window corresponding to source area
9875         outside of the source drawable's boundary.
9876
9877         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
9878         anything if less than two points.
9879
9880         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
9881         return NULL. Gtk cut-and-paste inside a single program works
9882         better this way. (It always gets the clipboard contents from
9883         Windows, not from its own copy, which is cleared anyway. I can't
9884         say I fully understand what happens... Emulating the X selection
9885         and property stuff is a bit of a mess.)
9886
9887         * gdk/win32/gdkevents.c
9888         * gdk/win32/gdkproperty.c: A bit more verbose logging.
9889
9890         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
9891         that never got deleted). Revamp gdk_region_shrink.
9892
9893         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
9894         after use.
9895
9896         * gtk/gtk.def: Add some missing entry points.
9897
9898         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
9899         component.
9900
9901 1999-07-04  Tor Lillqvist  <tml@iki.fi>
9902
9903         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
9904         Control-digits specially.
9905
9906 1999-07-03  Tor Lillqvist  <tml@iki.fi>
9907
9908         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
9909
9910 1999-06-28  Tor Lillqvist  <tml@iki.fi>
9911
9912         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
9913         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
9914         finding this.)
9915
9916 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
9917
9918         * gtk+.spec.in: Corrected some typos in files section.
9919         
9920 1999-06-15  Tor Lillqvist  <tml@iki.fi>
9921
9922         * README.win32: Mention using GNU gettext.
9923         * config.h.win32: Enable NLS stuff.
9924         * gtk/makefile.msc: Use GNU gettext.
9925         * gdk/win32/gdkdnd.c: Minor header reorg.
9926         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
9927         cosmetics.
9928         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
9929         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
9930
9931 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
9932
9933         * acinclude.m4
9934         * config.guess
9935         * config.status
9936         * ltconfig
9937         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
9938
9939 1999-05-30  Tor Lillqvist  <tml@iki.fi>
9940
9941         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
9942         SafeAdjustWindowRectEx. Don't override all calls to
9943         AdjustWindowRectEx by it, but use it only in two places: When
9944         creating a new top-level window and when moving a top-level
9945         window.
9946
9947         Use screen coordinate rectangle, not client rectangle, in
9948         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
9949         when we try to place a window so that the decoration (mainly,
9950         title bar) isn't visible.
9951
9952         These changes fix the bug that showed up for instance as the
9953         GIMP's saved top-level windows moving right and down (by an amount
9954         equal to the window decoration) for each session. This bug showed
9955         up also in testgtk's "Saved Position".
9956
9957         gdk_window_resize also redone a bit.
9958
9959 1999-05-25  Tor Lillqvist  <tml@iki.fi>
9960
9961         * gtk/testgtkrc: Add (commented out) Windows-style theme
9962         include line.
9963
9964         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
9965
9966 1999-05-18  Tor Lillqvist  <tml@iki.fi>
9967
9968         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
9969         gdkx.h to a gdk subdirectory, so that applications can include
9970         these with <gdk/*.h> without trouble.
9971
9972         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
9973         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
9974         have their bitmap destroyed.
9975
9976         * gdk/win32/gdk.def: Add gdk_root_parent.
9977
9978 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
9979
9980         * configure.in
9981           gtk-config.in
9982           ltconfig
9983           ltmain.sh     
9984           gtk/Makefile.am: changes to compile nicely (with xlib) 
9985           on BeOS
9986
9987 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
9988
9989         * acinclude.m4
9990         * config.guess
9991         * config.sub
9992         * ltconfig
9993         * ltmain.sh: upgrade to libtool 1.3
9994
9995 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
9996
9997         * gtk/gtkclist.c:
9998         * gtk/gtkctree.c: merges from gtk-1-2
9999
10000 1999-04-25  Tor Lillqvist  <tml@iki.fi>
10001
10002         Support added for building using a GNU toolchain on Win32,
10003         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
10004
10005         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
10006         * config.h.win32: Changes for gcc.
10007         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
10008         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
10009         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
10010         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
10011         Protect shl stuff unavaiilable with mingw32 headers.
10012         * gdk/win32/gdkevents.c: Fix typo.
10013         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
10014         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
10015         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
10016         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
10017         the mingw32 headers.
10018         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
10019         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
10020         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
10021         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
10022         Test for NATIVE_WIN32, not _MSC_VER.
10023         * gtk/gtkmain.c: No use warning about developer version on Win32,
10024         there aren't any non-developer versions anyhow.
10025         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
10026         * gtk/makefile.msc: Use pthread from another directory. Minor other
10027         changes. 
10028
10029 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
10030
10031         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
10032           default filter from the list
10033
10034 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
10035
10036         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
10037          when gtk_widget_grab_default() is called for a widget that
10038          is not within a GtkWindow.
10039
10040 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
10041
10042         * docs/gtk_tut.sgml, examples/clist.c: use a
10043           scrolled window in the clist example. Minor
10044           tutorial fixes.
10045
10046 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
10047
10048         * docs/gtk_tut.sgml: Style check from David King
10049           <dking@youvegotmail.net>
10050
10051 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
10052
10053         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
10054         compile with unknown value of GDK_WINDOWING
10055
10056 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
10057
10058         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
10059         after the rule is fired.
10060         (install-exec-local): Install gdkconfig.h only if the contents are
10061         different from the currently installed gdkconfig.h.
10062
10063 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
10064
10065         * gdk/Makefile.am (configexecincludedir): Rename from 
10066         configincludedir so that gdkconfig.h will be installed 
10067         as part of `make install-exec'. 
10068
10069 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
10070
10071         * acinclude.m4
10072         * config.guess
10073         * config.sub
10074         * ltconfig
10075         * ltmain.sh: upgrade to libtool 1.2f
10076
10077         * autogen.sh: libtool is not required to autogen gtk+
10078
10079         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
10080         needed)
10081
10082 1999-03-18  Tor Lillqvist  <tml@iki.fi>
10083
10084         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
10085         declaring gdk variables exported/imported from the DLL. New image
10086         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
10087         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
10088         GDK_DRAG_PROTO_OLE2.
10089
10090         * gdk/gdk.h: Merge in Win32 version: Two new functions,
10091         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
10092         declared only for the Win32 version, but could be in the X11
10093         version as well. (Needed for a Xlib-less gdk_imlib.)
10094         gdk_color_hash should have only one parameter. Declare
10095         gdk_threads_mutex with GDKVAR.
10096         
10097         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
10098         just one parameter.
10099
10100         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
10101         per pixel, not bits.
10102
10103         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
10104         Fetch bpp (which means bits-per-pixel here) from another place on
10105         Win32. Accept also depth==32 (which we might get on Win32) with
10106         bpp==32.
10107
10108         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
10109         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
10110         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
10111         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
10112         in the backend-dependent directory, not in the common gdk
10113         directory.
10114
10115         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
10116         headers.
10117
10118 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
10119
10120         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
10121         want to use the Gtk+ devel version (which is true, and yes - even i am
10122         currently working with the 1.2.x branch). so everyone reading this, you
10123         probably want to issue
10124         cvs checkout -r glib-1-2 glib
10125         and
10126         cvs checkout -r gtk-1-2 gtk+
10127         as your next two comands.
10128
10129 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
10130
10131         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
10132         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
10133
10134         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
10135         file. strongly deprecated the GTK_HAVE_* macros, we provide
10136         GTK_CHECK_VERSION() for people that need to check for certain
10137         Gtk+ versions.
10138
10139         * gtk/gtkcompat.h: removed this from CVS.
10140         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
10141         idea right from the start, it just didn't seem like that back then.
10142
10143 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
10144
10145         * merges from gtk-1-2:
10146
10147 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
10148
10149         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
10150         item factory class has been created.
10151         (gtk_item_factory_parse_rc): likewise.
10152
10153         * gtk/gtkmenu.c:
10154         keep proper references for old_active_menu_item.
10155         (gtk_menu_reparent): unset the usize of the new parent,
10156         so the menu can sanely be size requested and we don't get nasty screen
10157         artefacts upon next reparentation.
10158         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
10159         enter notify. only synthesize enter notifies if the pointer really is
10160         inside the event window.
10161         (gtk_menu_popdown): use gtk_menu_shell_deselect().
10162         (gtk_menu_popup): move the background setting stuff into
10163         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
10164
10165         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
10166         gtk_menu_shell_select_item() to select the new item.
10167         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
10168         do the right thing for deselection as well.
10169
10170 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
10171
10172         * gtk/gtkwidget.[hc]:
10173         (gtk_widget_accelerators_locked): return whether a widget's accelerators
10174         are locked.
10175
10176         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
10177         existing accelerators if the widget's accelerators are locked.
10178
10179 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
10180
10181         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
10182
10183         * gtk/gtkmenu.c: truely forward key press and key release events to
10184         the menu widget from the toplevel or tearoff window. we can't simply
10185         connect to that, we need to stop further processing of the events as
10186         well.
10187
10188 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
10189
10190         * gtk/gtkmenu.c:
10191         (gtk_menu_key_press): pass event->keyval, event->state to
10192         gtk_accelerator_valid, instead of event->keyval twice.
10193         refuse to install single letter accelerators for menus that use
10194         single letter shortcuts.
10195
10196         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
10197         gtk_menu_ensure_uline_accel_group().
10198
10199         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
10200         which will always return an uline accel group, made
10201         gtk_menu_get_uline_accel_group() return NULL if the group isn't
10202         yet created.
10203
10204 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
10205
10206         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
10207
10208         * gtk/gtkclist.c (gtk_clist_column_title_passive):
10209         Leave button sensitive, trap  button_press, button_release,
10210         motion_notify, enter_notify and leave_notify events instead.
10211         (gtk_clist_column_title_active): disconnect event handler.
10212         (gtk_clist_drag_data_get): fixed memory leak. Reported by
10213         Guillaume Laurent <glaurent@worldnet.fr>
10214
10215 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
10216
10217         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
10218         width/height mixups.
10219
10220         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
10221         if needed.
10222
10223 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
10224
10225         * gtk/testgtk.c (create_item_factory): unref the item factory after
10226         window's destruction.
10227
10228         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
10229         count on the menu shell around the menu item's activation, since the
10230         signal emission may cause menu shell destruction.
10231
10232         * gtk/gtkitemfactory.c:
10233         the previous code leaked one accel group per menu. we use
10234         gtk_menu_get_uline_accel_group() now to fix that, and with that
10235         also create the underline accelerator group of the menus only if
10236         required (i.e. an underline accelerator has been specified).
10237         (gtk_item_factory_construct):
10238         (gtk_item_factory_create_item): removed code that would create an
10239         extra accel group for the menu (and leak references).
10240         (gtk_item_factory_create_item): adapted the underline accelerator
10241         installation code to properly feature gtk_menu_get_uline_accel_group().
10242
10243         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
10244         menu->accel_group, this may return NULL if the accelerator group
10245         hasn't been set yet.
10246         added gtk_menu_get_uline_accel_group() to retrive the underline
10247         accelerator group of the menu, this will be created on demand
10248         and proper care is taken about its reference count.
10249
10250         * gtk/gtkitemfactory.h:
10251         * gtk/gtkitemfactory.c:
10252         dumped the approach of keeping a widgets by action list on the
10253         factory since the factory<->widget destroy negotiation didn't work
10254         and would be hard to get going at all. instead we keep a list of
10255         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
10256         persistant throughout a program's life time).
10257         also, i removed the static const gchar *key_* variables, and made
10258         them inline strings (they weren't actually used anyways).
10259         (gtk_item_factory_add_item): update ifactory->items.
10260         (gtk_item_factory_destroy): destroy ifactory->items (and remove
10261         the item factory pointer from the remaining ifactory widgets).
10262         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
10263         list to find the widget.
10264         (gtk_item_factory_get_item): new function that works around
10265         gtk_item_factory_get_widget() limitations, this function will only
10266         return menu items, even for <Branch> entries.
10267
10268 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10269
10270         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10271         font hash table, if we have a GdkFontPrivate entry for this font
10272         already, simply increment its reference count, provided by Olaf Dietsche
10273         <olaf.dietsche+list.gtk@netcologne.de>.
10274
10275         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
10276         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
10277
10278 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
10279
10280         * gtk/gtkcontainer.c:
10281         (gtk_container_add_with_args):
10282         (gtk_container_addv):
10283         (gtk_container_add): before adding a child to a conatiner, make sure
10284         it is (default) constructed, this is neccessary because under certain
10285         circumstances the child will get relized and mapped immediatedly, in
10286         which case it has to be constructed already.
10287
10288 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
10289
10290         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
10291         values > 1 as TRUE also.
10292
10293 1999-03-16  Tor Lillqvist  <tml@iki.fi>
10294
10295         * README.win32: New file.
10296                 
10297         * configure.in: Check for lstat.
10298
10299         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
10300         completeness.
10301
10302         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
10303
10304         * gtk/gtk.def: Removed CRs.
10305
10306         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
10307         ..\gdk\win32).
10308
10309         * gdk/win32/makefile.msc: Correct upwards relative paths.
10310         
10311 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
10312
10313         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
10314           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
10315           it was connecting a void function to expose_event and the int
10316           returning function to the draw signal
10317
10318 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
10319
10320         * configure.in:
10321         Use correct path to libgmodule.la when ref'ing uninstalled copy
10322         of glib.  (Already in stable branch, Bug #417)
10323
10324 1999-03-15  Tor Lillqvist  <tml@iki.fi>
10325
10326         Win32 merge and general portability stuff:
10327                 
10328         * acconfig.h,configure.in: Check for <sys/time.h>.
10329
10330         * gdk/win32: New directory (actually, been there for a while).
10331         
10332         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
10333         NATIVE_WIN32, and use these. Always case fold on Win32. No
10334         backslashed escapes on native Win32.
10335
10336         * gtk/{gtk.def,makefile.msc}: New files.
10337
10338         * gtk/Makefile.am: Add above new files.
10339         
10340         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
10341         instead of <strings.h>.
10342
10343         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
10344         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
10345         <unistd.h> appropriately.
10346
10347         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
10348         Use ABS() (from <glib.h>) instead of abs().
10349         
10350         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
10351         of gtk (and thus glib) headers, so that WIN32 will be
10352         defined. With MS C, include <direct.h> for mkdir prototype.
10353
10354         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
10355         some casts, needed by MS C.
10356
10357         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
10358         implemented).
10359
10360         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
10361         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
10362         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
10363
10364         * gtk/gtkmain.h: Mark variables for export/import on Win32.
10365                 
10366         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
10367         the event is not a hint, or its window is not the slider. Needed
10368         on Win32, at least.
10369
10370         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
10371         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
10372         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
10373         a subdirectory of the Windows directory as gtk system
10374         configuration directory.
10375
10376         * gtk/gtkselection.c: No chunks on Win32.
10377
10378         * gtk/gtksocket.c: Not implemented on Win32.
10379
10380         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
10381
10382         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
10383
10384         * gtk/maketypes.awk: Declare variables with a macro that expands to
10385         necessary export/import magic in the case of Win32.
10386                 
10387         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
10388
10389 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
10390
10391         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
10392         since those were meant only for gdki18n.h.  
10393         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
10394         for widechar tests.
10395         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
10396
10397 1999-03-13  Tor Lillqvist  <tml@iki.fi>
10398
10399         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
10400         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
10401
10402         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
10403         installed) to CFLAGS.
10404
10405         * gdk/Makefile.am: Add rules for gdkconfig.h.
10406
10407         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
10408         APIs.
10409
10410         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
10411         gdkx.h anyway when compiling for X11.
10412         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
10413         general): Merge in Win32 version.
10414         
10415         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
10416         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
10417         expansion (if we don't have HAVE_PWD_H), allow for drive
10418         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
10419         included code from Craig Setera's port to Win32 (the one that uses
10420         X11, and the cygwin dll), even if it probably will be abandoned.
10421
10422         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
10423         the user entered one herself.  This way one can complete *.h and
10424         don't get matches on any .help files, for instance.
10425         
10426 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
10427
10428         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
10429         font hash table, if we have a GdkFontPrivate entry for this font
10430         already, simply increment its reference count, provided by Olaf Dietsche
10431         <olaf.dietsche+list.gtk@netcologne.de>.
10432
10433         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
10434         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
10435
10436 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
10437
10438         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
10439         the number of calls to gdk_draw_point() (and thus to X) by
10440         clipping the points by hand.
10441
10442         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
10443         the clip parameter.
10444         (gtk_handle_box_paint): Only paint the handle if the expose area
10445         intersects it.
10446
10447 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
10448
10449         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
10450
10451 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
10452
10453         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
10454         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
10455
10456 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
10457
10458         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
10459          textmode (O_TEXT) for OS/2 version.
10460
10461 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
10462
10463         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
10464         GtkSpinButton, "input" and "output", to make the output more flexible.
10465         The user has to provide a mapping between adjustment->value and the
10466         output string (and vice versa, if the spin button is editable). 
10467         See testgtk for examples.
10468
10469 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
10470
10471         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
10472         new one.
10473         
10474         * configure.in: set gtk+ version to 1.3.0.