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