]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Return FALSE, or window focusing will not work.
[~andy/gtk] / ChangeLog.pre-2-2
1 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2
3         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
4         Return FALSE, or window focusing will not work.
5
6 2001-05-11  Havoc Pennington  <hp@pobox.com>
7
8         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
9         #54144
10
11         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
12         bug #54330
13
14 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
15
16         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
17         propagate exposes to NULL child.
18
19         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
20         against not having one of the scrollbars.
21
22         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
23         we don't keep a mnemonic window if we have no mnemonic installed.
24
25 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
26
27         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
28         it has the _important_ side effect of initializing a class.
29
30 2001-05-10  Alexander Larsson  <alexl@redhat.com>
31
32         * gdk/linux-fb/gdkprivate-fb.h:
33         Make sure you can compile out the implementation/wrapper assert
34         macros.
35
36         * gdk/linux-fb/gdkdrawable-fb2.c:
37         Check implementation/wrappers, initialize type for pixmap dummys.
38
39         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
40         Hide the cursor if reading from the screen.
41
42         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
43         Fix sign bug in tiling code.
44
45         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
46         Handle background pixmaps.
47
48 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
49
50         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
51         function to let user control where columns are dragged.
52
53         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
54         Escape is pressed.
55
56 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
57
58         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
59         "columns_changed" signal.
60         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
61         motion code to draw arrows to the side if indicator is outside the
62         widget.
63         (gtk_tree_view_map_expanded_rows): Implement.
64
65 2001-05-07  Alexander Larsson  <alexl@redhat.com>
66
67         * demos/testpixbuf-save.c: 
68         * demos/testpixbuf-drawable.c:
69         Include gdkfb.h on linux-fb.
70
71 2001-05-07  Alexander Larsson  <alexl@redhat.com>
72
73         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
74         New function for getting toplevel window at position.
75         (gdk_drag_find_window): Use get_toplevel_window () instead
76         of gdk_window_get_pointer(). (gdk_drag_status): Use
77         correct context for getting window.
78
79         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
80         g_strdup the atom name.
81
82         * gdk/linux-fb/gdkwindow-fb.c:
83         Costmetic fix.
84
85         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
86         Add code for changing cursor on linux-fb backend (same as
87         win32).
88
89 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
90
91         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
92         present before doing anything with it.  Patch from Håvard Kvålen
93         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
94         report was not for the development branch of GTK+, but it applies
95         anyways).
96
97 2001-05-04  Havoc Pennington  <hp@redhat.com>
98
99         * configure.in: fix some shell typos
100
101         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
102
103         * gtk/gtkimage.c: handle animations
104
105         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
106         border_width * 2, not just border_width
107
108         * gtk/gtkscale.c: add "format_value" signal to allow people
109         to override the way values are drawn.
110         (gtk_scale_get_value_size): fix width/height mistake,
111         and compute size from actual displayed text, not 
112         from made-up text.
113
114         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
115         signal registration
116
117         * tests/testtext.c: Add "Remove all tags" menu item for testing
118
119         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
120
121         * demos/gtk-demo/main.c (main): add hack so we can find modules
122         without installing gtk
123
124         * demos/gtk-demo/textview.c (insert_text): demo font scaling
125
126         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
127         factor)
128         (gtk_cell_renderer_text_set_property): remove some bogus
129         g_object_notify
130
131         * gtk/gtktexttag.c: add "scale" property which is a font scaling
132         factor
133
134         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
135         to layout
136
137         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
138         gtk_text_iter_is_first
139
140 2001-01-06  Hans Breuer  <hans@breuer.org>
141
142         * gdk/gdk.def : updated exports
143
144         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
145         gdk won't compile anymore
146  
147         * gdk/win32/gdkevents-win32.c : initialize ret_val when
148         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
149         Improved gdk_flush () to not only do pending drawing operations
150         but also process all currently pending events. This should make
151         the behaviour more similar to the X11 version.  
152
153         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
154         option needs to be set even if there is no GDK_GC_BACKGROUND.
155         (gdk_win32_hdc_get) : use predraw_set_background () independent
156         of value_mask. This allows to draw dashed lines leaving the original
157         background intact.
158
159         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
160         after processing, because we can't reuse it as the X11 version does.
161
162         * gtk/gtk.def : updated exports
163
164         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
165         would like to get rid of this file again, and use straight
166         makefile.msc again, as the other Gtk+ subdirs do)
167
168         * test/makefile.msc (new file) : build the test apps here
169
170 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
171
172         * Release 1.3.5
173
174         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
175
176         * NEWS: Updated
177
178         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
179         Makefile breakage.
180
181 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
182
183         * demos/gtk-demo/images.c (progressive_timeout): Fix
184         typo in filename.
185
186         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
187         out FIXME warning; just too annoying.
188
189 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
190
191         * gdk/linux-fb/gdkcolor-fb.c:
192         Better error messages.
193
194         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
195         Initialize abs_x and abs_y.
196         
197         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
198         Correct handling of stipple offset.
199
200         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
201         Treat directcolor framebuffers as truecolor.
202         
203 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
204
205         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
206         dependency on Atk for accessibility support.
207
208         * configure.in **/Makefile.am: Major reworking of substituted
209         variables for CFLAGS/LIBS to make a lot more sane and 
210         keep the the compile/link lines a bit shorter.
211
212         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
213
214 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
215
216         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
217         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
218         use _gtk_boolean_handled_accumulator.
219
220 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
221
222         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
223         to fix things so clicking inside selection leaves cursor
224         at point where clicked. (#50324)
225
226         * gtk/gtksettings.c (gtk_settings_class_init): Restore
227         sane value for default double click time.
228
229         * tests/testtext.c (test_init): Really path to input modules.
230
231 2001-05-03  Sven Neumann  <sven@convergence.de>
232
233         * demos/testpixbuf-save.c: include target-specific headers as
234         done in testpixbuf-drawable.c
235
236 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
237
238         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
239         new_text_length appropriately when we run into the 
240         size limit for the entry. (#53445, reported by Jeff Franks)
241
242         * tests/testgtk.c (create_entry): Remove most of the
243         property toggle buttons. Replace with a "Props" button
244         that brings up a property editor.
245
246         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
247         Split the property editor code out for reuse, improve.
248
249 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
250
251         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
252         trap errors around calls to XSetInputFocus since we have
253         no way of knowing reliably whether we are viewable or
254         not. (#53947)
255
256 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
257
258         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
259         fix bug in dropping columns.  Moving columns now basically works
260         modula some fine tuning.
261
262 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
263
264         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
265         autoscroll support.  It mostly works, but could use some fine
266         tuning.
267         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
268         Actually move the column.
269
270 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
271
272         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
273           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
274           New default theme! A slighly improved version of the 2.0 Raleigh
275           theme, with Windows-esque focus/drawing default. 
276           (GtkWidget::interior_focus defaults to TRUE.)
277
278         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
279
280 2001-04-30  Havoc Pennington  <hp@pobox.com>
281
282         * tests/testtext.c (line_numbers_expose): fix to work with
283         gtk_paint_layout change
284
285 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
286
287         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
288           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
289           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
290           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
291
292         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
293           with GtkWidget::interior_focus = TRUE better.
294
295         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
296         ::default_outside_border for more flexibility.
297
298         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
299         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
300         change that had to be made with g_object_get.
301
302 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
303
304         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
305         (gtk_tree_view_move_column_after): Clean up interface. 
306
307 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
308
309         * gtk/gtkpacker.h:
310         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
311          to gtkenum.h.
312
313         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
314         handled in switch).
315
316         * gtk/Makefile.am:
317         (gtk.defs): generate enum portions with  glib-mkenums.
318         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
319         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
320         
321         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
322         addition.
323
324         * docs/Changes-2.0.txt: keep a note on signal handlers now
325         not getting emitted during the emission they were connected within.
326
327 2001-04-28  Havoc Pennington  <hp@pobox.com>
328
329         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
330
331 2001-04-24  Havoc Pennington  <hp@redhat.com>
332
333         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
334         (gtk_text_layout_move_iter_to_next_line): fix these two for
335         invisible text, lots of other stuff still hosed.
336
337         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
338         new function, replaces the get/set palette stuff. This function 
339         is intended for use by libgnomeui which should set the hook to a
340         thing which sets the palette in GConf, and we need the
341         GConf-to-xsettings proxy which will result in the change being
342         propagated back to the GTK app.
343
344         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
345         about unusable signals that it may be because the signal has 
346         parameters.
347
348         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
349         style, otherwise gtkrc.c won't know to create a new GtkStyle for
350         it.
351         (gtk_widget_modify_color_component): call
352         gtk_widget_modify_style() so the rc style will get copied.
353         (gtk_widget_modify_font): ditto
354
355         * gtk/gtkrc.c: make a couple variables static
356
357         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
358         help button by default, since it does nothing
359
360         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
361         around with UI
362
363         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
364         so we can have tooltips
365
366         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
367         can have tooltips
368
369         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
370         GDK_ENABLE_BROKEN, because its memory behavior is completely
371         hosed.
372
373         * gtk/gtknotebook.c: remove key press handler, replace with
374         binding set, add numeric keypad support
375
376         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
377
378         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
379
380         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
381         addition to plain Delete
382
383         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
384         GDK_KP_Enter in addition to GDK_Return
385
386         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
387         activate on entry instead of key press
388         (gtk_font_selection_on_clist_key_press): get
389         rid of this signal handler, not needed with new font sel.
390
391         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
392         no-longer-needed emit_stop_by_name(), just return TRUE
393
394         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
395         cruft, this widget is no longer focusable.
396
397         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
398         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
399         move_slider action signal, add binding set for vscale/hscale, in
400         the process support numeric keypad
401
402         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
403         make GDK_Return and GDK_KP_Enter activate the entry via 
404         binding set, instead of hardcoded.
405
406 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
407
408         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
409         code.  Some documentation added.
410
411 2001-04-27  Havoc Pennington  <hp@redhat.com>
412
413         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
414
415         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
416
417         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
418         line/para separators
419         (gtk_entry_create_layout): set single paragraph mode on the layout
420
421         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
422         spacing between the image and label; instead, inside a button box 
423         the button will get extra space that will go there, but if people 
424         configure button box for 0 chubbiness, then there's no spacing.
425
426         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
427         and min/max size style properties, so people can tune their
428         chubbiness.
429
430         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
431         functions
432
433         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
434         space_style, and button_relief into style properties, remove
435         functions for setting them
436         
437         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
438         it back down
439
440         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
441         types from gtk_widget_style_get
442
443         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
444         with a style property.
445
446         * gdk/x11/gdkevents-x11.c: namespace the settings
447
448         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
449
450         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
451         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
452         be used. Also, translate doc strings for settings. Also, namespace
453         the double-click-time property. Also, remove bell properties crap.
454
455 2001-04-27  Sven Neumann  <sven@gimp.org>
456
457         * Makefile.am: before creating links, check if pkg-config files
458         exist for the default target. Otherwise link to the pkg-config files
459         that got installed with this build.
460
461 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
462
463         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
464         dragging code.  Revealed some (potential) GdkWindow bugs.
465
466         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
467         _gdk_window_init_position to the end of reparent to fix the case
468         of reparenting when new_x != old_x and new_y != old_y.
469
470 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
471
472         * gtk/gtkentry.c (strstr_len): Fix optimization that
473         was correct for the use here, but completely incorrect
474         in general.
475
476 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
477
478         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
479         until patch adding gtk_window_set_size() is recommitted. 
480
481         * **Makefile.am configure.in gdk/x11/gdkim-11.c
482           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
483           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
484           (#10784)
485
486 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
487
488         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
489         window == NULL in a number of cases.
490
491         * tests/testdnd.c: Set module path for gdk-pixbuf.
492
493 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
494
495         * gtk/Makefile.am xembed.h: File containing #defines
496         for XEMBED protocol.
497
498         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
499
500         - Change protocol from old plug/socket specific protocol
501           to XEMBED draft
502         - Various fixes to work with GTK+-2.0
503
504         Still quite a bit of work to do here to handle initiation
505         from the socket side (as specified by XEMBED), to handle
506         the more advanced features of XEMBED, and to figure out
507         a good way to handle same-app embedding with less overhead
508         than using full XEMBED.
509
510 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
511
512         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
513         track of whether the toplevel has the focus; only send
514         focus-in events to the focus widget when the window
515         actually has the focus.
516
517 2001-04-25  Havoc Pennington  <hp@pobox.com>
518
519         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
520         were still in the header
521
522 2001-04-24  Alexander Larsson  <alexl@redhat.com>
523
524         * gtk/gtkclist.[ch]:
525         * gtk/gtkctree.c:
526         When there is a row highlighted for D'n'D it must alse
527         be painted hightlighted on exposes. Otherwise exposes from
528         the icon being dragged will mess up the hightlight.
529
530         * gtk/gtkfontsel.c:
531         Don't recenter selected font when exposing the font family
532         clist. This means you can now actually scroll the font family
533         list.
534
535         * gtk/gtknotebook.c:
536         Fix focus movement on scrolling tabs that are placed on the left
537         and right.
538
539 2001-04-21  Havoc Pennington  <hp@pobox.com>
540
541         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
542         empty/invisible lines.
543
544         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
545         (gtk_text_iter_set_visible_line_index): new functions to set
546         indexes excluding invisible text
547
548         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
549         index
550
551         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
552         (gtk_text_iter_get_visible_line_offset): new functions to 
553         get indexes excluding invisible text
554
555         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
556         bunch of extra padding that served no purpose
557
558         * gtk/gtkdialog.c: Make all the spacings configurable via style
559         properties, for chubbiness configuration in themes
560
561         * tests/testtext.c: fix path to the immodules.
562         
563 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
564
565         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
566         got munched by #endif.
567
568         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
569
570         * gtk/gtktreeview.c: Refactored code to clean up a number of
571         events.
572
573         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
574         values to make consistent with other functions.  Spotted by Jeff
575         Franks <jcf@tpg.com.au>.
576
577         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
578         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
579
580 2001-04-23  Sven Neumann  <sven@gimp.org>
581
582         * gtk/Makefile.am
583         * gtk/gtkplug.c
584         * gtk/gtksocket.c: on request of Owen, reverted my last change 
585         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
586
587 2001-04-23  Sven Neumann  <sven@gimp.org>
588
589         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
590         compile for non-X11 targets again
591
592 2001-04-20  Alexander Larsson  <alexl@redhat.com>
593
594         * gtk/gtkcolorsel.[ch]:
595         API Change. Take GdkColor arguments instead of gdouble *.
596         Leave the old gtk_color_selection_set_color for compatibility,
597         but marked deprecated.
598         Do correct rounding when converting RGB <-> HSV.
599         
600         * gtk/gtkcolorseldialog.c:
601         * tests/testgtk.c:
602         Use new GtkColorSelection API.
603
604         * gtk/gtkhsv.c:
605         Fix problem selecting colors in triangle when Hue is 330.
606         Fix some black dots around the HSB triangle.
607         
608         * gtk/gtkfilesel.c:
609         return FALSE from the focus_in_event handler to fix focus problems.
610
611 2001-04-18  Havoc Pennington  <hp@redhat.com>
612
613         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
614         set, so keybindings are configurable    
615         (gtk_window_activate_default): Change to activate the focus widget
616         instead if there's a focus widget, to be consistent with the
617         behavior that previously existed in key_press_event
618
619 2001-04-18  Havoc Pennington  <hp@redhat.com>
620
621         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
622
623 2001-04-18  Havoc Pennington  <hp@redhat.com>
624
625         Close bug #50615:
626         
627         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
628         the layout
629
630         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
631
632         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
633
634         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
635         
636         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
637         to blue for base, in addition to bg
638         
639 2001-04-18  Havoc Pennington  <hp@redhat.com>
640
641         * tests/testgtk.c (create_image): allow shrinking the image window
642         to test that we clip to allocation.
643
644         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
645         #9845
646
647         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
648
649 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
650
651         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
652         mode on shm segments to 0600. We'll see who complains.
653
654         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
655         _gdk_windowing_window_destroy() AFTER recursing through
656         children.
657
658         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
659         testsocket_child on X.
660
661         * tests/testsocket[_child].c: Fix uses of
662         gtk_window_get_default_accel_group().
663
664         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
665
666         * gdk/gdkimage.c: (gdk_image_get):
667         Deal with the possibility that XGetImage() might return NULL.
668         Allocate the GdkImagePrivate structure only after XGetImage()
669         succeeds in order not to dereference a NULL ximage pointer.  This
670         prevents a core dump when XGetImage() fails - which is unlikely,
671         but can happen due to race conditions accessing the geometries of
672         drawables.  An x error will still be triggered, but the gdk image
673         wrapper at least wont seg fault.
674         
675 2001-04-18  Havoc Pennington  <hp@redhat.com>
676
677         * gtk/gtkimage.c: fix to properly queue resizes when the image is
678         set
679
680         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
681         if the insertion point isn't editable
682
683         * demos/gtk-demo/images.c: Added a GtkImage demo
684
685         * demos/gtk-demo/drawingarea.c: drawing area demo
686         
687         * demos/gtk-demo/menus.c (create_menu): cleanups
688
689 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
690
691         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
692           gdk/x11/gdkevents-x11.c: Introduce an extra child
693         of toplevel windows that serves to hold the focus to
694         avoid events being delivered to embedded windows.
695
696         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
697         some extra variables to clean up code and reduce the
698         number of casts.
699
700         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
701         guint for 1 bit bit fields, not gboolean.
702
703 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
704
705         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
706         not TRUE. (Fixes #52925)
707
708 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
709
710         * Released 1.3.4
711
712         * NEWS: Updated
713
714         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
715         use GTK_TYPE_ENUM.
716
717 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
718
719         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
720
721         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
722         names to compatibility #defines so docs work.
723
724         * gtk/gtkenums.h: Remove GtkMenuFactoryType
725
726         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
727
728         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
729
730         * tests/testgtkrc: No magenta cursors, please.
731
732         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
733
734         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
735         
736 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
737
738         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
739         grabs, since they are no longer necessary.
740
741         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
742         by signal_connect() and call gtk_button_pressed() rather
743         than signal_connect_after().
744
745         * tests/testgtk.c: Restore radio menu items to combos 
746         since they'll look OK with Raleigh, and it is easier
747         than finishing the process of removing them that was
748         started earlier.
749
750 2001-04-16  Hans Breuer  <hans@breuer.org>
751
752         * gdk/gdk.def :
753         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
754
755         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
756         we are interested in the functions return value not the function address
757         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
758
759         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
760
761 2001-04-14  Hans Breuer  <hans@breuer.org>
762
763         * gdk/gdk.def :
764         * gdk/makefile.msc : updated
765
766         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
767         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
768         (the testgtk::text backgound pixmap is drawn again)
769         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
770         Win32 Pango change
771         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
772
773         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
774         Not sure if the returned settings have the right unit, because I couldn't
775         find any docs for the X version ...
776
777         * gtk/gtk.def :
778         * gtk/makefile.msc.in : updated
779
780 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
781
782         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
783         wording problems. (Compared to version from Johannes Stezenbach to
784         check correctness.)
785
786 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
787
788         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
789         this to compile.
790
791 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
792
793         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
794         not pixbufpos.
795
796         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
797
798         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
799         are unsigned insts, therefore use g_value_set_uint.
800         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
801
802 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
803
804         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
805
806         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
807         GTK_TYPE_STRING.
808
809         * gtk/gtktreeview.c: New functions to allow initial column
810         dragging work.
811
812         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
813
814         * tests/testtreefocus.c: give dave some love.
815
816         * tests/testtreesort.c: Modify test to check really long samples.
817
818 2001-04-11  Alexander Larsson  <alexl@redhat.com>
819
820         * gtk-2.0.m4: Pass pkg-config options
821         before the other args so it works even if
822         POSIXLY_CORRECT is set.
823
824 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
825
826         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
827         0, interface 0).
828
829 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
830
831         * gtk/gtkcalendar.c (gtk_calendar_button_press):
832         check for action_func != NULL
833
834 2001-04-04  Sven Neumann  <sven@gimp.org>
835
836         * tests/testgtk.c (test_init): corrected path to gtk.immodules
837
838 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
839
840         * Released Gtk+-1.3.3.
841
842 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
843
844         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
845
846 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
847
848         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
849         files to/from source dir. (if we don't stay in builddir, we
850         can't reach make-inline-pixbuf.
851
852         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
853         deps.
854
855         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
856         ages 0).
857
858 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
859
860         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
861         moved to the GtkTreeSortable interface.
862
863         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
864         Make more efficient (fixes #50262).
865
866 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
867
868         * NEWS: Updated.
869
870         * configure.in: Remove support for uninstalled glib.
871
872         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
873         so as not to stop emission.
874
875         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
876         is no longer supported.
877
878         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
879         into tests, change build order to build modules before
880         gtk/.
881
882         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
883         to here.
884
885 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
886
887         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
888         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
889         GPatternSpec. this is actually unlikely to cause breakage in
890         third-party apps since except for gle, pretty much ever caller
891         passes NULL here.
892
893         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
894
895         * *.c: use g_pattern_*() API.
896
897         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
898
899         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
900         directions aren't passed in.
901
902         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
903         functionality to be usable from gtkstyle.c as well, give precedence
904         for conversion to user-supplied parsers.
905         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
906
907         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
908         _gtk_settings_parse_convert() for rcporperty value conversion.
909
910 2001-04-03  Alexander Larsson  <alexl@redhat.com>
911
912         * gdk/linux-fb/gdkevents-fb.c:
913         Add empty gdk_setting_get().
914
915 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
916
917         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
918         variable names.
919         
920         * gtk/makeenums.pl: touch this so enum files get remade.
921
922 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
923
924         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
925         work again when not sorted.
926
927         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
928         and "expand_row" signal, closing bug 52578.
929
930         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
931         support.
932
933         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
934         support.
935
936 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
937
938         * gdk/gdkevents.h: Add GdkEventSetting event for notification
939         of changes to system settings, gdk_setting_get() to retrieve
940         a single system setting.
941
942         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
943         to the draft XSETTINGS mechanism.
944
945         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
946         XSETTINGS.
947
948         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
949         of GDK settings changes to the GtkSettings object.
950
951         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
952         double-click-timeout property to GDK.
953
954         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
955         Define GDK boxed types here.
956
957         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
958         gdk/gdkenumtypes.[ch] for enum definitions.
959
960         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
961         * gtk/gtk-boxed.defs: Comment out GDK types
962         * gtk/gtktypeutils.h: Remove GDK types
963         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
964
965 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
966
967         * Applied patch from Ron Steinke to add signal accumulators
968         so that signals with the convention 'TRUE return means
969         handled' stop emission on a TRUE return.
970
971         * gtk/gtkmain.[ch]: Add private accumulator 
972         _gtk_boolean_handled_accumulator, used throughout GTK+.
973         
974         * gtk/gtkspinbutton.c: Add accumulator for ::output.
975
976         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
977         
978         * gtk/gtkwidget.c: Add accumulators for event signals,
979         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
980         for ::mnemonic-activate.
981
982         * gtk/gtkwindow.c: Add accumulator for ::frame_event
983
984 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
985
986         * gtk/gtkwidget.c: Add missing include.
987
988 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
989
990         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
991         marshaller.
992
993         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
994         "changed" signal to "range_changed".
995
996         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
997         removing a tree from one model would remove all trees from that
998         model.
999         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1000         changed signal instead.
1001
1002 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1003
1004         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1005         chaining up to parent impl, since we have a INPUT_ONLY
1006         window.
1007
1008         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1009         foreground color for the cursor.
1010
1011 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1012
1013         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1014         param spec when caching property values, since we unref it
1015         later when we free the style.
1016
1017         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1018         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1019
1020 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1021
1022         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1023         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1024         stupidity.
1025
1026 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1027
1028         [ First pass at adding style properties. Still needs some definite
1029         fine-tuning. ]
1030
1031         * gtk/gtkbutton.c: Add ::default_spacing style property.
1032          
1033         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1034         ::indicator_spacing style properties.
1035
1036         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1037         style properties.
1038
1039         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1040         rather than a normal property.
1041
1042         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1043         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1044
1045         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1046         Honor ::interior_focus.
1047         
1048         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1049         TRUE.
1050
1051         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1052         Add ::slider_width, ::trough_border, ::stepper_size,
1053         ::stepper_spacing style properties.
1054
1055         * gtk/gtkscale.[ch] Add ::slider-length style property.
1056
1057 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1058
1059         * gdk/linux-fb/gdkwindow-fb.c:
1060         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1061         warnings that were spewed on startup.
1062
1063         * gtk/gtkwindow-decorate.c:
1064         gtk_window_reposition -> _gtk_window_reposition
1065
1066 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1067
1068         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1069         Add boxed type for GtkRequistion. Use it for ::size-request.
1070
1071         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1072         Add a new GtkBorder structure useful for geometry properties
1073         for widgets. Add corresponding GTK_TYPE_BORDER.
1074         
1075         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1076         Support automatic parser selection like
1077         gtk_settings_install_property_parser().
1078
1079         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1080         functionality for use by gtk_widget_class_install_style_property.
1081         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1082
1083 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1084
1085         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1086         g_param_spec_unichar(). 
1087
1088 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1089
1090         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1091         _NET window managers.
1092
1093         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1094
1095 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1096
1097         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1098         bad needs to be nuked, not just deprecated.
1099
1100         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1101         gtk_widget_popup().
1102
1103         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1104         
1105         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1106         widget.
1107         
1108         * docs/Changes-2.0.txt: updates.
1109         
1110 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1111
1112         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1113         for (i = 0; i < 100; i ++)
1114           g_print ("I will confirm it compile before committing\n");
1115
1116 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1117
1118         * gtk/gtktreestore.c: Initial work on implementing the
1119         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1120
1121 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1122
1123         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1124         reference counts around emissions where the widget is used afterwards.
1125         added freeze/thaws around multiple properties being notified.
1126         (_gtk_widget_get_aux_info): cleanups.
1127         
1128         * gtk/gtksettings.c (gtk_settings_install_property): provide
1129         default parsing functions for gdkcolor, enums and flags.
1130
1131         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1132         applied by owen.
1133         backed out gtk_window_get_location(), gtk_window_set_location(),
1134         gtk_window_get_size() and gtk_window_set_size(), these
1135         have to be sorted out wrg x/y/width/height/default_with/default_height
1136         properties.
1137         kept a flag in GtkWindowGeometryInfo to handle user
1138         resetting default sizes.
1139         cleaned up ZVT comments.
1140         bunch of assorted bug fixes, notification fixes.
1141         (_gtk_window_reposition): make this a really internal function.
1142         
1143         * gtk/testgtk.c: fixups.
1144         
1145 2001-03-31  Hans Breuer  <hans@breuer.org>
1146
1147         * config.h.win32.in : disable USE_MMX for msvc build cause
1148         the assembler doesn't fit and is out of my scope. Disable
1149         USE_GMODULE for msvc build as wel. The right way to share
1150         binaries on win32 would be to use libtiff.dll etc. To reduce
1151         installation hassles IMO it's better to include all fileformats
1152         builtin to gdk-pixbuf
1153
1154         * gdk-pixbuf/makefile.msc : new file
1155
1156         * gdk/gdk.def : updated
1157
1158         * gdk/win32/gdkevents-win32.c : don't erase the background if
1159         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1160         buttons
1161         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1162
1163         * gdk/win32/gdkwindow-win32.c : added three new functions like
1164         the X version. Only one is implemented, because the other two
1165         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1166         be default behaviour on win32 anyway ...
1167
1168         * gtk/gtk.def : updated
1169
1170         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1171         from where it was built and add an additional rule to automagically
1172         build gtkmarshal.[hc]
1173
1174         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1175         before array access for the current entry isn't finished
1176
1177         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1178         use g_return_val_if_fail
1179
1180         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1181         for the static array, but let the compiler calculate it. It
1182         makes me wonder if gcc isn't capable to catch bugs like this ...
1183
1184 2001-03-31  James Henstridge  <james@daa.com.au>
1185
1186         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1187         constant "-1" in the aux info structure.
1188
1189 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1190
1191         * gtk/gtkbutton.c (gtk_button_get_property):
1192         * gtk/gtklabel.c:
1193         Remove leaks.
1194         
1195         * gtk/gtkcontainer.c:
1196         * gtk/gtkhscale.c:
1197         * gtk/gtkhscrollbar.c:
1198         * gtk/gtklayout.c:
1199         * gtk/gtkmisc.c:
1200         * gtk/gtkprogress.c:
1201         * gtk/gtkprogressbar.c:
1202         * gtk/gtkrange.c:
1203         * gtk/gtktable.c:
1204         * gtk/gtkviewport.c:
1205         * gtk/gtkvscale.c:
1206         * gtk/gtkvscrollbar.c:
1207         * gtk/gtkwidget.c:
1208         Property patches, based on patches from John Margaglione and Lee Mallabone.
1209
1210 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1211
1212         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1213         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1214         inline API function docs.
1215         (gtk_spin_button_new_with_range): New convenience constructor.
1216         (gtk_spin_button_set_increments): New adjustment helper.
1217         (gtk_spin_button_set_range): New adjustment helper.
1218
1219         * gtk/testgtk.c : added test of the new convenince constructor and
1220         value_changed signals.
1221
1222 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1223
1224         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1225         listen to the reorder signal.
1226
1227 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1228
1229         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1230         to get the aux info structure fo the widget.
1231
1232         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1233         above function.
1234
1235         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1236
1237         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1238         to get the size of the window manager frame, basically the same
1239         code that gdk_window_get_root_origin() had
1240         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1241
1242         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1243         gdk_window_resize() if the window is realized and resizeable
1244
1245         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1246         typo so that setting gravity works
1247
1248         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1249         allocation if auto_shrink is on, even if the default size
1250         has not changed.
1251
1252         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1253         g_return_if_fail
1254
1255 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1256
1257         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1258         reordering/sorting work.  Now pretty much works.
1259
1260         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1261         reorder mostly work.  Still need to get the parity correct.
1262
1263         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1264         signal, so I can listen for the sort_column_changed signal so I
1265         can change my "sort_indicator" property.  Cool.
1266
1267 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1268
1269         [ Patch from Havoc Pennington, hp@redhat.com ]
1270
1271         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1272         Add functions gdk_window_begin_resize_drag/begin_move_drag
1273         to start resizing or moving a toplevel window. This
1274         is done either using the _NET_WM_MOVERESIZE protocol,
1275         or, if that isn't present, by emulation.
1276
1277         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1278         to export the above to GTK+-land.
1279
1280         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1281         
1282         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1283         Move this function into gdkwindow, since we need it
1284         when implementing fallback resizing.
1285
1286         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1287         Fix typo when setting gravity.
1288
1289         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1290         Add an optional (but on by default) resize grip for resizing 
1291         the parent window.
1292
1293 01-03-29  Alexander Larsson  <alexl@redhat.com>
1294
1295         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1296         Don't return TRUE from the event handler, that blocks all
1297         event signals on the tooltip widget. Now you can press buttons
1298         in toolbars again.
1299
1300 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1301
1302         * gtk/testtext.c (create_buffer): Add missing NULL on
1303         valist.
1304
1305         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1306         c-n-p problem with INCONSISTENT property.
1307
1308         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1309
1310         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1311         hook.
1312
1313         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1314         signal as a hook for extending the default popup menu
1315
1316         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1317         use radio menu items for the input method menuitems
1318
1319         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1320         inserted unicode from Ctrl-Shift-hex input method
1321
1322         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1323         validatation here, already done at GtkTextBuffer level.
1324
1325         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1326         popup_menu run action signal and Shift+F10 and Menu keybindings.
1327
1328         * gtk/gtkentry.c: implement a default handler for popup_menu
1329
1330         * gtk/gtktextview.c: implement a default handler for popup_menu
1331
1332         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1333         from a key event
1334         
1335         * gtk/gtklabel.c: remove "trailer" cruft
1336
1337 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1338
1339         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1340         handle reordering of trees.  Seems to mostly work w/ the exception
1341         of the parity flag.
1342
1343         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1344         signal.
1345
1346 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1347
1348         * gtk/gtkwidget.h: c++ fixes.
1349
1350 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1351
1352         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1353         memory.
1354
1355 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1356
1357         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1358         Nils Barth fixing event return values. (#51041)
1359
1360         * gtk/gtkwidget.c: Fix some return values for default
1361         functions.
1362
1363         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1364         return values for trough_keys functions.
1365
1366         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1367         value for add_accelerator (shoudl have been a void
1368         return.)
1369
1370         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1371         Fix return type of EVENT.
1372
1373         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1374         signal return a boolean.
1375
1376 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1377
1378         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1379         reordered signal.
1380
1381         * tests/testtreesort.c (main): fix spelling.
1382
1383 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1384
1385         * gtk/gtkliststore.c: More work on implementing sortable
1386         interface.
1387
1388 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1389
1390         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1391         reference the widgets in the resulting list. (#11821)
1392         This makes this consistent with gtk_container_children.
1393
1394         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1395         uses of gtk_window_list_toplevels.
1396
1397 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1398
1399         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1400         a virtual function to set whether the IM context should use 
1401         the preedit string. (#51922)
1402         
1403 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1404
1405         * gdk/gdkpango.h: Remove stale FIXME comment.
1406
1407 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1408
1409         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1410         Fixed bug that returned NULL if a filename was selected.
1411
1412 2001-03-24  Havoc Pennington  <hp@pobox.com>
1413
1414         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1415         to contain the word "theme"
1416
1417 2001-03-24  Havoc Pennington  <hp@pobox.com>
1418
1419         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1420         slower but finer-grained
1421         (gtk_hsv_focus): get initial focus on the ring or triangle 
1422         according to tab direction
1423
1424         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1425
1426 2001-03-23  Havoc Pennington  <hp@pobox.com>
1427
1428         * gtk/gtkhsv.c: make this somewhat key-navigable
1429
1430         * gtk/gtkfontsel.c: mnemonics
1431
1432         * gtk/gtkgamma.c: mnemonics
1433
1434         * gtk/gtkcolorsel.c: add mnemonics to labels
1435
1436 2001-03-22  Havoc Pennington  <hp@pobox.com>
1437
1438         Applied big patch from Seth Lytle to fix event handler return
1439         values, slightly modified.
1440
1441         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1442         handled.
1443         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1444         select_day
1445
1446         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1447         (gtk_clist_button_release): return TRUE if handled
1448
1449         * gtk/gtkcolorsel.c (mouse_release):
1450         (palette_activate): 
1451         (palette_press): 
1452         (palette_new): 
1453         (mouse_press): 
1454         (get_screen_color): 
1455         fixed return type (void to gboolean), return TRUE,
1456         added GTK_SIGNAL_FUNC cast
1457
1458         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1459         (void to gboolean), and return TRUE
1460         (gtk_combo_button_release): changed return value to TRUE after
1461         gtk_grab_add on combo->popwin
1462
1463         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1464         collapse or expand
1465
1466         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1467         button/motion
1468
1469         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1470         press/release and motion that trigger act
1471
1472         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1473
1474         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1475         for GDK_Return
1476         
1477         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1478         (gtk_list_button_release): return TRUE if selection
1479
1480         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1481         press
1482
1483         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1484         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1485
1486         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1487         nothing triggered
1488         (gtk_notebook_button_release): return TRUE if we do anything
1489
1490         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1491         (gtk_spin_button_button_release): return TRUE or chained retval
1492
1493         * gtk/gtktext.c (gtk_text_button_press): 
1494         (gtk_text_button_release): return TRUE
1495         (gtk_text_key_press): remove redundant retval code
1496         
1497         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1498         and sensitive
1499         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1500         TRUE if sensitive
1501
1502         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1503         return TRUE
1504
1505 2001-03-23  Havoc Pennington  <hp@redhat.com>
1506
1507         * gtk/testgtk.c: fix warnings
1508
1509         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1510
1511         * gtk/gtktextview.c: fix warnings
1512
1513         * gtk/gtktext.c (find_cursor_at_line): fix warning
1514
1515         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1516
1517         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1518         of this function
1519
1520         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1521         fix warning
1522
1523         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1524
1525         * gtk/gtkfontsel.c: fix warning
1526
1527         * gtk/gtkcolorsel.c: fix warnings
1528
1529 2001-03-23  Havoc Pennington  <hp@redhat.com>
1530
1531         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1532
1533         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1534
1535         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1536         and deprecated gtk_check_menu_item_set_show_toggle().
1537         
1538         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1539
1540         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1541
1542         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1543
1544 2001-03-23  Havoc Pennington  <hp@redhat.com>
1545
1546         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1547         some docs
1548
1549 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1550
1551         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1552         this.
1553
1554         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1555         set_cell to set_value
1556
1557         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1558         set_cell to set_value
1559
1560 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1561
1562         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1563         fix braino.
1564         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1565         support.
1566
1567         * gtk/gtktreeview.c: Addition of initial sortable support.
1568
1569         * gtk/gtktreestore.c: Addition of initial sortable support.
1570
1571         * gtk/gtkliststore.c: Addition of initial sortable support.
1572
1573         * gtk/gtkmarshal.list: yet another marshaller.
1574
1575         * gtk/gtktreedatallist.[ch]: shared code between the store models
1576         for handling sorting headers.
1577
1578 2001-03-22  Havoc Pennington  <hp@redhat.com>
1579
1580         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1581         (gtk_container_unset_focus_chain): Add ability to override the 
1582         focus chain for a container explicitly
1583
1584 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1585
1586         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1587         added PROP_MNEMONIC_WIDGET.
1588
1589         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1590         (gtk_window_remove_mnemonic): 
1591         (gtk_window_add_mnemonic): fixed assertions.
1592         (gtk_window_activate_mnemonic): constrain modifier checks to those
1593         permitted by gtk_accelerator_get_default_mod_mask().
1594         got rid of gtk_window_get_default_accel_group().
1595
1596         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1597         activatable widgets either by focussing or a warning.
1598         added a signal accumulator to ::activate_mnemonic which stops the
1599         emission once a handler returned TRUE.
1600
1601 2001-03-22  Havoc Pennington  <hp@pobox.com>
1602
1603         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1604         the stock item label
1605
1606         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1607
1608         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1609
1610         * demos/gtk-demo/*.c: Add mnemonics all over the place
1611
1612         * gtk/gtklabel.h: mark parse_uline deprecated
1613
1614 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1615
1616         * gtk/gtkitemfactory.[ch]:
1617         Add support for stock and normal imagemenuitems.
1618         
1619         * gtk/testgtk.c:
1620         Add some tests for mnemonics, stock toolbars, stock
1621         and image menuitems in itemfactory and gdk_window_scroll.
1622
1623 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1624
1625         * gtk/gtkbutton.[ch]:
1626         * gtk/gtkdialog.c:
1627         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1628         removed accel_group argument. Renamed gtk_button_new_accel() to
1629         gtk_button_new_with_mnemonic() and removed accel_group argument.
1630
1631         * gtk/gtkcheckbutton.[ch]:
1632         New function gtk_check_button_new_with_mnemonic().
1633
1634         * gtk/gtkentry.c:
1635         Override activate_mnemonic and just grab focus.
1636
1637         * gtk/gtkitemfactory.c:
1638         Don't add menu uline accel group, instead use mnemonics support.
1639
1640         * gtk/gtklabel.[ch]:
1641         New support for mnemonics.
1642
1643         * gtk/gtkmarshal.list:
1644         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1645
1646         * gtk/gtkmenu.[c]:
1647         * gtkmenushell.c:
1648         Use mnemonics instead of accel groups for uline
1649         support in menu items.
1650         Removed gtk_menu_get_uline_accel_group() and
1651         gtk_menu_ensure_uline_accel_group().
1652
1653         * gtk/gtkmenuitem.c:
1654         Override activate_mnemonic to handle switching between
1655         menu items if there are collisions.
1656         
1657         * gtk/gtknotebook.c:
1658         Connect to activate_mnemonic on the tab_label, so that
1659         activating it switches to that notebook page.
1660
1661         * gtk/gtkwidget.[ch]:
1662         Add activate_mnemonic signal. New function
1663         gtk_widget_activate_mnemonic() to emit it.
1664         Default implementation does activate/grab_focus.
1665
1666         * gtk/gtkwindow.[ch]:
1667         Add support for mnemonics in windows.
1668         New functions:
1669         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1670         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1671
1672         * gtk/testgtk.c:
1673         Update to function name changes.
1674         
1675 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1676
1677         * gtk/gtkimagemenuitem.[c]:
1678         Add gtk_image_menu_item_new_from_stock()
1679
1680 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1681
1682         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1683         Fix buglet in meeting.
1684
1685 2001-03-19  Havoc Pennington  <hp@redhat.com>
1686
1687         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1688         add a bunch of accessor functions. This is because we have
1689         reasonable expectations of extending what fields it contains in
1690         the future.
1691
1692         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1693         changes
1694
1695         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1696         GtkIconSource   
1697
1698 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1699
1700         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1701         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1702
1703         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1704           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1705           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1706           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1707         Change float to double everywhere with the exception of 0<->1.0 alignment
1708         and GtkCurve.
1709
1710 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1711
1712         * gdk/win32/gdkdrawable-win32.c
1713         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1714         output.
1715
1716         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1717         gdkwin32.h.
1718
1719 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1720
1721         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1722         print_event_state, print_event): Use preprocessor macro to make
1723         code more compact. Print also GDK_WINDOW_STATE events.
1724         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1725         
1726         * gtk/gtk.def
1727         * gtk/makefile.mingw.in: Update.
1728
1729         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1730         to catch also Cygwin.
1731
1732 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1733
1734         * gtk/gtkspinbutton.[hc]: added rc-style argument
1735         GtkSpinButton::shadow_type.
1736         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1737         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1738         rc-style settings.
1739
1740         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1741
1742         * gtk/gtkwidget.c: quark cleanups.
1743
1744         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1745         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1746         to create_rc_style() (we don't do cloning in standard OO sense).
1747         added per rc style properties.
1748         
1749         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1750         property values and for caching those. some cleanups.
1751         
1752         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1753         
1754         * gtk/gtksettings.[hc]: new file for global rc-file properties
1755         (at least currently, should get extended to support X properties
1756         and other communication mechanisms).
1757         
1758         * gtk/gtkwidget.[hc]: added style property support:
1759         (gtk_widget_class_install_style_property_parser): install style
1760         property pspec with parser function for rc-file values other
1761         than LONG, DOUBLE or STRING.
1762         (gtk_widget_class_install_style_property): same as above without
1763         parser (parsers are going to be needed quite infrequently).
1764         (gtk_widget_style_get_property): retrive style property value.
1765         (gtk_widget_style_get_valist): same as above with varargs support,
1766         has NOCOPY semantics.
1767         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1768
1769 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1770
1771         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1772         "row_activated" signal.
1773
1774         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1775         stupidity.  Lets actually pass in the row with this signal...
1776
1777 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1778
1779         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1780
1781         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1782
1783         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1784         everything into the ::destroy function, and freed a lot more.
1785
1786 2001-03-16  Havoc Pennington  <hp@redhat.com>
1787
1788         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1789         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1790         are now allowed.
1791
1792 2001-03-16  Havoc Pennington  <hp@redhat.com>
1793
1794         * Applied patch from Nils Barth (bug # 51041) to 
1795         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1796         in various places.
1797
1798 2001-03-15  Havoc Pennington  <hp@redhat.com>
1799         
1800         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1801         for properties to set on the tag.
1802
1803         * gtk/testtext.c: fixups to reflect create_tag change
1804         
1805         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1806         background/foreground stipple are objects, not boxed.
1807
1808         * demos/gtk-demo/textview.c: intellihancing
1809
1810 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1811
1812         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1813         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1814
1815 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1816
1817         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1818         Fix sign error with queued region translations.
1819
1820 2001-03-15  HideToshi Tajima  <tajima@happy>
1821
1822         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1823         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1824         * gtk/gtkentry.c (update_im_cursor_location): 
1825         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1826         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1827         set_cursor_pos to set_cursor_location in GtkInputContext class
1828
1829 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1830
1831         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1832         the location of the cell relative to its area.
1833         * gtk/gtkcell*: modified for above change
1834         * gtk/gtktreeview.c: modified for above change.
1835
1836 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1837
1838         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1839          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1840         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1841
1842 2001-03-14  Havoc Pennington  <hp@redhat.com>
1843
1844         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1845         
1846         * gtk/gtk.h: remove gtkdata.h
1847
1848         * gtk/Makefile.am: remove gtkdata
1849         
1850         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1851         not "disconnect" on the adjustments.
1852         
1853         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1854         GtkData
1855
1856         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1857         not GtkData
1858
1859         * configure.in: handle case where X render exists, but Pango lacks
1860         Xft support.
1861
1862 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1863
1864         * gtk/gtktoolbar.[ch]:
1865         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1866         to add stock items to toolbars.
1867
1868         * gtk/Makefile.am:
1869         Remove ../gdk/gdkim.h from gdk_headers.
1870
1871 2001-03-15  Sven Neumann  <sven@gimp.org>
1872
1873         * gdk/gdkim.h: removed
1874         
1875         * gdk/gdkprivate.h
1876         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1877
1878 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1879
1880         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1881         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1882         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1883         set_cursor_pos() virtual method
1884
1885         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1886         (gtk_im_context_xim_set_cursor_pos): add implementation for
1887         set_cursor_pos() method
1888
1889         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1890         position to input methods
1891
1892 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1893
1894         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1895         code a lot.
1896
1897         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1898         g_mem_chunk.
1899         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1900         (_gtk_tree_data_list_node_to_value): Fix to switch on
1901         G_TYPE_FUNDAMENTAL.
1902         (_gtk_tree_data_list_value_to_node): Fix to switch on
1903         G_TYPE_FUNDAMENTAL.
1904         (_gtk_tree_data_list_node_copy): Fix to switch on
1905         G_TYPE_FUNDAMENTAL.
1906
1907 2001-03-12  Havoc Pennington  <hp@redhat.com>
1908
1909         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1910         to convert to new property API. Also, change default_width and
1911         default_height get_property to return 0 as the flag value for
1912         "unset"; -1 is not a valid value for these fields.
1913
1914 2001-03-12  Havoc Pennington  <hp@redhat.com>
1915
1916         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1917         enum with registration for icon sizes, instead of strings.
1918
1919         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1920         gtkwidget.c: Fix to reflect GtkIconSize
1921         
1922 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1923
1924         Make GtkFB compile and link.
1925         
1926         * gdk/linux-fb/gdkdrawable-fb2.c:
1927         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1928         
1929         * gdk/linux-fb/gdkwindow-fb.c:
1930         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1931         Added gdk_window_shape_combine_region.
1932         Added assorted placeholders for unimplemented new GdkWindow API calls.
1933
1934 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1935
1936         * gtk/gtkfilesel.c:
1937         Add more test when converting filenames from/to utf-8.
1938         Don't allow entering text in the filename entry which isn't allowed in
1939         a filename. Just beep instead.
1940
1941 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1942
1943         * gtk/gtkclist.c:
1944         Scroll using gdk_window_scroll(). Don't wait for exposes.
1945         Move the column headers in an order that makes them flash less.
1946
1947 2001-03-10  Hans Breuer  <hans@breuer.org>
1948
1949         * gdk/gdk.def : updated
1950
1951         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1952         to offseting the clip_mask at the right place
1953
1954         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1955         for all the gdkClasses, especially not for the input_only case.
1956         Otherwise flickering wont be avoidable, because we don't get
1957         WM_ERASEBKGND message for these windows.
1958
1959         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1960         and fixed massive redraw problems apparently triggered by Alexanders 
1961         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1962         but it seems to work quite well :-)
1963
1964         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1965         prototype
1966
1967 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1968
1969         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1970         (gtk_list_store_set_cell): Fix a stupid typo.
1971
1972 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1973
1974         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1975         select_all not work if you're in SINGLE mode (it doesn't make that
1976         much sense, anyway.)
1977
1978         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1979         handle types more sanely.
1980         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1981         (_gtk_tree_data_list_node_copy): handle types more sanely.
1982
1983         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1984         GValue better. Converts the type as well.
1985
1986         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1987         GValue better. Converts the type as well.
1988
1989 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1990
1991         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1992         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1993         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1994         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1995
1996         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1997         gdk_im/gdk_ic.
1998
1999 2001-03-09  Hans Breuer  <hans@breuer.org>
2000
2001         * gdk/gdk.def : updated
2002
2003         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2004         for their palette
2005
2006         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2007         removing
2008
2009         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2010         removing and implemented Havoc's GdkWindow state functions; 
2011         stick/unstick only as no-op, cause I don't know how to emulate 
2012         on win32 ...
2013
2014         * gtk/gtk.def : updated
2015
2016         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2017
2018         * gtk/gtktypeutils.c : #include <string.h>
2019
2020         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2021
2022 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2023
2024         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2025         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2026         not a boxed.
2027
2028 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2029
2030         * docs/Changes-2.0.txt:
2031         Document expose event->region change and that gtk_widget_event
2032         doesn't allow passing expose events.
2033
2034         * gdk/gdkevents.h:
2035         Add region to expose event.
2036         
2037         * gdk/gdkevents.c:
2038         Handle event->region in gdk_event_copy() and gdk_event_free().
2039
2040         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2041         Generate expose_event->region when creating expose events.
2042
2043         * gdk/x11/gdkevents-x11.c:
2044         Generate expose events with regions when translating X events.
2045
2046         * gtk/gtkcontainer.[ch]:
2047         Default expose handler that propagates expose events to NO_WINDOW
2048         children. New function gtk_container_propagate_expose()
2049
2050         * gtk/gtkwidget.[ch]:
2051         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2052         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2053         expose events. New function gtk_widget_send_expose() to send expose
2054         events. New function gtk_widget_region_intersect() to calculate
2055         window/region intersections.
2056         
2057         * gtk/gtkmain.c (gtk_main_do_event):
2058         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2059         Use gtk_widget_send_expose() to send expose events.
2060         
2061         * gtk/gtkbin.c:
2062         * gtk/gtkbox.c:
2063         * gtk/gtkfixed.c:
2064         * gtk/gtkimagemenuitem.c:
2065         * gtk/gtklist.c:
2066         * gtk/gtkpacker.c:
2067         * gtk/gtktable.c:
2068         * gtk/gtktree.c:
2069         Remove expose handler, using the default container implementation
2070         instead.
2071         
2072         * gtk/gtkbutton.c:
2073         * gtk/gtkcheckbutton.c:
2074         * gtk/gtkeventbox.c:
2075         * gtk/gtkfixed.c:
2076         * gtk/gtkhandlebox.c:
2077         * gtk/gtklayout.c:
2078         * gtk/gtklistitem.c:
2079         * gtk/gtkmenu.c:
2080         * gtk/gtkmenubar.c:
2081         * gtk/gtkmenuitem.c:
2082         * gtk/gtknotebook.c:
2083         * gtk/gtkoptionmenu.c:
2084         * gtk/gtkpaned.c:
2085         * gtk/gtkscrolledwindow.c:
2086         * gtk/gtktogglebutton.c:
2087         * gtk/gtktoolbar.c:
2088         * gtk/gtktreeitem.c:
2089         * gtk/gtkviewport.c:
2090         Chain expose handler to parent class handler. Use
2091         gtk_container_propagate_expose() to propagate exposes.
2092
2093         * gtk/gtkclist.c (check_exposures):
2094         * gtk/gtktext.c (process_exposes):
2095         Use gtk_widget_send_expose instead of gtk_widget_event.
2096
2097 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2098
2099         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2100
2101 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2102
2103         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2104         unref the nodes.   Fixes bug #50058.
2105
2106         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2107         "::ref_iter" to "::ref_node".
2108         (gtk_tree_model_unref_node): change "::unref_iter" to
2109         "::unref_node". Fixes bug #50064.
2110
2111 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2112
2113         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2114         support for invisible cells.
2115          (gtk_tree_view_bin_expose): ditto
2116
2117 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2118
2119         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2120         on gobjects.
2121
2122         * tests/testtreefocus.c (main): New test file.
2123
2124         * tests/testtreeview.c: update to latest glib changes.
2125
2126         * tests/testtreecolumns.c: update to latest glib changes.
2127
2128 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2129
2130         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2131
2132 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2133
2134         * *.c: added accumulator data argument to g_signal_newc()
2135         functions.
2136
2137         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2138         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2139         * gtk/treestoretest.c (make_window):
2140         s/g_signal_connect/g_signal_connectc/.
2141
2142         * gtk/gtktextbuffer.c: completed signal arg fixups,
2143         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2144
2145 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2146
2147         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2148         G_CONST_RETURN.
2149
2150         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2151         ::hierarchy-changed signal when a widget changes
2152         from anchored to unanchored or vice versa.
2153         (anchored means 
2154          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2155         Use a private flag to keep track of this efficiently.
2156
2157 2001-03-07  Havoc Pennington  <hp@redhat.com>
2158
2159         * gtk/testgtk.c (create_spins): uglify so that size request gets
2160         tested.
2161
2162         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2163         request on values for upper/lower, completes #6152
2164
2165 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2166
2167         * Makefile.am: Remove gtk-config-2.0 again.
2168         (Grrrr, pkg-config. And stops make loops.)
2169
2170 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2171
2172         * gtk/gtksignal.[hc]: removed old emission hook API.
2173         
2174         * docs/Changes-2.0.txt: fixed sections.
2175         
2176         * gtk/gtktextbuffer.c: signal arg fixups.
2177
2178 2001-03-07  Havoc Pennington  <hp@redhat.com>
2179
2180         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2181
2182         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2183         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2184         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2185         validation and the redraw which is higher priority than the
2186         validation.
2187
2188 2001-03-07  Havoc Pennington  <hp@redhat.com>
2189
2190         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2191         (gtk_entry_set_property): remove trailer
2192
2193         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2194         (gtk_entry_get_width_chars): new functions, to set size request to 
2195         a given number of characters
2196
2197         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2198
2199         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2200         (gtk_dialog_get_has_separator): new function
2201         (run_delete_handler): fix to not emit "response" signal
2202         because we already did in the delete event handler installed
2203         at dialog creation time.
2204         
2205         * gtk/gtkdialog.h: add a has_separator property,
2206         add GTK_DIALOG_NO_SEPARATOR flag
2207
2208 2001-03-07  Havoc Pennington  <hp@redhat.com>
2209
2210         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2211         off decorations for a window.
2212
2213         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2214         changes
2215
2216         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2217         to get location of PangoLayout inside the label, closes #51198
2218
2219         * gtk/testgtk.c (create_bbox): fix up button box usage
2220
2221         * gtk/testcalendar.c (create_calendar): fix up button box usage
2222
2223         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2224
2225         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2226
2227         * gtk/gtkhbbox.h: deprecations
2228
2229         * gtk/gtkvbbox.h: deprecations
2230
2231         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2232         emulate deprecated gtk_button_box_get_spacing
2233
2234         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2235         the "set global default" functions
2236         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2237         GtkBox base class
2238
2239         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2240
2241         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2242         render the icon, return the missing image icon.
2243
2244         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2245         image icon if the load fails.   
2246
2247         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2248         when no image is found; should be the Netscape "missing image"
2249         icon eventually but for now is a random image
2250
2251         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2252         role for the session manager
2253
2254         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2255
2256         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2257         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2258
2259         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2260
2261 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2262
2263         * gtk/*.c: marshaller fixes.
2264         
2265         * gtk/gtkmarshal.list: extreme cleanup.
2266
2267         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2268         param spec for now.
2269
2270         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2271         where appliable.
2272
2273         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2274         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2275         which are not reference counted:
2276         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2277         PangoFontDescription, GtkTreeIter and GtkTreePath.
2278
2279 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2280
2281         * gtk/gtktreeselection.h: 
2282         * gtk/gtktreemodel.c:
2283         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2284         file should be included directly, and gobject/gmarshal.h
2285         as well as gtk/gtkmarshal.h even can't be included directly.
2286
2287         * Makefile.am: grr, install gtk-config-2.0.
2288
2289         * gtk/testgtk.c:
2290         * gtk/simple.c:
2291         * gtk/gtkmenu.c:
2292         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2293         passing "*signal*::*" args to gtk_widget_set().
2294         
2295         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2296         
2297         * gtk/*.c: removed trailer arg from property setters and getters.
2298         macro fixups.
2299
2300 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2301
2302         * gtk/gtklabel.c (set_markup): Removed warning
2303
2304 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2305
2306         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2307         field to allow you to hide cell renderers.
2308
2309         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2310
2311         * gtk/gtktreeview.c: Add support for invisible cells.
2312
2313 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2314
2315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2316         Add "clicked" signal back to columns.
2317
2318         * ChangeLog: remove conflict markers.
2319
2320 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2321
2322         * gtk/gtkbutton.c: Add animation of activation by, on 
2323         activate, pressing the button, and adding a timeout that 
2324         releases the button after 250ms or on key release and
2325         emits ::clicked. (#51501)
2326
2327         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2328         action area, we connect to ::clicked instead of ::activate
2329         so the dialog stays up through the animation.
2330
2331 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2332
2333         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2334         check the ignore_enter flag for the menu shell that
2335         the item is actually a child of, not for attached
2336         submenus. (#51536)
2337
2338 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2339
2340         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2341         special key-press grab handling for widgets within
2342         GtkWindows. Otherwise, fall through to normal case.
2343
2344         This prevents key events being sent twice to GtkInvisible
2345         widgets, which can cause all sorts of mischief.
2346
2347 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2348
2349         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2350         widget is in effect, give the grab widget a first
2351         crack at KEY_PRESS/RELEASE events. (#424)
2352
2353 2001-03-06  James Henstridge  <james@daa.com.au>
2354
2355         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2356         offset for the window_state_event to point at window_state_event
2357         rather than no_expose_event.
2358
2359 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2360
2361         * gtk/gtkimmodule.h: fix busted /* comment */
2362
2363 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2364
2365         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2366         object properties.
2367
2368 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2369
2370         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2371         add object properties.
2372
2373         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2374         to add object properties.
2375
2376         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2377         object properties.
2378
2379         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2380         add object properties.
2381
2382         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2383         object properties.
2384
2385 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2386
2387         * gtk/gtktreemodel.c: renamed "child_toggled" to
2388         "has_child_toggled".
2389
2390         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2391         handle new signal name.
2392
2393         * gtk/gtktreestore.c: Updated to handle new signal name.
2394         * gtk/gtklisttore.c: Updated to handle new signal name.
2395         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2396
2397 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2398
2399         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2400         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2401
2402 2001-03-05  Michael Natterer  <mitch@gimp.org>
2403
2404         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2405         pixbuf-engine coincidentially also failed to make one of it's
2406         parent_class pointers static, causing overwriting of GtkLabel's
2407         parent_class pointer in pixbuf_style_class_init().
2408         (Will commit the fix to the pixbuf-engine too).
2409
2410 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2411
2412         * gdk/gdkwindow.h:
2413         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2414         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2415         gdk_window_set_icon_list for net wmspec functionality.
2416
2417         * gdk/x11/gdkwindow-x11.c:
2418         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2419         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2420         gdk_window_set_icon_list.
2421         Added gdk_wmspec_change_state helper function and used it in the code.
2422         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2423
2424         * gtk/gtkdialog.c (gtk_dialog_init):
2425         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2426
2427         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2428         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2429
2430         * gtk/gtkwindow.c:
2431         new function gtk_window_set_type_hint.
2432         On realize, set type hint and modal hint.
2433
2434         * gtk/gtkwindow.h:
2435         Added type_hint field and gtk_window_set_type_hint.
2436
2437 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2438
2439         * gtk/gtklabel.[ch]:
2440         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2441         New function gtk_label_get_accel_keyval () to get the underline accelerator
2442         of the label. Setting the label pattern overrides other attributes.
2443
2444 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2445
2446         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2447         Added missing initializers to gtk_rc_style_init().
2448
2449 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2450
2451         * gtk/gtktextview.c: fixed bug #51097 about setting 
2452         gtk_text_view_set_border_window_size() if the widget is 
2453         already realized.
2454
2455 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2456
2457         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2458
2459         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2460         comment. Won't do to have duplicated doc comments between
2461         the platform subdirs.
2462
2463 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2464
2465         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2466           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2467
2468         Detectable auto-repeat - make a repeating key generate
2469         press/press/press/release instead of press/release pairs.
2470
2471         If we have Xkb and XkbSetDectableAutoRepeat supports
2472         that, we do it that way. Otherwise, when we get
2473         a release event, we check ahead with XPending to see
2474         if the next key is a KeyPress with the same keycode
2475         and timestamp. (Not 100% reliable, but pretty close.)
2476           
2477 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2478         
2479         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2480         special key-press grab handling for widgets within
2481         GtkWindows. Otherwise, fall through to normal case.
2482  
2483         This prevents key events being sent twice to GtkInvisible
2484         widgets, which can cause all sorts of mischief.
2485  
2486 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2487  
2488         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2489         widget is in effect, give the grab widget a first
2490         crack at KEY_PRESS/RELEASE events. (#424)
2491  
2492 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2493
2494         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2495         to extend the selection. (Roughly based on patch
2496         from Jay Cox, #50939)
2497
2498         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2499         to properly handle previous GDK_BUTTON_PRESS. 
2500         (Patch from Jay Cox, #50938)
2501
2502         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2503         '\0' back along with the deleted text. (#51148)
2504
2505 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2508         the group when extracting it from the X keyboard event.
2509
2510         * modules/input/Makefile.am modules/input/imipa.c: 
2511         Simple module for entering IPA. (Do we need a 
2512         gtk-stupid-input-tricks CVS module?)
2513
2514 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2515
2516         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2517         const.
2518
2519         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2520
2521         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2522         is no focus widget for the dialog currently, grab the focus as well
2523         as the default.
2524
2525         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2526         the action area's children to iterate through, not the
2527         dialog's children.
2528
2529 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2530
2531         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2532         Add plug-socket tests. (Won't work worth a darn until I commit
2533         the rest of the plug-socket changes, but no reason these
2534         can't go into CVS now.)
2535
2536 2001-03-02  Havoc Pennington  <hp@redhat.com>
2537
2538         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2539         _gdk_region_get_xrectangles()
2540
2541         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2542
2543         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2544
2545         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2546         function, contributed by Ron Steinke    
2547
2548         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2549         gdk_net_wm_supports
2550
2551         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2552         New function, contributed by Ron Steinke
2553
2554         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2555         used to line up the text in the entry when using the entry for
2556         editable sheet cell hacks
2557
2558         * gtk/testgtk.c (create_entry): test the activate_default setting
2559         on GtkEntry
2560
2561         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2562         cause the entry to activate the default button for a dialog when 
2563         activated
2564         (gtk_entry_get_activates_default): new function
2565
2566 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2567
2568         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2569         Hwang to move call to sync_selection() up a few lines
2570         to before the row list is modified, to fix crash when
2571         removing rows in the undo_selection list.
2572
2573         (Test case provided by Daniel Elstner:
2574
2575         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2576
2577 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2578
2579         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2580         of tree->root_tree in parent_set rather than _map(), 
2581         fixing #50892 in a bit better manner.
2582
2583 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2584
2585         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2586
2587 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2588
2589         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2590         gtk_default_draw_shadow.
2591
2592 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2593
2594         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2595         warning, make warnings more verbose, treat a error
2596         in shmat as permanent, and don't try again.
2597         (#51163, Ed Randall.)
2598
2599 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2600
2601         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2602         delay for the first click before starting to scroll.
2603         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2604
2605         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2606         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2607
2608 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2609
2610         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2611         cleanup to remove some references to unused
2612         ->xoffset, ->yoffset.
2613
2614 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2617         mask. (#51039, fix from Martin Maierhofer)
2618
2619 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2620
2621         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2622         for unshifted + and shifted = for non-us keyboards.
2623         Make <Control>+ and <Control>- work as well as 
2624         <Control>KP_Plus, <Control>KP_Minus for recursive
2625         open/close.  (#2682, René Seindal)
2626
2627 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2628
2629         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2630         the active menu item before deactivating the menu,
2631         so gtk_menu_popdown doesn't change the history. (#50964)
2632         
2633 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2634
2635         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2636         draw lines with text_gc rather than black_gc.
2637         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2638
2639 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2640
2641         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2642         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2643         less interrelated then it was, but it still requires the
2644         GtkTreeView to map it.
2645
2646         * test/testtreecolumn.c: Now I can add a column to one view,
2647         remove it, add it to the another view, remove it, then re-add it
2648         to the first.  Nifty.
2649
2650 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2651
2652         * docs/tutorial/gtk-tut.sgml: Minor corrections
2653
2654 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2655
2656         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2657         GtkRowReference.
2658
2659 2001-02-28  Havoc Pennington  <hp@redhat.com>
2660
2661         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2662         draw_default
2663         (gtk_widget_draw_focus): remove this function; we could instead
2664         make it just gtk_widget_draw(), but in most cases I think the
2665         result would be broken user code, so think it's better to have
2666         that code not compile and get fixed
2667         (gtk_widget_draw_default): ditto
2668
2669         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2670         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2671         
2672         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2673         widgets lose/get the default, instead of calling draw_default
2674         
2675         * docs/Changes-2.0.txt: note about all this
2676
2677         Then fixed every widget in GTK, I won't list all the filenames.
2678
2679 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2680
2681         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2682         _gtk_tree_row_reference_deleted.
2683         (inserted_callback): Proxy out to
2684         _gtk_tree_row_reference_inserted.
2685         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2686         get around signal emission ordering problem.
2687
2688         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2689         fix to work with SINGLE 
2690         (_gtk_tree_selection_internal_select_node): Major sanitization on
2691         selections.  SINGLE now seems to work.
2692
2693         * tests/Makefile.am: add testtreecolumn.c:
2694
2695         * tests/testtreecolumn.c: New test.  Mostly points out selection
2696         bugs currently, but will test columns later.
2697
2698         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2699         selection bug.  I hate touching this code -- it's scary.
2700
2701 2001-02-26  Havoc Pennington  <hp@redhat.com>
2702
2703         * gtk/testgtk.c: test the window state stuff
2704
2705         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2706         window come to the user's attention as if it were just created
2707         (gtk_window_iconify): new function
2708         (gtk_window_deiconify): new function
2709         (gtk_window_stick): new function
2710         (gtk_window_unstick): new function
2711         (gtk_window_maximize): new function
2712         (gtk_window_unmaximize): new function
2713
2714         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2715
2716         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2717
2718         * gdk/x11/gdkevents-x11.c: create window state events when
2719         appropriate
2720         (gdk_wmspec_supported): new function
2721
2722         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2723         iconification before showing the window
2724         (gdk_window_deiconify): new function
2725         (gdk_window_stick): new function
2726         (gdk_window_unstick): new function
2727         (gdk_window_maximize): new function
2728         (gdk_window_unmaximize): new function
2729
2730         * gdk/gdkwindow.c: store the window state in the window; 
2731         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2732         window->mapped.
2733         (gdk_window_get_state): return the current window state
2734
2735         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2736         (gdk_event_get_state): handle GDK_WINDOW_STATE
2737         (gdk_synthesize_window_state): function to create the window state
2738         events
2739
2740         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2741         event, for changes to "window state" such as maximized, sticky, 
2742         etc.
2743         
2744         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2745         focuses a window
2746
2747         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2748         finds out if we support a given WM spec hint
2749
2750 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2751
2752         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2753
2754 2001-02-25  Hans Breuer  <hans@breuer.org>
2755
2756         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2757         cause we want to loose those prototypes only in the latter case
2758
2759         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2760         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2761         impl member variable instead
2762
2763         * gtk/gtk.def : updated
2764
2765         * gtk/gtklist.c : 
2766         * gtk/gtkmenus.c : include <string.h> for memset ()
2767
2768         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2769         for everthing built here, but for gtk-x.x.dll only. This solves
2770         problem of indifferent gtk type definitions
2771
2772 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2773
2774         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2775
2776 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2777
2778         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2779         column that is exposed.
2780
2781         (_gtk_tree_view_update_size): Changed name from set_size, and
2782         changed function to do more work, and not force people calling it
2783         to figure out the size.  Simplifies a lot of code elsewhere.
2784
2785 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2786
2787         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2788         return solid masks for xpms that have no transparent color.
2789         This makes the ..._create_from_xpm... API backwards
2790         compatible.
2791
2792 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2793
2794         * README.win32: Update. Mention the gtk-1-3-win32-production
2795         branch.
2796
2797         * gdk/win32/bdfcursor.c: New file. A program that generates
2798         xcursors.h. Thanks to Stefan Ondrejicka.
2799
2800         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2801         compact format.
2802
2803         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2804
2805         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2806         function, uses xcursors.h.
2807         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2808         cursor from inline data instead of using LoadCursor() to generate
2809         it from a resource.
2810
2811         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2812         event, must check the Windows message for mouse button state, as
2813         the GDK event state might not have been built if it is
2814         undelivered. Remove one goto.
2815
2816         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2817         SetCursor() if the current cursor as returned by GetCursor() is
2818         the window's previous cursor. The ChildWindowFromPoint() test
2819         apparently didn't work correctly.
2820
2821         * gdk/win32/rc/*.cur: Remove.
2822
2823         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2824
2825         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2826
2827         * gtk/makefile.{mingw,msc}.in: Updates.
2828
2829 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2830
2831         * gtk/gtktreemodel.h: add functions for signal emission.
2832
2833         * gtk/gtktreestore.c: move to use above functions instead of
2834         g_signal_emit.
2835
2836         * gtk/gtkliststore.c: ditto
2837
2838 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2839
2840         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2841         GObject instead of GtkObject.
2842
2843         * gtk/gtkliststore.c: ditto.
2844
2845         * gtk/gtktreemodelsort.c: ditto.
2846
2847         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2848         GtkTreeModelIface, instead of in each model.
2849
2850 2001-02-21  Havoc Pennington  <hp@redhat.com>
2851
2852         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2853         unbreak this function
2854
2855         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2856         properties
2857
2858         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2859         properties
2860
2861         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2862         properties
2863
2864         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2865         mean unset the max length
2866
2867 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2868
2869         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2870         Changed name to be set_cell_data_func to make it clear what
2871         the functino does.  Close bug #51069.
2872
2873 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2874
2875         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2876         have memory actually freed.  Keeps box running longer.
2877
2878 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2879         
2880         * gtk/gtkseparatormenuitem.[ch]:
2881         Added new menu separator item. The drawing and size handling
2882         is still done in GtkMenuItem, but the API is a bit more sane.
2883         
2884         * gtk/Makefile.am:
2885         Add gtkseparatormenuitem.[ch].
2886
2887         * gtk/gtk.h:
2888         Add gtkseparatormenuitem.h.
2889         
2890         * gtk/gtkentry.c:
2891         * gtk/gtkmenufactory.c:
2892         * gtk/gtktextview.c:
2893         Use the new API for menu separators.
2894         
2895         * demos/gtk-demo/menus.c (create_menu):
2896         Add some GtkSeparatorMenuItem demo code.
2897
2898 2001-02-20  Havoc Pennington  <hp@redhat.com>
2899
2900         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2901         Lee Mallabone
2902
2903         * gtk/gtkarrow.c: Convert to new property API, patch from 
2904         Lee Mallabone
2905
2906 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2907
2908         * tests/testtreeview.c (toggled_callback): fix to reflect change
2909         in GtkTreeModelStore.
2910
2911 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2912
2913         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2914         function to create an icon set from a pixbuf.
2915
2916 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2917
2918         * gtk/gtkcellrenderertext.[ch]:
2919         Add a "markup" property.
2920
2921         * gtk/treestoretest.c:
2922         Use the markup property, remove some leftover stuff from
2923         GtkTreeModelMapping.
2924
2925 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2926
2927         * gtk/gtklabel.c (gtk_label_set_selectable):
2928         Queue a redraw if the selectable setting was changed.
2929
2930 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2931
2932         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2933         Actually copy the whole gc, not just the public parts.
2934         
2935         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2936         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2937         labels.
2938
2939 2001-02-19  Havoc Pennington  <hp@pobox.com>
2940
2941         * gdk/gdkwindow.c: docs
2942
2943         * gdk/gdkrgb.c: docs
2944
2945         * gdk/gdkregion-generic.c: docs
2946
2947         * gdk/gdkgc.c (gdk_gc_set_values): docs
2948
2949         * gdk/gdkdraw.c: docs
2950
2951         * gdk/gdkdrawable.h: deprecate drawable get/set data
2952
2953 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2954
2955         * demos/gtk-demo/dialog.c: Add simple new demo.
2956
2957 2001-02-19  Havoc Pennington  <hp@redhat.com>
2958
2959         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2960         insert_child_anchor signal, bug #50245
2961
2962         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2963         from create_child_anchor, so the anchor is passed in
2964
2965         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2966         (_gtk_widget_segment_new): have the child anchor object passed in, 
2967         instead of creating it.
2968
2969         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2970         to gtk_text_buffer_get_modified
2971
2972 2001-02-19  Havoc Pennington  <hp@redhat.com>
2973
2974         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2975         changed GLib without fixing GTK
2976
2977         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2978         functions to have an underscore in front. Most of them should 
2979         probably just go away, but for starters don't export them.
2980         Bug #50482
2981
2982 2001-02-19  Havoc Pennington  <hp@redhat.com>
2983
2984         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2985         excluded by default
2986
2987         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2988         clean up the old code a bit
2989
2990         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2991         inconsistent state
2992
2993         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2994         draw inconsistent state
2995
2996         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2997         (create_menu): add inconsistent test
2998
2999         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3000         new function
3001         (gtk_check_menu_item_get_inconsistent): new function
3002         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3003         state (using etched in for now)
3004
3005         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3006         draw inconsistent state
3007
3008         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3009         function, used when the user has selected a range of stuff in
3010         different states
3011         (gtk_toggle_button_get_inconsistent): accessor for that
3012         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3013         don't know what else to do)
3014
3015 2001-02-19  Hans Breuer <hans@breuer.org>
3016
3017         * gtk/gtk.def : updated exported symbols
3018
3019         * gtk/makefile.msc.in : updated
3020
3021         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3022         a colormap, when invoked from testgtk::entry. I'm not sure where
3023         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3024         avoids immediate crashing ...
3025
3026         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3027         any objections ?
3028
3029         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3030         0 parameter. At least msvc doesn't like macros with var args. 
3031         I simply removed the extra 0, was it a feature or a typo ?
3032
3033         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3034         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3035         because the value assignment to the internal struct wasn't working.
3036         I'm not absolutely sure. The problem could have been resolved by
3037         changing the "func" declartion in the struct, but was the pointer
3038         to the function pointer intended ?
3039
3040         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3041
3042         * gdk/gdk.def : updated exported symbols
3043
3044         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3045         only use SetDIBitsToDevice if there is a palette at the drawable
3046         and the image is GDK_VISUAL_PSEUDO_COLOR
3047
3048         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3049
3050         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3051
3052         * gdk/*/makefile.msc : updated
3053
3054 2001-02-19  Havoc Pennington  <hp@redhat.com>
3055
3056         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3057         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3058
3059         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3060         (gdk_key_repeat_restore): nuke
3061
3062         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3063         (gdk_init_check): no atexit func
3064
3065         * gdk/gdkrgb.h: mark some stuff deprecated
3066
3067         * gdk/gdkcolor.h: mark some stuff deprecated
3068         
3069         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3070
3071         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3072
3073 2001-02-16  Havoc Pennington  <hp@redhat.com>
3074
3075         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3076         scroll steps.
3077
3078         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3079         steps, and add Ctrl-arrow shortcuts for paging visually as with
3080         HScale, since Page Up and Page Down move logically.
3081
3082         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3083         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3084         
3085         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3086         steps
3087         (gtk_range_scroll): handle the visual steps
3088
3089         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3090         scroll steps
3091
3092         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3093         steps, not the logical ones.
3094
3095         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3096         (scroll_vertical): handle up/down steps
3097
3098 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3099
3100         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3101         Copy data and free data with free().
3102
3103         * gdk-pixbuf/gdk-pixbuf.c:
3104         * gdk-pixbuf/io-jpeg.c:
3105         * gdk-pixbuf/io-png.c:
3106         Use g_try_malloc/g_free instead malloc/free.
3107         
3108         * gdk-pixbuf/test-gdk-pixbuf.c:
3109         Must... initialize... gobject...
3110         
3111         * gdk-pixbuf/pixops/timescale.c:
3112         * gtk/gtkcalendar.c:
3113         Use g_malloc instead of malloc.
3114         
3115 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3116
3117         * gtk/testgtkrc:
3118         Comment out property assignments, these don't work yet.
3119
3120 2001-02-17  Havoc Pennington  <hp@pobox.com>
3121
3122         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3123         bit.
3124
3125 2001-02-17  Havoc Pennington  <hp@pobox.com>
3126
3127         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3128         shadowed variables that had broken size request in some cases,
3129         leading to bogus tooltips (#50996)
3130
3131 2001-02-06  Jon K Hellan  <hellan@acm.org>
3132
3133         Implement fast browsing of tooltips, bug #50619
3134         
3135         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3136         and last_popdown
3137         
3138         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3139         use_sticky_delay and last_popdown.
3140         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3141         time of popdown.
3142         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3143         is NULL.
3144         (gtk_tooltips_recently_shown): New static function.  Return true
3145         if < sticky_delay has elapsed since last popdown.
3146         (gtk_tooltips_event_handler): Display window after sticky_delay
3147         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3148         since last popdown.
3149         
3150 2001-02-17  Havoc Pennington  <hp@pobox.com>
3151
3152         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3153         instead of (). #6394
3154
3155         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3156         G_CONST_RETURN, make it return by reference, #50473
3157         
3158 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3159
3160         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3161         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3162         setup fields contain garbage (e.g. subwindow, breaking
3163         gdk_drawable_ref() upon event copy).
3164         (gtk_menu_stop_navigating_submenu_cb): same here.
3165
3166         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3167         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3168         * gtk/gtkclist.c (vertical_timeout): 
3169         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3170         default-zero-intialization for unions to memset(,0,), as unions are
3171         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3172         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3173
3174         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3175         g_closure_sink() warning.
3176
3177         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3178         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3179         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3180         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3181         
3182 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3183
3184         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3185         gtk_*_store_get, and moved to GtkTreeModel.
3186
3187         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3188
3189         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3190
3191         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3192
3193         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3194         set the func.
3195
3196         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3197         freeze/thaw notify between setting all the properties for a cell.
3198
3199         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3200
3201 2001-02-15  Havoc Pennington  <hp@redhat.com>
3202
3203         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3204         the X coordinates so they're with respect to the line, rather than 
3205         with respect to the layout.
3206
3207         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3208         Mallabone
3209
3210         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3211         and inverted test
3212
3213         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3214         #50806
3215
3216         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3217
3218         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3219         gtk_text_iter_is_end
3220
3221         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3222         rename gtk_text_buffer_get_end_iter
3223
3224         * gtk/testgtk.c (create_labels): Add test for selectable
3225
3226         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3227         the selection stuff. This code is kind of broken since it doesn't 
3228         use the theme engine.
3229
3230         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3231         fix infinite loop and y offset problem
3232         (gdk_draw_layout_line_with_colors): fix foreground color handling
3233
3234         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3235         that makes the label selectable.
3236         
3237         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3238         layout when the style is set, since fonts etc. could have changed.      
3239
3240 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3241
3242         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3243
3244         * gtk/gtktreemodelsimple.[ch]: removed.
3245
3246 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3247
3248         * gtk/gtktreemodelmapping.[ch]:
3249         New files. Implement GtkTreeModelMapping.
3250         
3251         * gtk/Makefile.am:
3252         Add gtktreemodelmapping.[ch].
3253         
3254         * gtk/gtk.h:
3255         Add gtktreemodelmapping.h
3256
3257         * gtk/treestoretest.c:
3258         Test the GtkTreeModelMapping
3259
3260 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3261
3262         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3263         have a demo, we might as well pass in real values.  Thanks to
3264         clahey for pointing this out.
3265
3266 2001-02-14  Havoc Pennington  <hp@pobox.com>
3267
3268         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3269         "static" to a private function
3270         (gtk_image_menu_item_class_init): remove destroy handler,
3271         add "image" object property
3272
3273 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3274
3275         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3276         Add a shortcut if the window and the current clip_region doesn't
3277         overlap. This is needed when there are a lot of windows in a
3278         window. The layout test in testgtk is a good test.
3279
3280         * gdk/linux-fb/gdkwindow-fb.c:
3281         Whitespace fix.
3282
3283 2001-02-13  Sven Neumann  <sven@convergence.de>
3284
3285         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3286
3287 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3288
3289         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3290         Don't reference last_cursor if it is null. Fixes crash when rotating
3291         the screen before having moved the mouse.
3292
3293         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3294
3295         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3296
3297         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3298         when using 90 or 270 degrees rotation.
3299
3300 2001-02-12  Havoc Pennington  <hp@pobox.com>
3301
3302         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3303         it always set the foreground, even if we were only using
3304         a stipple.
3305         (gdk_draw_layout_line_with_colors): new function, allow
3306         override colors
3307         (gdk_draw_layout_with_colors): new function, allow override
3308         colors
3309         (gdk_pango_layout_line_get_clip_region): function to get the clip
3310         region for a logical text range
3311         (gdk_pango_layout_get_clip_region): get the clip region for a
3312         logical text range
3313
3314         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3315         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3316         the right number of arguments.
3317
3318         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3319         enhance the function to check that node data corresponds to a 
3320         view still belonging to the tree.
3321
3322         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3323         GtkTreePath
3324         (gtk_tree_view_inserted): ditto
3325         (gtk_tree_view_child_toggled): ditto
3326
3327         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3328         simplify this code.
3329
3330         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3331         a PangoAttrList
3332
3333         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3334
3335         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3336
3337         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3338         size in the size request 
3339         (gtk_menu_bar_size_allocate): consider toggle size here
3340
3341         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3342         that displays a widget in the toggle slot
3343
3344         * gtk/testgtk.c: test GtkImageMenuItem
3345
3346         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3347         
3348         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3349         request and allocation
3350
3351         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3352
3353         * gtk/gtkcheckmenuitem.c
3354         (gtk_check_menu_item_toggle_size_request): ditto
3355         
3356 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3357
3358         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3359         reference.
3360
3361         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3362         and refuse to initialize GTK+ if they fail.
3363
3364 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3365
3366         * configure.in: Add check for gtk-doc version.
3367
3368 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3369
3370         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3371         where the xpad/ypad was only being used on one side!
3372
3373 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3374
3375         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3376         function, copied from X11 version.
3377
3378         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3379         DestroyCursor failures. The reason for the problem (despite the
3380         inconsistent messages from GetLastError()) was that
3381         DestroyCursor() cannot be called while a cursor is set in a
3382         window. Set the new cursor first and then destroy the old one.
3383         Thanks to jpe@archaeopteryx.com.
3384
3385         * gdk/win32/gdkcc-win32.c: Remove.
3386
3387         * gdk/win32/Makefile.am: Remove from here, too.
3388         
3389         * gdk/gdk.def
3390         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3391
3392         * gtk/gtk.def
3393         * gtk/makefile.mingw.in: Updates.
3394
3395 2001-02-08  Havoc Pennington  <hp@redhat.com>
3396
3397         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3398         add a widget to a bin that already has a child.
3399
3400         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3401
3402         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3403         
3404         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3405
3406         * gdk/gdk.h: remove gdkcc.h
3407
3408         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3409
3410         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3411         GdkPixbuf, since the previous implementation was GdkColorContext
3412         dependent.
3413
3414         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3415         
3416 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3417
3418         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3419         a sane value!
3420
3421 2001-02-08  Havoc Pennington  <hp@redhat.com>
3422
3423         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3424         lighten them.
3425
3426 2001-02-08  Havoc Pennington  <hp@redhat.com>
3427
3428         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3429         validation idle
3430
3431         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3432         cell renderer
3433
3434         * demos/pixbuf-demo.c (timeout): remove deprecated
3435         gtk_widget_draw
3436
3437         * demos/testpixbuf-save.c (main): remove deprecated
3438         gtk_drawing_area_size
3439
3440         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3441         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3442         at the start of the allocation.
3443         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3444         unsetup or NULL model.
3445
3446         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3447         even/odd/sorted cells in the tree view.
3448
3449         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3450         bugfixes
3451
3452         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3453         backgrounds with draw_flat_box using different detail for even/odd
3454         rows.
3455
3456         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3457         row, so we can draw the alternating colors thing
3458
3459         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3460         property from a synonym property, notify for the synonym.
3461         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3462         (gtk_text_tag_get_property): Always return the font, even if
3463         all its fields aren't set
3464
3465         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3466         store the attr list; it leaves us with no way to change attributes
3467         in _render according to the render flags, and no way to implement
3468         get_property. Instead store all the specific text attributes. 
3469         Separate whether an attribute is enabled from its value. Sync all
3470         properties with GtkTextTag, make them all consistent, etc.
3471
3472         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3473         renderers can highlight the sort row/column     
3474
3475         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3476         accessor functions to get values; this has the side effect of
3477         showing up which accessor functions were missing. Added those.
3478
3479         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3480         set_alignment, to be consistent with GtkLabel, GtkMisc
3481
3482         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3483         arrow.
3484
3485         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3486
3487         * gtk/gtktreesortable.h: updates in here
3488
3489 2001-02-07  Sven Neumann  <sven@convergence.de>
3490
3491         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3492         pango dimensions after painting the background. We used to draw
3493         gigantic flat boxes here.
3494
3495 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3496
3497         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3498         error introduced with earlier commit) (pointed out by
3499         Ollie Lho)
3500
3501 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3502
3503         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3504         which are no longer necessary.
3505
3506 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3507
3508         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3509
3510 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3511
3512         * gdk/gdk.def
3513         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3514         Provide dummy implementations.
3515
3516 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3517
3518         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3519
3520         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3521         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3522         deprecated this function.
3523
3524         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3525         argument.
3526
3527 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3528
3529         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3530
3531 2001-02-03  Havoc Pennington  <hp@pobox.com>
3532
3533         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3534         Mikael Hermansson with patch from Mikael (if there was a toggle
3535         start one after the first character in the range, this function
3536         was broken). Bug #50380
3537
3538 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3539
3540         * configure.in: Remove confusing comment about X11.
3541
3542 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3543
3544         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3545         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3546         
3547 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3548
3549         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3550         it breaks things on BSD. If you want to compile GTK+ with
3551         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3552         when configuring, since GTK+ simply can't be "pure ANSI" 
3553         in the header files it uses. (#8170, Greg Hudson)
3554
3555 2001-02-02  Havoc Pennington  <hp@redhat.com>
3556
3557         * gtk/gtkwindow.c: docs
3558
3559         * gtk/gtkwidget.c: docs
3560         (gtk_widget_set_colormap): add a reference to the colormap
3561         (gtk_widget_get_default_colormap): add a reference to the colormap
3562
3563         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3564
3565         * gtk/gtktextiter.c: docs
3566
3567         * gtk/gtkmain.c (gtk_propagate_event): docs
3568
3569         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3570         (gtk_paned_set_position): docs
3571
3572         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3573         sort interface, no implementation yet.
3574
3575         * demos/testpixbuf.c (new_testrgb_window): replace
3576         gtk_drawing_area_size() with gtk_widget_set_usize()
3577
3578         * demos/testpixbuf-drawable.c (main): ditto
3579         
3580         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3581
3582         * gtk/gtktextbuffer.c: docs
3583
3584         * gtk/gtkstock.c: docs
3585
3586         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3587
3588         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3589
3590         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3591         
3592         * gtk/gtkimage.c: add some docs in here
3593         (gtk_image_size_request): change name of
3594         gtk_widget_render_stock_icon
3595         (gtk_image_get_icon_set): don't dup returned string
3596         (gtk_image_get_icon_set): don't dup returned string
3597
3598         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3599         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3600         and gtkiconfactory.h functions
3601
3602         * gtk/gtkiconfactory.c: add some docs in here
3603
3604         * gtk/gtkmain.c (gtk_get_default_language): document
3605         (gtk_get_current_event): document
3606         (gtk_get_current_event_state): document
3607         (gtk_get_event_widget): document
3608
3609         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3610
3611         * gtk/gtkcontainer.c: Add some documentation
3612         (gtk_container_add): give a more explanatory warning on adding an
3613         already-parented widget, this is kind of a FAQ and also a common
3614         typo that's easier to debug with a nice warning 
3615
3616         * gtk/gtkcellrenderertoggle.c
3617         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3618         adding this, it's useless
3619         (gtk_cell_renderer_toggle_set_active): remove
3620         (gtk_cell_renderer_toggle_get_radio): add
3621
3622         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3623         the NULL cell renderer, that doesn't make any sense to me. 
3624
3625         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3626         demo code should never use deprecated features.
3627
3628         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3629         code should never use deprecated features.
3630
3631         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3632         gtk_widget_queue_clear_area deprecated
3633
3634         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3635         deprecated
3636
3637         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3638
3639         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3640         a GdkImage deprecated, replaced by new consistently-named
3641         functions       
3642
3643         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3644
3645         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3646
3647         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3648         deprecated
3649
3650         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3651         so it won't appear in docs and confuse people.
3652
3653         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3654
3655         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3656         macros deprecated. (can't mark the type itself deprecated, since
3657         GtkProgressBar is not deprecated and we need the type decl to use
3658         GtkProgressBar)
3659
3660         * gtk/gtkpixmap.h: Mark deprecated
3661
3662         * gtk/gtkoldeditable.h: Mark deprecated
3663
3664         * gtk/gtklist.h: Mark deprecated
3665
3666         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3667         for anything anymore.
3668
3669         * gtk/gtkctree.h: Mark deprecated
3670
3671         * gtk/gtkclist.h: Mark deprecated
3672
3673         * gtk/gtkpreview.h: Mark deprecated
3674
3675         * gtk/gtkpacker.h: Mark deprecated
3676
3677         * gtk/gtktipsquery.h: Mark deprecated
3678
3679         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3680
3681         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3682
3683         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3684
3685         * gtk/gtkruler.h: Add comment that it will move out of GTK
3686
3687         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3688
3689         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3690
3691 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3692
3693         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3694         gdk_colormap_sync private since it was never exported
3695         in a header file.
3696
3697         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3698         colormap->colors[] for StaticGray, StaticColor colormaps.
3699
3700         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3701         was being used as if it was image->bits_per_pixel.
3702
3703         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3704         for the image in the GdkImage structure since it isn't
3705         reconstructable, and we need it to handle packed types
3706
3707         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3708         the assumption that on Win32 image->bits_per_pixel == image->depth,
3709         always.
3710
3711         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3712
3713         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3714         warning message if no converter can be found. 
3715
3716 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3717
3718         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3719         chars to isupper() / tolower(). (#567)
3720
3721         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3722         to clear up 64-bit warnings. (#567)
3723
3724 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3725
3726         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3727         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3728
3729         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3730         since some people set $(libdir) separately. (#1290, David Kaelbling)
3731
3732 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3733
3734         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3735         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3736         MAXPATHLEN, but the code here depends on a fixed value.)
3737         (#4524)
3738
3739 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3740
3741         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3742         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3743
3744 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3745
3746         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3747         viewable there is no way that moving the node will cause the 
3748         focus row to become not viewable, so omit check on the visibility
3749         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3750
3751 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3752
3753         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3754         selection before inserting new text.
3755
3756 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3757
3758         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3759         Make the sensitivity of the reparented child track that of
3760         the original parent menu item. (#34218, David Hodson)
3761
3762         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3763         the case where the current item is destroyed properly.
3764
3765         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3766         some edge cases with child-less menuitems.
3767         
3768 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3769
3770         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3771         key pop down window. (#12074, Jon K Hellan)
3772
3773 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3774
3775         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3776         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3777         The solution here isn't perfect - you get an extraneous
3778         emission of "toggle", which could conceivably confuse an app,
3779         but better than the current situation. LXR search seems to
3780         indicate that no apps in GNOME CVS connect to "toggle".
3781
3782 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3783
3784         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3785         gtk_public_h_sources to directly here to avoid warning when
3786         building srcdir != builddir. (#9656)
3787
3788 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3789
3790         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3791         handlers in gtkrange.c return the proper values (TRUE == handled)
3792         (#10316).
3793
3794         This is just the tip of the iceberg, but gtkrange.c is the
3795         most common place where the propagation is problematical,
3796         and also a place where it is almost certainly safe to change
3797         this in the stable branch.
3798
3799         (You don't want right click popups on a range control or anything...)
3800
3801 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3802
3803         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3804         area on focus out, even if a background pixmap isn't set.
3805         (#13941)
3806         
3807 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3808
3809         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3810         to deal with setting the shape properly when scrolling arrows are
3811         turned on, but not visible because there is sufficient space.
3812         (#13432)
3813
3814 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3815
3816         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3817         items with submenus, destroy the item along with the submenu.
3818         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3819         properly.
3820
3821         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3822         later.
3823
3824 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3825
3826         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3827         the focus widget sometimes wasn't drawn with the default if there
3828         was no default widget.
3829
3830         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3831         unreference pixmaps. 
3832
3833         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3834         for some extra safety.
3835
3836 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3837
3838         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3839         the text of a cell to the old pointer value better, by
3840         copying the new text before freeing the old text. Some code
3841         cleanup. (#8079, Karl Nelson)
3842
3843 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3844
3845         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3846         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3847
3848 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3849
3850         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3851         item from a menu, check to see if it matches 
3852         menu->old_active_menu_item, and if so, unref and clear
3853         old_active_menu_item (Patch from Pavel Cisler)
3854
3855         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3856         menu_shell->active_menu_item, if it is the child being
3857         removed. (Patch based on that of Gene Ragan, #50337)
3858
3859 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3860
3861         * gdk/linux-fb/gdkselection-fb.c: 
3862         * gdk/linux-fb/gdkcolor-fb.c: 
3863         * gdk/linux-fb/gdkdrawable-fb2.c: 
3864         * gdk/linux-fb/gdkfont-fb.c: 
3865         * gdk/linux-fb/gdkim-fb.c: 
3866         * gdk/linux-fb/gdkinput.c: 
3867         * gdk/linux-fb/gdkkeyboard-fb.c: 
3868         * gdk/linux-fb/gdkmain-fb.c: 
3869         * gdk/linux-fb/gdkrender-fb.c: 
3870         A bunch of whitespace cleanup.
3871         
3872 2001-01-30  Havoc Pennington  <hp@pobox.com>
3873
3874         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3875         #ifdef GTK_ENABLE_BROKEN.
3876
3877         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3878         GTK_ENABLE_BROKEN just before including the broken headers.
3879         
3880         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3881         deprecated types registered.
3882
3883         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3884         we have to test the broken stuff.
3885
3886         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3887         
3888 2001-01-30  Havoc Pennington  <hp@redhat.com>
3889
3890         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3891         here where prev pointer was set to the wrong thing
3892
3893         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3894         (gtk_tree_path_is_descendant): new function
3895
3896         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3897         cached length
3898         (gtk_list_store_get_iter): don't modify iter if we can't get the
3899         path.
3900
3901         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3902         
3903         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3904         GtkTreeDragDest
3905
3906         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3907         was causing segfault
3908
3909         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3910         pointer to NULL
3911
3912         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3913
3914         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3915         on returning FALSE
3916         (gtk_list_store_iter_children): ditto
3917         (gtk_list_store_iter_nth_child): ditto
3918         (gtk_list_store_iter_nth_child): ditto
3919         (gtk_list_store_iter_parent): ditto
3920
3921         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3922         on iter->user_data != NULL instead of silently accepting it.
3923         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3924         we are returning TRUE.
3925         (gtk_tree_store_iter_children): ditto
3926         (gtk_tree_store_iter_nth_child): ditto
3927         (gtk_tree_store_iter_parent): ditto
3928         (gtk_tree_store_insert): remove handling of parent->user_data ==
3929         NULL, replace with parent == NULL       
3930
3931         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3932         and a comment explaining things
3933
3934         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3935         interface support to GtkTreeStore.
3936
3937         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3938         FALSE if no prev, fix
3939
3940         * gtk/gtktreeview.c (set_source_row): use a row reference
3941         (set_dest_row): use a row reference
3942
3943 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3944
3945         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3946         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3947         (gtk_tree_selection_select_iter): The same as above.
3948
3949 2001-01-26  Havoc Pennington  <hp@redhat.com>
3950
3951         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3952         which holds a handle to a specific row (particular set of values
3953         in the model, i.e. pointer-identity row).
3954
3955         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3956         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3957         Still need to use it for the src/dest row saved on the drag context.
3958
3959 2001-01-26  Havoc Pennington  <hp@redhat.com>
3960
3961         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3962
3963         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3964         not offset by TREE_VIEW_HEADER_HEIGHT
3965         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3966         TREE_VIEW_HEADER_HEIGHT
3967
3968         * configure.in (included_loaders): for me, --with-included-loaders
3969         generates the error "the specified loader yes does not exist",
3970         i.e. the arg defaults to "yes", so change test for value ""
3971         to test for value "yes", and include all loaders in that case.
3972
3973         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3974
3975         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3976         handle TREE_VIEW_VERTICAL_SEPARATOR
3977         (gtk_tree_view_bin_expose): fix to consider the row offset as
3978         pointing halfway into vertical separator.       
3979         (gtk_tree_view_draw_node_focus_rect): ditto
3980
3981         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3982         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3983         (TRUE) to be called.
3984
3985         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3986         debug mode where the invalid region is colored in on invalidate,
3987         so you can see the flicker and know whether your redraw code is 
3988         doing a good job.
3989
3990         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3991         tree window coordinates (clip rect is in tree window coords)
3992
3993         * gtk/Makefile.am: add gtktreednd.[hc]
3994
3995         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3996
3997         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3998         drag-and-drop data operations on a model (so we can set up tree
3999         drag-and-drop automatically)
4000
4001         * gtk/testgtk.c: Add a window to change sensitivity in the
4002         GtkLabel test; add a way to change the entry frame in GtkEntry
4003         test
4004
4005         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4006         (gtk_entry_get_has_frame): new functions to remove the frame
4007         around an entry
4008         (gtk_entry_size_request): shrink requisition if no frame
4009         (gtk_entry_draw_focus): don't draw frame if no frame
4010
4011         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4012         checks inside a cell renderer
4013         (gtk_default_draw_option): ditto for options
4014
4015         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4016         children from the alignment, not the button
4017         (gtk_tree_view_column_init): ref/sink the column, to emulate
4018         GObject refcounting.
4019
4020         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4021         
4022         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4023         Use theme functions to draw the toggles 
4024
4025         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4026
4027         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4028         GdkPangoAttrEmbossed to use in rendering insensitive text
4029
4030         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4031
4032         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4033         using new GDK features
4034         
4035 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4036
4037         * gtk/gtkimage.c:
4038         Splitted gtk_image_clear into gtk_image_clear() and
4039         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4040         to avoid leaks.
4041
4042         * gtk/gtklabel.c (set_markup):
4043         Don't leak text.
4044
4045         * gtk/gtktextlayout.c:
4046         Always free display->shaped_objects.
4047
4048         * gtk/testgtk.c (create_clist):
4049         Don't leak custom style.
4050
4051 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4052
4053         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4054         Don't leak image. Simplify using gdk_colormap_query_color().
4055         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4056
4057         * linux-fb/gdkcolor-fb.c:
4058         Implemented gdk_colormap_query_color.
4059
4060 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4061
4062         * linux-fb/gdkcursor-fb.c:
4063         Don't leak built-in cursors.
4064
4065         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4066         Don't leak tmp_points.
4067
4068         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4069         Don't modify desc. Don't leak font if the PangoFont
4070         isn't found.
4071         
4072         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4073         Free dash_list.
4074
4075         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4076         Don't leak string.
4077         
4078 2001-01-20  Havoc Pennington  <hp@pobox.com>
4079
4080         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4081         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4082         me, matches Pango
4083
4084 2001-01-22  Havoc Pennington  <hp@redhat.com>
4085
4086         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4087
4088         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4089
4090         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4091         Remove, move back to gdk-pixbuf
4092
4093         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4094         to all the word functions
4095
4096         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4097         before doing anything on NULL layout or if we don't have the focus
4098
4099         * gtk/testtext.c (fill_example_buffer): "justification"
4100
4101         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4102         to be called "justification" not "justify"
4103
4104         * demos/gtk-demo/textview.c (create_tags): "justification"
4105         
4106         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4107
4108 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4109
4110         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4111         Don't leak visible_region. Use visible_region instead of region.
4112         
4113         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4114         Don't do extra gdk_drawable_ref(). This is not X.
4115         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4116         gdk_fb_focused_window is ref:ed.
4117         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4118         windows.
4119
4120 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4121
4122         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4123         Don't leak the PangoFontDescriptor.
4124
4125 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4126
4127         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4128         when not realized.
4129         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4130         (gtk_tree_view_realize): add scroll_to support
4131         (gtk_tree_view_finalize): add a finalize method.  Populate.
4132         (gtk_tree_view_insert_column): ref and sink the column.
4133         (gtk_tree_view_append_column): ref and sink the column.
4134         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4135         individual nodes.  Should make the code much more efficient, if
4136         actually used.
4137
4138 2001-01-19  Havoc Pennington  <hp@redhat.com>
4139
4140         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4141         byte_offset variable was being used to mean both "offset into
4142         layout" and "offset into buffer line" which was no longer true
4143         with addition of preedit string; fix
4144
4145 2001-01-19  Havoc Pennington  <hp@redhat.com>
4146
4147         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4148
4149         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4150         function
4151
4152         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4153         implement
4154
4155         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4156         scroll_to_cell, matches TextView scroll functions better
4157         (gtk_tree_view_tree_to_widget_coords): new function
4158         (gtk_tree_view_widget_to_tree_coords): new function
4159         (gtk_tree_view_get_visible_rect): new function
4160         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4161         (gtk_tree_view_draw_node_focus_rect): new function moved from
4162         draw_focus, also, use width of bin_window as width of the focus
4163         rect
4164         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4165         already-expanded rows
4166         (gtk_tree_view_get_cell_rect): new function
4167         (gtk_tree_view_get_path_at_pos): return the click position
4168         relative to the passed-in cell
4169         (gtk_tree_view_set_expander_column): new function
4170
4171         * configure.in: remove gtk-config-2.0 chmod
4172
4173         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4174         and properly handle drags with targets we don't understand
4175         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4176         scrolling anyway
4177         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4178         mark invisible
4179
4180         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4181         function
4182         (gtk_drag_dest_get_target_list): new function
4183         (gtk_drag_dest_set_target_list): new function
4184         
4185         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4186
4187         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4188         related to drag-and-drop
4189
4190 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4191
4192         * gdk/linux-fb/gdkprivate-fb.h:
4193         Define EMULATE_GDKFONT.
4194         Add extra pango_font stuff to GfkFontPrivate.
4195         
4196         * gdk/linux-fb/gdkdrawable-fb2.c:
4197         * gdk/linux-fb/gdkfont-fb.c:
4198         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4199         emulation using PangoFont.
4200
4201 2001-01-17  Havoc Pennington  <hp@pobox.com>
4202
4203         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4204         all the non-deprecated set_foo functions. Added missing object
4205         properties, and added g_object_notify() to setters. 
4206         Wrote docs.
4207         
4208 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4209
4210         * gtk/gtkmain.c
4211         * gtk/gtkrc.c: (Win32) Use the new
4212         g_win32_get_package_installation_(sub)directory() functions.
4213
4214         * config.h.win32.in: New file.
4215         
4216         * config.h.win32: Removed.
4217
4218         * configure.in: Output config.h.win32.
4219
4220         * Makefile.am: Add it to EXTRA_DIST.
4221
4222         * gtk/gtk.def: Update.
4223
4224 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4225
4226         * gtk/gtklabel.c (gtk_label_size_request): Set the
4227         attributes onto the PangoLayout even if they are newly
4228         created from label->pattern.
4229
4230 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4231
4232         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4233
4234         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4235         structures in functions. Fixes bug where gtk_dataset_*
4236         was accidentally still being used in one place, causing
4237         every dest side event to be treated independently.
4238
4239         * gtk/gtkdnd.c: Remove last vestages of handling
4240         ::draw (fixes warning)
4241         
4242         * gtk/gtkentry.[ch]: Add drag and drop support.
4243
4244         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4245         new function gtk_check_drag_threshhold() for checking
4246         to check if (dx,dy) has exceeded the threshhold for starting
4247         a drag and use it everywhere.
4248
4249 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4250
4251         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4252         add -I{includedir}/gtk-2.0.
4253
4254         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4255         gdk/gdk-pixbuf.h: Doc fixups.
4256         
4257         * gtk/gtkobject.h: Remove trailing , from enum
4258
4259 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4260
4261         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4262         Doh! Mixed up x and y.
4263
4264         * gdk/linux-fb/gdkglobals-fb.c:
4265         Removed gdk_fb_pointer_grab_window_events,
4266         added _gdk_fb_pointer_grab_owner_events and
4267         _gdk_fb_keyboard_grab_owner_events.
4268
4269         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4270         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4271         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4272         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4273         Send crossing events after ungrab finished.
4274         (gdk_keyboard_grab): Set ..._owner_events
4275         (type_masks): Move out of function.
4276         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4277         gdk_fb_keyboard_event_window): New functions, return the
4278         window an event should be targeted at. Handles grabs and
4279         event propagation. Can return NULL.
4280         (gdk_event_make): Remove event_mask checking. Now always
4281         returns an event.
4282                 
4283         * gdk/linux-fb/gdkkeyboard-fb.c:
4284         * gdk/linux-fb/gdkproperty-fb.c:
4285         * gdk/linux-fb/gdkselection-fb.c:
4286         Use new event_window/gdk_event_make() behaviour.
4287         
4288         * gdk/linux-fb/gdkmouse-fb.c:
4289         Use new event_window/gdk_event_make() behaviour.
4290         Only send motion events if in the same window.
4291         If grabbed, use cursor from window if sibling of grabbed
4292         window, and cursor from grabbed window otherwise.
4293
4294         * gdk/linux-fb/gdkprivate-fb.h:
4295         Update gdk_fb_window_send_crossing_events, gdk_event_make
4296         and grab varaible declarations. Add gdk_fb_*_event_window().
4297
4298         * gdk/linux-fb/gdkwindow-fb.c:
4299         Use new event_window/gdk_event_make() behaviour.
4300         Keep correct track of focus window.
4301         (gdk_window_set_events): Set all specific button motion masks
4302         if GDK_BUTTON_MOTION_MASK set.
4303
4304         * gtk/gtkdnd.c (gtk_drag_update):
4305         Free info->last_event if gdk_drag_motion returned FALSE.
4306
4307 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4308
4309         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4310         Eliminate redraws when input-only windows are shown or
4311         hidden. Thanks to jpe@archaeopteryx.com.
4312
4313 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4314
4315         * docs/faq/gtk-faq.sgml: FAQ update:
4316           - Update to bugzilla
4317           - Add GTK+ and security/SUID/SGID
4318           - Add DnD question
4319
4320 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4321
4322         * gdk/linux-fb/gdkdnd-fb.c:
4323         Some cleanups.
4324         
4325 2001-01-15  Havoc Pennington  <hp@pobox.com>
4326
4327         * tests/testtreeview.c: add test stuff for CellRendererToggle
4328
4329         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4330         accessor
4331
4332         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4333         only toggle on button press (would do release like GtkButton, but
4334         we'd need implicit grab code for treeview cells)
4335
4336 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4337
4338         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4339
4340         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4341         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4342
4343         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4344         to g_{locale,filename}_{to,from}_utf8 to match current API.
4345
4346         * gtk/makefile.msc.in (gtk_OBJECTS)
4347         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4348
4349         * gtk/gtk.def: Update.
4350
4351 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4352
4353         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4354         implementaion that more closely mimics the events that an X server
4355         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4356         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4357         with nested preview widgets, for instance, more responsive when
4358         you move the mouse quickly into them.
4359         (find_window_for_pointer_event): Make it actually compile.
4360         (gdk_event_translate): Set send_event to the value of
4361         InSendMessage (). This doesn't really mean the same as X11's
4362         send_event flag, but is close enough, says jpe@archaeopteryx.com
4363
4364 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4365
4366         * gdk/linux-fb/gdkdnd-fb.c:
4367         Implemented drag and drop.
4368         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4369         when it tries to free and then copy the same event (info->last_event).
4370         I am not sure about why this happens, but will continue looking.
4371
4372 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4373
4374         * gdk/linux-fb/gdkwindow-fb.c:
4375         Use gdk_window_invalidate_rect instead of
4376         gdk_window_invalidate_rect_clear to minimise flashing.
4377         When hiding windows you need to clear the root window though.
4378
4379 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4380
4381         * gdk/linux-fb/gdkdrawable-fb2.c:
4382         For optization, add an full_shapes argument to gdk_fb_clip_region.
4383         If this is false, only the cliprects of the shapes are used.
4384
4385         * gdk/linux-fb/gdkprivate-fb.h:
4386         Export gdk_fb_window_peek_shape.
4387         Add full_shapes to gdk_fb_clip_region.
4388
4389         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4390         When moving a window, don't clear everything under the it, just the
4391         root window. Makes stuff faster and flash less.
4392         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4393         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4394         offset of the shape.
4395         
4396
4397 2001-01-12  Havoc Pennington  <hp@redhat.com>
4398
4399         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4400         current invalid region, fixes redraw bug while scrolling the 
4401         text widget
4402
4403         * gtk/gtktextview.c, gtk/gtktextview.h:
4404         Rearrange the scrolling/validation/etc. code in a major way, 
4405         so it seems to make sense to me. Probably isn't genuinely that
4406         much better, but...
4407
4408         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4409         notifies
4410
4411         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4412
4413 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4414
4415         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4416         Hide mouse pointer while rotation. Show it afterwards.
4417
4418 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4419
4420         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4421         windows in consideration when generating clip region.
4422
4423         * gdk/linux-fb/gdkfb.h:
4424         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4425
4426         * gdk/linux-fb/gdkprivate-fb.h:
4427         Add shape to GdkWindowFBDatat.
4428         exported gdk_fb_window_get_abs_shape().
4429         removed gdk_fb_draw_lines declaration.
4430
4431         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4432         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4433         send focus changes when there is a grabbed window.
4434         (gdk_window_get_pointer): Handle shaped windows.
4435         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4436         (gdk_fb_window_peek_shape): Returns the shape for a window,
4437         handles GDK_FB_USE_CHILD_SHAPE.
4438         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4439         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4440         (gdk_window_shape_combine_mask): Implement.
4441
4442         * gtk/gtkwindow-decorate.c:
4443         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4444         setting the shape of a window makes the window transparent.
4445
4446 2001-01-11  Havoc Pennington  <hp@redhat.com>
4447
4448         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4449
4450 2001-01-10  Havoc Pennington  <hp@redhat.com>
4451
4452         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4453         add this function, bug 40251
4454
4455         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4456         of type macro   
4457
4458 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4459
4460         * acconfig.h:
4461         Added ENABLE_SHADOW_FB
4462
4463         * configure.in:
4464         Added --disable-shadowfb
4465
4466         * gdk/linux-fb/gdkcursor-fb.c:
4467         Update shadowfb when updating cursor
4468
4469         * gdk/linux-fb/gdkdrawable-fb2.c:
4470         Added wrappers for shadowfb that calls  the normal drawable
4471         methods, but calls gdk_shadow_fb_update(bounding box) when
4472         GdkWindows are drawed to.
4473         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4474         which also returns the bounding box.
4475
4476         * gdk/linux-fb/gdkfb.h:
4477         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4478
4479         * gdk/linux-fb/gdkgeometry-fb.c:
4480         Update shadowfb when scrolling window.
4481
4482         * gdk/linux-fb/gdkglobals-fb.c:
4483         Add _gdk_fb_screen_angle.
4484         
4485         * gdk/linux-fb/gdkkeyboard-fb.c:
4486         Test code for screen rotation. Shift-F2 in the xlate driver
4487         rotates the screen.
4488
4489         * gdk/linux-fb/gdkmain-fb.c:
4490         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4491
4492         * gdk/linux-fb/gdkmouse-fb.c:
4493         Use fb_width/height instead of modeinfo.xres/yres.
4494
4495         * gdk/linux-fb/gdkprivate-fb.h:
4496         Added fb_men, fb_width, fb_height & fb_stride. When using
4497         shadow fb these can differ from the framebuffer stuff.
4498         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4499         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4500         _gdk_fb_screen_angle. Removed CM, RP.
4501
4502         * gdk/linux-fb/gdkrender-fb.c:
4503         Added code for shadowfb handling and screen rotation using
4504         shadowfb.
4505
4506         * gdk/linux-fb/gdkwindow-fb.c:
4507         Use fb_mem, fb_stride, fb_width, fb_height.
4508         Added recompute_rowstride to reset the rowstride of all windows.
4509         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4510         window abs positions and window rowstrides. Usefull when the
4511         rotation has changed.
4512
4513 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4514
4515         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4516
4517 2001-01-10  Havoc Pennington  <hp@redhat.com>
4518
4519         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4520         where sibling == iter
4521         (gtk_tree_store_insert_after): handle sibling == iter
4522         (gtk_tree_store_prepend): remove stamp checks
4523         (gtk_tree_store_insert_before): ditto
4524         (gtk_tree_store_append): ditto
4525         (gtk_tree_store_get_path): ditto
4526         (gtk_tree_store_get_value): ditto
4527         (gtk_tree_store_iter_has_child): ditto
4528         (gtk_tree_store_iter_n_children): ditto
4529         (gtk_tree_store_iter_nth_child): ditto
4530         (gtk_tree_store_insert_after): ditto
4531         (gtk_tree_store_is_ancestor): ditto
4532         (gtk_tree_store_iter_depth): ditto
4533         (gtk_tree_store_insert_before): assert that sibling's parent is
4534         the same as the passed-in parent
4535         (gtk_tree_store_insert_after): assert that sibling's parent is
4536         the same as the passed-in parent
4537
4538         
4539         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4540         function to get the first iterator in a model
4541         
4542         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4543         conventionally the "root" in this sense is just NULL afaict.
4544
4545         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4546         where sibling == iter
4547         (gtk_list_store_insert_after): handle case where sibling == iter
4548
4549         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4550         automated tests for ListStore, TreeStore
4551
4552         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4553         (gtk_list_store_insert): update tail pointer, and fix it to work
4554         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4555         (gtk_list_store_append): use tail to be faster
4556         (gtk_list_store_prepend): fix it, update tail pointer
4557         (gtk_list_store_insert_after): fix it, update tail pointer
4558
4559         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4560         the list
4561
4562 2001-01-09  Havoc Pennington  <hp@redhat.com>
4563
4564         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4565         is NULL due to a pending resize
4566
4567         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4568         column width to values less than 1
4569
4570         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4571         width to be between min/max width, and still set the width 
4572         even if autosize is turned on, so the tree view can use this 
4573         function in order to autosize.
4574         (gtk_tree_view_column_init): set initial width to 1 not 0
4575
4576         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4577         setter function to modify column width, so we get notification
4578         (gtk_tree_view_insert_iter_height): ditto
4579         (gtk_tree_view_calc_size): ditto
4580         (gtk_tree_view_check_dirty): ditto
4581
4582         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4583         properties to change all the interesting attributes of the tree
4584         view column.
4585         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4586         (gtk_tree_view_column_get_clickable): add
4587         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4588         attributes; assume a cell renderer with equivalent object
4589         properties has been swapped in. Do g_object_notify().
4590         (gtk_tree_view_column_set_visible): g_object_notify
4591         (gtk_tree_view_column_get_sizing): rename from get_col_type
4592         (gtk_tree_view_column_set_sizing): g_object_notify
4593         (gtk_tree_view_column_set_width): add g_object_notify
4594         (gtk_tree_view_column_set_min_width): ditto
4595         (gtk_tree_view_column_set_max_width): ditto
4596         (gtk_tree_view_column_set_title): ditto
4597         (gtk_tree_view_column_set_clickable): ditto
4598         (gtk_tree_view_column_set_widget): ditto
4599         (gtk_tree_view_column_set_justification): ditto
4600
4601 2001-01-09  Havoc Pennington  <hp@redhat.com>
4602
4603         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4604         there are no rows in the model
4605
4606         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4607         NULL, then return the start of the list
4608
4609         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4610         if we can't get any rows from an empty model 
4611
4612         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4613         extraneous * after function pointer typedef usage
4614
4615         * Makefile.am: don't specify full path to cp and rm
4616
4617         * gtk/gtkcellrenderertextpixbuf.c
4618         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4619         NULL before dereferencing, fixes a segfault that happened from
4620         time to time
4621
4622         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4623         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4624         and reindent the function
4625         (gtk_cell_renderer_pixbuf_get_size): indentation
4626
4627         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4628         we quit it
4629         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4630         (gtk_dialog_set_default_response): New function, to set default
4631         button
4632         (gtk_dialog_set_response_sensitive): New function, to set 
4633         sensitivity of buttons
4634
4635         * gtk/gtkcellrendererpixbuf.c
4636         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4637         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4638
4639         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4640         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4641         also boxed types.
4642         (_gtk_tree_data_list_value_to_node): ditto
4643
4644         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4645         --gtk-debug=tree
4646
4647         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4648
4649         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4650
4651 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4652
4653         * gdk/win32/gdkevents-win32.c: Implement better mouse
4654         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4655         (find_window_for_pointer_event): New function.
4656         (gdk_event_translate): Use it when handling mouse events.
4657
4658 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4659
4660         * configure.in:
4661         Added --with-included-loaders option
4662
4663         * gdk-pixbuf/Makefile.am:
4664         * gdk-pixbuf/gdk-pixbuf-io.c:
4665         Add support for including selected gdk-pixbuf loaders only.
4666
4667         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4668         gtk_window_set_has_frame):
4669         Added inline documentation.
4670
4671         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4672         * docs/reference/gdk/tmpl/windows.sgml:
4673         Added inline documentation.
4674
4675 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4676
4677         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4678         realizing buttons that have already been realized.
4679
4680 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4681
4682         * tests/testtreeview.c (main): Show menu items before adding to
4683         option menu.
4684
4685         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4686         around if we kill them.
4687
4688         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4689         Return if we pass in a NULL model.
4690
4691 2001-01-08  Havoc Pennington  <hp@redhat.com>
4692
4693         * tests/testtreeview.c: hack on this some
4694
4695         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4696         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4697         list
4698         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4699
4700         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4701         functions
4702
4703 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4704
4705         * gtk/gtkwindow-decorate.[hc]:
4706         * gtk/Makefile.am:
4707         New files. Contains an implementation of a minimal WM for
4708         linux-fb.
4709
4710         * gtk/gtkwindow.h:
4711         Add the possibility for GtkWindows to specify a frame. This
4712         is used for the window decoration code, but could concievably
4713         be used for X programs too (xmms style windows).
4714         GtkWindow->frame is the toplevel window if the window is framed.
4715         The signal frame_event gets all events that are targeted to
4716         GtkWindow->frame.
4717         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4718         
4719         * gtk/gtkwindow.c:
4720         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4721         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4722
4723 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4724
4725         * docs/README.linux-fb:
4726         Correct filename ~/.pangoft2_aliases
4727
4728         * gdk/gdkwindow.h:
4729         Added new function gdk_window_get_decorations.
4730
4731         * gdk/linux-fb/gdkfb.h:
4732         Removed _gdk_window_get_decorations declaration.
4733         Renamed _gdk_window_set_child_handler to
4734         gdk_fb_window_set_child_handler.
4735
4736         * gdk/linux-fb/gdkwindow-fb.c:
4737         Renamed _gdk_window_set_child_handler to
4738         gdk_fb_window_set_child_handler.
4739
4740         * gdk/x11/gdkwindow-x11.c:
4741         New function gdk_window_get_mwm_hints().
4742         Implemented gdk_window_get_decorations.
4743
4744         * docs/reference/gdk/tmpl/windows.sgml:
4745         * docs/reference/gdk/gdk-sections.txt:
4746         Added gdk_window_get_decorations docs.
4747         
4748 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4749
4750         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4751         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4752         gdk_fb_window_send_crossing_events):
4753         Possibly send focus events when the mouse moves from one
4754         window to another.
4755
4756 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4757
4758         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4759         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4760         to match current API.
4761
4762         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4763         environment variable is set, don't call g_error when on a
4764         palettized (PseudoColor) display. Some people want to use GTK+ 
4765         in 256-colour mode even though works only partially.
4766
4767         * gdk/gdk.def
4768         * gtk/gtk.def
4769         * gtk/makefile.mingw.in: Update.
4770
4771 2001-01-05  Havoc Pennington  <hp@redhat.com>
4772
4773         * tests/testtreeview.c: hack on this a bit
4774
4775         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4776         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4777
4778         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4779         was spelled incorrectly
4780         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4781
4782         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4783         from gtk_tree_view_set_headers_active   
4784
4785         * gtk/gtktexttag.c:
4786         (gtk_text_tag_get_property): handle PROP_DIRECTION
4787         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4788         properties, bug 40235
4789
4790         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4791         forward_to_line_end
4792
4793 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4794
4795         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4796         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4797         for unicode,locale,filename conversion functions.
4798
4799 2001-01-05  Havoc Pennington  <hp@redhat.com>
4800
4801         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4802         broken if called on the first position in the buffer.
4803
4804         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4805         forward_to_delimiters to be called only if we aren't already at
4806         the delimiters.
4807
4808 2001-01-05  Havoc Pennington  <hp@redhat.com>
4809
4810         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4811
4812 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4813
4814         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4815         colormap in here. Sync from X port.
4816         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4817         Sync from X port.
4818         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4819         This happens now and then, and i don't think it is a bug.
4820         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4821         != endpoint.
4822         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4823         GDK_LINE_SOLID.
4824
4825         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4826         some of the fields filled in at least.
4827
4828         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4829         miLineArcD is no more, remove it from the function definition.
4830
4831 2001-01-04  Havoc Pennington  <hp@redhat.com>
4832
4833         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4834         this
4835
4836         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4837         user_data instead of tree_node
4838
4839         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4840         TREE_VIEW_COLUMN_SIZE
4841
4842         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4843         "size" field to "width" finishes bug 40061
4844
4845         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4846         for bitfields, bug 40268
4847
4848 2001-01-04  Havoc Pennington  <hp@redhat.com>
4849
4850         Rename some stuff:
4851         
4852         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4853
4854         s/GtkModelSimple/GtkTreeModelSimple/g;
4855         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4856         s/gtk_model_simple/gtk_tree_model_simple/g;
4857         s/gtkmodelsimple/gtktreemodelsimple/g;
4858
4859         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4860
4861         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4862         s/column_set_col_type/column_set_sizing/g;
4863
4864         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4865         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4866
4867         s/GtkCellRendererType/GtkCellRendererState/g;
4868         
4869         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4870         (gtk_cell_renderer_toggle_class_init): change "state" property to
4871         "active", to match GtkToggleButton
4872         (gtk_cell_renderer_toggle_get_active): new function, bug
4873         40269
4874         (gtk_cell_renderer_toggle_set_active): new function
4875         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4876         state through gtk_cell_renderer_set_active
4877
4878 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4879
4880         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4881         temporarily until they work again.  Brought up to date with
4882         changes in the model.
4883         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4884         model.
4885
4886 2001-01-04  Havoc Pennington  <hp@redhat.com>
4887
4888         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4889         equal to the line length, then position iterator before paragraph 
4890         separators. Fixes crash reported by Mikael Hermansson when
4891         pressing left arrow from the start of a line.   
4892
4893         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4894         about byte indexes off the end
4895         (iter_set_from_char_offset): add g_error about char offsets
4896         off the end
4897
4898 2001-01-03  Havoc Pennington  <hp@redhat.com>
4899
4900         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4901
4902         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4903         of private functions; remove inclusion of private headers.
4904
4905         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4906         function, so we don't need private functions in gtktextdisplay.c
4907
4908         * gtk/gtktextiterprivate.h: underscore-ification
4909
4910         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4911         to instead say "only useful to implement widgets"
4912
4913         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4914         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4915         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4916
4917         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4918         This function was completely broken
4919
4920         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4921
4922         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4923
4924         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4925
4926         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4927
4928         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4929
4930         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4931
4932         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4933         gtk_paint_layout
4934
4935         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4936         gtk_paint_layout
4937
4938         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4939         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4940         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4941         which were not implemented.     
4942
4943         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4944         insert_pixbuf signal. Rename delete_text to delete_range since it
4945         also deletes pixbufs and child anchors. This almost closes bug
4946         40245 (still need to deal with child anchors)
4947
4948         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4949         insert_pixbuf, change signal names as appropriate, change types of
4950         signals taking marks/tags to have the specific type, not just
4951         G_TYPE_OBJECT
4952         
4953         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4954         closes bug 40051
4955
4956         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4957         unnecessary remove_contents() call
4958         (gtk_option_menu_class_init): add a "changed" signal, closes
4959         bug 40039
4960         (gtk_option_menu_update_contents): emit "changed" if the 
4961         active menu item changes
4962
4963         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4964         cast to GtkObject, reported by Jonas Borgstrom
4965         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4966         we can't do stuff with side effects in finalize. Instead, spew a
4967         warning if the loader isn't closed.
4968
4969         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4970         colormap in here, non-X ports probably need to sync to this change
4971
4972         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4973         assertion that colormap != NULL, you can set the colormap to NULL
4974         if you like.
4975         
4976         * Makefile.am: remove gtk-config-2.0
4977
4978         * configure.in: Use pkg-config to locate GLib. Remove
4979         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4980         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4981         Use pkg-config to locate Pango. Output correct Pango libs to
4982         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4983
4984         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4985         files
4986         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4987         X11 pc files
4988
4989         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4990         unref from here
4991
4992 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4993
4994         * configure.in:
4995         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4996
4997 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4998
4999         * gtk/gtktextlayout.c
5000         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5001         variable when moving back onto a single line.
5002
5003 2001-01-01  Havoc Pennington  <hp@redhat.com>
5004
5005         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5006
5007         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5008
5009         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5010         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5011
5012 2001-01-01  Havoc Pennington  <hp@redhat.com>
5013
5014         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5015
5016         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5017         GtkTextAttributes
5018
5019         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5020         #40246
5021         (gtk_text_attributes_copy_values): rename from 
5022         gtk_text_attributes_copy
5023         (gtk_text_attributes_copy): a more standard GTK copy function, 
5024         which returns a new object
5025
5026 2001-01-01  Havoc Pennington  <hp@redhat.com>
5027
5028         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5029         
5030         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5031         don't fill in tree_view->priv->selection, kind of an unexpected
5032         side effect
5033
5034         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5035         gtkintl.h
5036         
5037         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5038         gtkintl.h
5039         (gtk_cell_renderer_get_property): remove calls to g_value_init
5040
5041         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5042         gtkintl.h
5043
5044         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5045         and include gtkintl.h
5046         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5047         property names
5048
5049         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5050         GtkTreeSelection
5051         (_gtk_tree_selection_new_from_with_view): rename, return
5052         GtkTreeSelection
5053         (_gtk_tree_selection_set_tree_view): rename with uscore
5054         (gtk_tree_selection_get_selected): fill in the "model" out param
5055         first, so it gets filled in even if we return at the top of the 
5056         function
5057         (gtk_tree_selection_real_select_all): add a comment and an else{}
5058         to clarify this a bit
5059         (gtk_tree_selection_real_unselect_all): add the same else{}
5060
5061         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5062         set_tree_view to have underscore prefixes, move them to the
5063         private header, fix return type of new_with_tree_view
5064         (struct _GtkTreeSelection): mark struct
5065         fields private  
5066
5067         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5068         GtkTreeModelFlags, not a guint
5069         (gtk_tree_path_prev): return gboolean not gint
5070         (gtk_tree_path_up): return gboolean not gint
5071
5072         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5073         return GtkTreeModelFlags, not a guint
5074
5075         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5076         that child model is non-null before unrefing it
5077         (g_value_int_compare_func): make this a qsort compare func, not 
5078         a boolean predicate
5079
5080         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5081         (add -umn to the end), and mark it unimplemented
5082         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5083         I don't see what it's for - doesn't the model always sort itself?
5084         (gtk_tree_model_sort_set_compare): this had the wrong signature
5085
5086         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5087         Fix the docs to say that it destructively replaces existing
5088         attributes (previously said that it added attributes).
5089         (gtk_tree_view_column_set_visible): canonicalize bool before
5090         equality testing. Also, check for realization before
5091         hiding/showing the tree_column->window; if this window could exist
5092         before realization, then it's busted and needs fixing, we can't 
5093         create GDK resources pre-realization. Also, remove
5094         superfluous queue_resize(), since set_size() does that for us.
5095         (gtk_tree_view_column_set_col_type): check realization before 
5096         using tree_column->window
5097
5098         * gtk/gtktreedatalist.c: fix filename in copyright notice
5099
5100 2000-12-31  Havoc Pennington  <hp@pobox.com>
5101
5102         * gtk/gtktextview.c: Rearrange all the
5103         scroll-while-dragging-or-selecting code to be different, not
5104         necessarily better. ;-)
5105         (gtk_text_view_scroll_to_mark): Change this
5106         function to take within_margin as a fraction instead of a pixel
5107         value, and to take alignment arguments (indicating where to align 
5108         the mark inside the visible area)
5109         
5110         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5111         to GtkObject
5112
5113         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5114         behavior so that offsets past the end of the line are not 
5115         allowed, and an offset equal to the line length moves the iterator
5116         to the next line
5117         (gtk_text_iter_set_line_index): make parallel change
5118         (gtk_text_iter_get_bytes_in_line): add this function
5119         
5120         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5121         of byte indexes off the end of the line; byte index at the end of
5122         the line now returns FALSE and doesn't fill in the requested
5123         values, byte index past the end of the line is an error.  Also,
5124         don't allow -1 offset anymore, since its meaning is unclear.
5125
5126         This change exposes some bug in visual cursor motion, where we
5127         end up with a huge invalid byte index; needs fixing. Symptom of 
5128         bug is a crash when you hit up arrow.
5129         
5130         (_gtk_text_line_char_locate): match the change to byte_locate
5131
5132         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5133         from start of line properly. fixes bug reported by Mikael
5134         Hermansson where backspace would delete all text before the
5135         cursor.
5136
5137 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5138
5139         * gdk/win32/gdkwindow-win32.c
5140         (gdk_window_impl_win32_get_visible_region): New function, as in
5141         the X11 backend.
5142         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5143         instead of duplicating the same code here.
5144
5145         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5146         GDK_COLORMAP macro.
5147
5148         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5149         destroy function.
5150         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5151         access that.
5152
5153         * gtk/gtk.def: Update.
5154
5155         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5156
5157 2000-12-30  Havoc Pennington  <hp@pobox.com>
5158
5159         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5160         colormap on input only windows, to avoid special cases all over
5161         the code for these windows.
5162
5163 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5164
5165         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5166         we are on a palettized display ("PseudoColor" in X11), as the code
5167         for that doesn't work anyway, and never has.
5168
5169 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5170
5171         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5172         Don't use isprint() for chars > 255.
5173
5174 2000-12-21  Havoc Pennington  <hp@redhat.com>
5175
5176         * tests/testtreeview.c: more work
5177
5178 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5179
5180         * docs/README.linux-fb:
5181         Update the docs to the new pangoft2 way.
5182
5183 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5184
5185         * configure.in:
5186         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5187         pango version.
5188         Remove modules/linux-fb/Makefile.
5189
5190         * gdk/linux-fb/gdkdrawable-fb2.c:
5191         Render glyphs using freetype.
5192
5193         * gdk/linux-fb/gdkfb.h:
5194         Add new fb-specific functions needed for managing windows.
5195
5196         * gdk/linux-fb/gdkmain-fb.c:
5197         Remove gdk_font_init/fini() calls.
5198
5199         * gdk/linux-fb/gdkpango-fb.c:
5200         Remove old implementation. Use pangoft2 instead.
5201
5202         * gdk/linux-fb/gdkprivate-fb.h:
5203         Remove PangoFBFont and related stuff.
5204
5205         * gdk/linux-fb/gdkwindow-fb.c:
5206         Implement drawable->get_visible_region.
5207         Implement support for _gdk_window_set_child_handler () and
5208         _gdk_window_get_decorations().
5209
5210         * modules/Makefile.am:
5211         Remove linux-fb subdir.
5212
5213         * modules/linux-fb/*:
5214         Removed all.
5215         
5216 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5217
5218         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5219         calls, as they are no longer needed.
5220
5221         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5222         
5223         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5224         figure out how to emit a signal on an interface.
5225
5226 2000-12-20  Havoc Pennington  <hp@redhat.com>
5227
5228         * tests: new directory to contain tests, gtk/test* should move
5229         here sometime (with appropriate on-cvs-server hackery)
5230
5231         * tests/testtreeview.c, tests/Makefile.am: a test
5232         
5233         * configure.in (AC_OUTPUT): add tests/Makefile
5234
5235         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5236         and "invisible_set" which were missing
5237
5238         * gtk/gtkrbtree.h: some cheesy indentation fix
5239         
5240 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5241
5242         * gtk/gtkinvisible.c (gtk_invisible_realize):
5243         Attach the style to the window so that the style it is not
5244         leaked when unrealizing the window.
5245
5246 2000-12-18  Havoc Pennington  <hp@redhat.com>
5247
5248         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5249         begin/end user action where appropriate
5250         (gtk_text_view_commit_handler): add begin/end user action
5251
5252         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5253         bracket interactive operations with begin/end user action pair.
5254         
5255         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5256         "interactive" arg from insert_text and delete_text signals.
5257         Add begin_user_action, end_user_action signals
5258         (gtk_text_buffer_begin_user_action): 
5259         (gtk_text_buffer_end_user_action): New functions to delimit 
5260         a user-visible action
5261
5262         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5263         signals.
5264         
5265 2000-12-18  Havoc Pennington  <hp@redhat.com>
5266
5267         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5268         was pretty non-working.
5269
5270         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5271         by passing the length to g_utf8_validate().
5272
5273 2000-12-16  Havoc Pennington  <hp@pobox.com>
5274
5275         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5276         Port to GObject, can go back in gdk-pixbuf after setting up 
5277         a gdk-pixbuf-marshal.h header over there.
5278
5279         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5280         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5281         args
5282         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5283         set
5284         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5285         here, do it when we create the buttons later
5286         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5287         (gtk_tree_view_map): paranoia checks that column->button is shown 
5288         and unmapped
5289         (gtk_tree_view_size_request): only request visible children.
5290         Move header size calculation in here, for cleanliness, and 
5291         to maintain invariants for child widgets if we eventually 
5292         let users set different children inside the buttons
5293         (gtk_tree_view_map_buttons): factor out code to map buttons,
5294         since it was being called several times
5295         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5296         windows instead of just moving them; their height may change 
5297         if we allow random widgets in there, or the theme changes.
5298         (gtk_tree_view_size_allocate): move button size allocation 
5299         above emitting the scroll signals, to ensure a sane state when we
5300         hit user code
5301         (gtk_tree_view_button_release): remove queue_resize after
5302         tree_view_set_size(), set_size() will handle any resize queuing
5303         that's needed
5304         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5305         draw_focus goo
5306         (gtk_tree_view_focus): use gtk_get_current_event() and
5307         gdk_event_get_state()
5308         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5309         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5310         semicolon
5311         (gtk_tree_view_create_button): show the button here
5312         (gtk_tree_view_button_clicked): actually emit the clicked signal
5313         on the column
5314         (_gtk_tree_view_set_size): return right away if the size is
5315         unchanged, as a cheesy optimization
5316         (gtk_tree_view_setup_model): rename set_model_realized to 
5317         setup_model to match the flag that indicates whether we've 
5318         called it
5319         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5320         exist, because set_scroll_adjustment does that and it shouldn't
5321         matter what order you call these in
5322         (gtk_tree_view_get_vadjustment): ditto
5323         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5324         for paranoia
5325         (gtk_tree_view_set_headers_visible): call
5326         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5327         (gtk_tree_view_append_column): clarify whether the return value
5328         is the count of columns before or after, and do the increment 
5329         separately from the return statement so you can tell from the code.
5330         (gtk_tree_view_remove_column): ditto
5331         (gtk_tree_view_insert_column): ditto
5332         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5333         outside the existing range, the docs say that outside-range
5334         columns are allowed, so we handle them as documented. (Presumably
5335         this allows a nice loop with column != NULL as test.)
5336         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5337         mean (left/right/center etc.).
5338         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5339         (gtk_tree_view_expand_row): add docs
5340         (gtk_tree_view_collapse_row): add docs
5341
5342         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5343         function to emit the clicked signal on a column
5344         
5345         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5346         state of an event
5347         (gdk_event_get_time): don't treat GDK_SCROLL 
5348         as a button event, remove default case from switch so gcc 
5349         will whine if we don't explicitly handle all event types
5350
5351         * gtk/gtktreeselection.h: added some FIXME 
5352         
5353         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5354         "columns" to "n_columns" and "column" to "columns" for clarity
5355
5356 2000-12-16  Havoc Pennington  <hp@pobox.com>
5357         
5358         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5359         stuff. This should make e.g. the delete key work again in the
5360         text widget...
5361         (gtk_text_iter_forward_cursor_positions): handle negative count
5362         (gtk_text_iter_backward_cursor_positions): handle negative count
5363         (gtk_text_iter_forward_word_ends): handle negative count
5364         (gtk_text_iter_backward_word_starts): handle negative count
5365
5366         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5367         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5368         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5369         GObject. No doubt will cause breakage.
5370
5371         * demos/gtk-demo/textview.c: remove hacks around
5372         non-GObject-ification of the text objects
5373
5374         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5375         the text tag
5376         
5377 2000-12-14  Havoc Pennington  <hp@pobox.com>
5378
5379         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5380         that we have Xrender
5381
5382 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5383
5384         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5385         Add two virtualized functions gdk_drawable_get_clip_region - to
5386         get the clip region when drawing.
5387         
5388         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5389         use invalidate_region.
5390
5391         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5392         region.
5393
5394         * acconfig.h configure.in: Check for Xft. For now, assume
5395         that if Xft is found, Pango was compiled with Xft support
5396         as well.
5397
5398         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5399         gdk_colormap_query_color().
5400         
5401         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5402         with Xft if appropriate.
5403
5404         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5405         a pangoxft context if we have XFT and the environment
5406         variable GD_USE_XFT is set.
5407         
5408         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5409         and also possibly an XftDraw structure.
5410
5411         * gtk/gtkfontsel.c: Handle the case where the font from the
5412         style doesn't match any of the fonts a bit better.
5413         
5414         * gtk/testgtk.c: Add tabs between directional segments for
5415         hebrew/arabic test. (Not really necessary, just a little
5416         prettier.)
5417
5418 2000-12-14  Havoc Pennington  <hp@redhat.com>
5419
5420         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5421         reading a file
5422
5423 2000-12-14  Havoc Pennington  <hp@redhat.com>
5424
5425         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5426         unused call to get_last_line()
5427
5428         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5429         here until boxed is working (and maybe after that - we should
5430         really not gratuitously break old code)
5431
5432         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5433         specific types for font_desc and tabs args, move them to
5434         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5435         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5436
5437         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5438         use GTK_TYPE_POINTER for signal signatures as a hack-around
5439
5440         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5441         PangoTabArray
5442
5443         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5444         make static
5445         (line_display_index_to_iter): make static
5446
5447         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5448         to marshal a string not a boxed
5449
5450         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5451
5452         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5453         since the UTF-8 isn't validated yet
5454
5455         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5456         lines to end in '\n'
5457         
5458         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5459         forward_to_delimiters, and grapheme boundaries
5460         (gtk_text_view_delete_from_cursor): properly handle non-newline
5461         delimiters, and grapheme boundaries
5462
5463         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5464         to gtk_text_iter_forward_to_delimiters, and make it work properly
5465         if empty lines end with a character other than '\n'
5466
5467         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5468         position
5469
5470 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5471
5472         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5473
5474         * gtk/gtk.def
5475         * gdk/gdk.def: Update.
5476
5477         * gdk/win32/gdkmain-win32.c
5478         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5479         gdkmain-win32.c here.
5480
5481         * gdk/win32/makefile.mingw.in (all): No need to make
5482         gdk-win32res.o here, the makefile one step up will call us to make
5483         it.
5484
5485         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5486         gdkkeys-win32.
5487
5488         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5489
5490         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5491         call to g_source_add().
5492
5493         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5494         leak. Thanks to Andreas Kemnade.
5495
5496 2000-12-13  Havoc Pennington  <hp@pobox.com>
5497
5498         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5499
5500         * gtk/gtktext*.[hc]: update accordingly
5501         
5502 2000-12-13  Havoc Pennington  <hp@pobox.com>
5503
5504         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5505         header file
5506
5507         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5508
5509 2000-12-13  Alex Larsson  <alexl@redhat.com>
5510
5511         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5512         Add support for ps2 intellimouse.
5513
5514         * gdkkeyboard-fb.c:
5515         Move shift-F1 repaint handling to xlate handler only.
5516         
5517         * docs/README.linux-fb:
5518         Add imps2 to docs.
5519         Document the new refresh keys.
5520         
5521 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5522
5523         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5524
5525         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5526         ::position and ::padding.
5527
5528         * gtk/gtkcontainer.c: make ::border_width an INT property.
5529
5530         * gtk/gtkpacker.c: make ::position an INT property.
5531
5532         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5533         guard against NULL h/v scrollbars, since this is used at construction
5534         time.
5535
5536         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5537         internal gtk_clist_constructor().
5538
5539         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5540         gtk_ctree_constructor().
5541
5542         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5543         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5544
5545         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5546         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5547
5548         * gtk/gtkwidget.[hc]:
5549         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5550         and gtk_widget_get().
5551         (gtk_widget_new): use g_object_new_valist().
5552         (gtk_widget_set): use g_object_set_valist().
5553
5554         * gtk/gtkobject.[hc]:
5555         removed gtk_object_arg_get_info(), gtk_object_getv(),
5556         gtk_object_query_args(), gtk_object_newv(),
5557         gtk_object_class_add_signals(),
5558         gtk_object_class_user_signal_new(),
5559         gtk_object_class_user_signal_newv(),
5560         gtk_object_arg_set(), gtk_object_arg_get(),
5561         gtk_object_args_collect(),
5562         gtk_object_default_construct(),
5563         gtk_object_constructed(),
5564         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5565         removed nsignals, signals and n_args members from GtkObjectClass.
5566         (gtk_object_new): use g_object_new_valist().
5567         (gtk_object_set): use g_object_set_valist().
5568         (gtk_object_get): use g_object_get_valist().
5569         
5570         * gtk/gtkcompat.h: define gtk_object_default_construct().
5571         
5572         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5573         g_object_new().
5574
5575         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5576         fucntions, cleaned up method assignments (make sure your structures
5577         are setup properly before calling out). removed all GTK_CONSTRUCTED
5578         hacks ;)
5579
5580 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5581
5582         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5583         off-by-one error in checks. (Dave Lambert)
5584
5585 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5586
5587         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5588         Don't free gdk_fb_keyboard twice.
5589
5590 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5591
5592         * gtk/testgtk.c:
5593         (create_tooltips): 
5594         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5595         use GObject swapped_signal:: properties instead.
5596
5597         * gtk/gtkcellrenderertoggle.c: 
5598         * gtk/gtkcellrenderertextpixbuf.c: 
5599         * gtk/gtkcellrenderertext.c: 
5600         * gtk/gtkcellrendererpixbuf.c: 
5601         * gtk/gtkcellrenderer.c:
5602         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5603         missing warnings for invalid property ids, install properties
5604         with g_object_class_install_property() now.
5605         
5606         * gtk/gtksignal.c:
5607         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5608         
5609 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5610         
5611         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5612         to determine if a window is the focus widget within
5613         its toplevel.
5614
5615         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5616         to be boolean.
5617
5618         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5619         of the case where the container CAN_FOCUS to here instead
5620         of having it in each individual move-the-focus place.
5621
5622         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5623         focusing to be geometric in a much more obvious sense. Arrowing
5624         around is still non-intuitive because it isn't perfect and
5625         because entries, etc, grab the arrow keys, but it at least
5626         usually will do what you expect now.
5627         
5628         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5629         file.
5630
5631         * gtk/gtknotebook.c: Change tabs to be a single item in
5632         the focus chain. Make movement of focus on tabs with arrow
5633         keys wrap around.
5634         
5635         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5636         CHECK_FIND_CHILD macro to give informative error messages
5637         instead of silent returns.
5638
5639         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5640         flag since we handle GdkReturn on the tabs.
5641
5642         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5643         windows rather than sending expose events directly.
5644
5645         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5646         definition for GtkNotebookPage into .c file, since it is private.
5647
5648         * gtk/testgtk.c (create_notebook): Add option for 
5649         testing borderless notebook.
5650
5651         * gtk/testgtk.c (page_switch): Removed egregious poking
5652         around in GTK+ internals.
5653
5654         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5655
5656         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5657         properly through gtk_clist_focus. Make the title headers a
5658         single item in the tab-focus chain, and make left-right wrap
5659         around.
5660
5661         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5662         focus method so that wrapping around works properly.
5663
5664         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5665         that is handled for the widget now. 
5666
5667 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5668
5669         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5670         widgets as TOPLEVEL.
5671
5672         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5673         TOPLEVEL widgets are containers.
5674
5675         * gtk/gtkinvisible.h: Remove useless include.
5676
5677 2000-12-11  Havoc Pennington  <hp@redhat.com>
5678
5679         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5680         Handle chopping off \r\n and 0x2029 in addition to \n before
5681         passing to PangoLayout
5682
5683         * gtk/gtkimcontextsimple.c
5684         (gtk_im_context_simple_get_preedit_string): 
5685         return an empty string if no match is pending
5686
5687         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5688         assertion that the returned preedit string was sane
5689
5690         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5691         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5692         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5693
5694 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5695
5696         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5697         Fix up finalizer to chain to its parent.
5698
5699 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5700
5701         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5702         Clearified the difference between the keyboard types. Wrote a note
5703         about the magic sysrq key to get out of raw mode.
5704
5705 2000-12-09  James Henstridge  <james@daa.com.au>
5706
5707         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5708         member to hold masks for detecting the start of a protocol packet.
5709         (mouse_devs): add packet start masks for ps2 and ms device types.
5710         Left the mask for fidmour blank, as I have no idea what it should
5711         be.
5712         (handle_mouse_io): skip bytes until we get to the start of a
5713         packet.  My Logitech mouse seems to be passing an extra NULL pad
5714         byte, and GPM does a similar thing here.
5715         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5716         this is the ms mouse driver.
5717         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5718         completely broken except for button1.  It was checking the wrong
5719         bit in the packet for the status of the right mouse button, and
5720         wrongly assuming right == button2 rather than 3.  I fixed that and
5721         also added support for middle button (button2).
5722
5723 2000-12-08  Havoc Pennington  <hp@redhat.com>
5724
5725         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5726         that cause a segfault on text insertion
5727
5728         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5729         warning
5730
5731         * gtk/gtktextiter.c (test_log_attrs): use
5732         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5733
5734         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5735         Get log attrs for a line, using a cache stored on the buffer
5736         
5737         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5738         reported by Jeff Franks
5739
5740 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5741
5742         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5743         /dev/ttyS0 -> /dev/mouse
5744
5745 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5746
5747         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5748         Added dummy gdk_fontset_load.
5749
5750 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5751
5752         * docs/README.linux-fb:
5753         * docs/Makefile.am:
5754         Initial GtkFB docs.
5755         
5756         * gdk/linux-fb/Makefile.am:
5757         Define GDK_DATA_PREFIX.
5758
5759         * gdk/linux-fb/gdkmain-fb.c:
5760         Fix typo.
5761         Change default display to /dev/fb0.
5762
5763         * gdk/linux-fb/gdkpango-fb.c:
5764         Add $(prefix)/share/fonts/ to font path.
5765         
5766 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5767
5768         * gdk/linux-fb/gdkkeyboard-fb.c:
5769         New file containing the abstracted keyboard driver. Most code
5770         taken from gdkinput-ps2.c
5771
5772         * gdk/linux-fb/gdkinput-ps2.c:
5773         Removed file.
5774         
5775         * gdk/linux-fb/Makefile.am:
5776         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5777
5778         * gdk/linux-fb/gdkcolor-fb.c:
5779         display->fb was renamed to display->fb_fd.
5780
5781         * gdk/linux-fb/gdkcursor-fb.c:
5782         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5783
5784         * gdk/linux-fb/gdkinput.c:
5785         Moved gdk_input_init here from gdkinput-ps2.c
5786
5787         * gdk/linux-fb/gdkmain-fb.c:
5788         display->fb was renamed to display->fb_fd.
5789         Now the tty and the console is opened here instead
5790         of in the keyboard driver. Also check GDK_VT to see what
5791         tty to open.
5792         Move gdk_beep () here from gdkinput-ps2.c
5793         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5794
5795         * gdk/linux-fb/gdkmouse-fb.c:
5796         Add header.
5797         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5798         Return correct keyboard modifiers.
5799         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5800
5801         * gdk/linux-fb/gdkprivate-fb.h:
5802         Add tty and vt info to display.
5803         Add orignal modeinfo storage to display
5804         Update global functions
5805
5806         * gdk/linux-fb/gdkwindow-fb.c:
5807         Added gdk_fb_window_find_focus().
5808         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5809
5810 2000-12-07  Havoc Pennington  <hp@pobox.com>
5811
5812         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5813         function, noticed by Alex
5814
5815 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5816
5817         * configure.in: Detect freetype properly
5818
5819         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5820         above.
5821
5822 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5823
5824         * gdk/linux-fb/Makefile.am:
5825         Add gdkmouse-fb.c
5826         
5827         * gdk/linux-fb/gdkmouse-fb.c:
5828         New file. Abstracted the mouse drivers a bit.
5829
5830         * gdk/linux-fb/gdkcursor-fb.c:
5831         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5832
5833         * gdk/linux-fb/gdkinput-ps2.c:
5834         Removed old mouse handling code. Moved cursor handling code
5835         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5836         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5837         gdk_mouse_get_info.
5838
5839         * gdk/linux-fb/gdkmain-fb.c:
5840         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5841
5842         * gdk/linux-fb/gdkprivate-fb.h:
5843         Removed public gdk_fb_find_common_ancestor, added and renamed
5844         functions for the new mouse handling code.
5845
5846         * gdk/linux-fb/gdkwindow-fb.c:
5847         Moved gdk_fb_window_send_crossing_events here. added global
5848         variable gdk_fb_window_containing_pointer. made
5849         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5850         renamed to gdk_mouse_get_info.
5851
5852 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5853
5854         * gdk/linux-fb/gdkevents-fb.c:
5855         Update to match latest gmain/gsource changes.
5856
5857         * gdk/linux-fb/gdkinput-ps2.c:
5858         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5859         it links. Will be implemented later.
5860
5861 2000-12-03  Havoc Pennington  <hp@pobox.com>
5862
5863         * gdk/Makefile.am: add gdkkeys.[hc]
5864
5865         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5866         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5867
5868         * acconfig.h, configure.in: add checks and command line options
5869         for XKB
5870
5871         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5872         
5873         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5874         and group in the key event
5875
5876         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5877         field with the low-level hardware key code, and a group
5878         field with the keyboard group
5879
5880         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5881         and declare a couple globals used for keymap handling
5882         
5883         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5884         hold down Shift-Control and type a hex number to get a Unicode 
5885         character corresponding to the hex number
5886         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5887         (return bytes not chars)
5888
5889 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5890
5891         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5892         to avoid waste on 64-bit platforms.
5893
5894 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5895
5896         * INSTALL: Fix link to PNG home, remove reference
5897         to fribidi.
5898
5899         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5900         
5901         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5902         tested.)
5903
5904         * gtk/gtkcheckmenuitem.c: Permanently turn on
5905         always_show_toggle.
5906
5907         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5908         be NULL. (Vladimir Klebanov, #26545)
5909
5910         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5911         some signed/unsigned comparison problems. (#6510,
5912         David Kaelbling)
5913
5914         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5915         return type to boolean (Oskar Liljeblad, #18648)
5916
5917 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5918
5919         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5920         Remove bogus colormap setting.
5921
5922 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5923
5924         * gdk/linux-fb/gdkcolor-fb.c:
5925         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5926
5927         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5928         Must set colormap.
5929         
5930 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5931
5932         * docs/tutorial/gtk-tut.sgml: DND updates
5933
5934 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5935
5936         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5937         Remove old debug g_warning().
5938         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5939         or an implementation, just pass the implementation to draw_drawable_2.
5940         
5941         * gdk/linux-fb/gdkprivate-fb.h:
5942         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5943
5944         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5945         clear and invalidate area when window is destroyed.
5946         (send_map_events): Remove old commented out code.
5947
5948 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5949
5950         * gdk/linux-fb/gdkpango-fb.c:
5951         Use italic instead of oblique in font aliases.
5952         
5953         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5954         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5955         other unsupported functions.
5956
5957 2000-12-04  Havoc Pennington  <hp@redhat.com>
5958
5959         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5960
5961         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5962
5963         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5964
5965         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5966         hack to avoid infinite loops (synthetic expose event) - 
5967         Owen has more appropriate fixes in a branch he'll check in later.
5968
5969         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5970         separator, CR, and CRLF as line ends
5971
5972         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5973         into lines using pango_find_paragraph_boundary(); other bits of
5974         the widget are still going to be broken if the boundary isn't '\n'
5975         though
5976
5977 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5978
5979         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5980         multiply.
5981
5982         * gdk/linux-fb/gdkpango-fb.c:
5983         Copied some 26.6 scaling macros from pango to clean up the rounding.
5984         (pango_fb_font_get_glyph_info): Correct sign on x value.
5985
5986         * gdk/linux-fb/gdkprivate-fb.h:
5987         Removed unreferenced external functions.
5988
5989         * modules/linux-fb/Makefile.am: Use ` instead of '.
5990
5991         * modules/linux-fb/basic.c:
5992         Remove dead code. In particular the dummy lang engine which broke all
5993         pango layouts in GtkFB. Don't include tables-big.i anymore.
5994
5995         * modules/linux-fb/tables-big.i:
5996         Upgrade to latest version from pango. Left for reference, basic_ranges
5997         moved to basic.c.
5998         
5999 2000-12-04  Havoc Pennington  <hp@redhat.com>
6000
6001         Fix bugs Alex found:
6002         
6003         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6004         to "draw"
6005
6006         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6007
6008         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6009
6010         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6011         implementation in here, apparently the expose() implementation was
6012         dead code.
6013
6014 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6015
6016         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6017         Return positive descent.
6018
6019 2000-12-02  Havoc Pennington  <hp@pobox.com>
6020
6021         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6022         method and signal
6023         
6024         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6025         calls gdk_window_process_updates() to push the exposes through
6026         (gtk_widget_class_init): No more draw signal, no
6027         gtk_widget_real_draw()  
6028         
6029         * gtk/gtkbin.c (gtk_bin_draw): remove
6030
6031         * gtk/gtkbox.c (gtk_box_draw): remove
6032
6033         * gtk/gtkbutton.c (gtk_button_draw): remove
6034
6035         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6036
6037         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6038
6039         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6040
6041         * gtk/gtkclist.c (gtk_clist_draw): remove
6042
6043         * gtk/gtkentry.c (gtk_entry_draw): remove
6044
6045         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6046
6047         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6048
6049         * gtk/gtkframe.c (gtk_frame_draw): remove
6050
6051         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6052
6053         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6054
6055         * gtk/gtklayout.c (gtk_layout_draw): remove
6056
6057         * gtk/gtklist.c (gtk_list_draw): remove
6058
6059         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6060
6061         * gtk/gtkmenu.c (gtk_menu_draw): remove
6062
6063         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6064
6065         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6066
6067         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6068
6069         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6070
6071         * gtk/gtkpacker.c (gtk_packer_draw): remove
6072
6073         * gtk/gtkrange.c (gtk_range_draw): remove
6074
6075         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6076
6077         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6078
6079         * gtk/gtktable.c (gtk_table_draw): remove
6080
6081         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6082
6083         * gtk/gtktext.c (gtk_text_draw): remove
6084
6085         * gtk/gtktextview.c (gtk_text_view_draw): remove
6086
6087         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6088
6089         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6090
6091         * gtk/gtktree.c (gtk_tree_draw): remove
6092
6093         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6094
6095         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6096
6097         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6098
6099         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6100
6101         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6102
6103         * gtk/gtkwindow.c (gtk_window_draw): remove
6104
6105 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6106
6107         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6108         a GtkToggleButton is both insensitive and active, it was being
6109         drawn by the GtkButton draw handler which doesn't check the
6110         state. Now it's calling gtk_toggle_button_paint instead.
6111         
6112 2000-12-01  Havoc Pennington  <hp@redhat.com>
6113
6114         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6115         dangling pointers to the appearance attributes from the 
6116         line display
6117
6118         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6119         width/height to mean "full width/height of drawable"
6120
6121         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6122         click to select word/line
6123         
6124         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6125         when getting log attrs. Get a slice, so that pixmaps and stuff
6126         are properly handled.
6127
6128         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6129         paste into the selection (replaces selection now, previously
6130         crashed or added to selection). Reveals longstanding btree bug -
6131         select multiple lines, middle-click on the selection, boom. This
6132         isn't related to my changes though.
6133
6134         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6135         PangoLogAttrs changes
6136         (gtk_entry_move_backward_word): ditto
6137
6138         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6139         functions return bool whether the iter moved onto a
6140         dereferenceable position.
6141  
6142         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6143         functions for motion in terms of display lines.
6144
6145         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6146         get the buffer a mark is inside
6147         
6148 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6149
6150         * gdk/linux-fb/Makefile.am:
6151         * modules/linux-fb/Makefile.am:
6152         Freetype 2 final uses freetype-config
6153
6154         * gdk/linux-fb/gdkpango-fb.c:
6155         Upgrade to use Freetype 2 final.
6156         More flexible support for font aliases, this also fixes a bug with
6157         GtkFontSelector, as the aliases must be visible in the font/family list,
6158         or GtkFontSelector reads uninitialized memory.
6159
6160 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6161
6162         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6163         XGetIMValues to properly terminate variable argument list, and do
6164         NULL return check for ic_values and xim_styles.
6165
6166         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6167         Restore preedit state after XmbResetIC().
6168         
6169         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6170         XvaCreateNestedList() should take XvaNestedList, but not
6171         XvaNestedList*.
6172
6173         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6174         preedit_draw_callback, preedit_caret_callback): Match
6175         "preedit-changed" signal name to "preedit_changed" to be
6176         consistent to the spec.
6177
6178         * gtk/gtkimcontextsimple.c (check_table):
6179         Match "preedit-changed" to "preedit_changed" to be consistent
6180         to the spec.
6181
6182 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6183
6184         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6185         gc->clip_region == NULL>
6186
6187 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6188
6189         Changes by Hans Breuer:
6190         
6191         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6192         Dont't use negative width and height as max_hints. This fixes
6193         Owen's recent testgtk changes for win32.
6194
6195         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6196         gdk_win32_hdc_release): These are exported and may be called with
6197         other drawable types than our GdkDrawableImplWin32 (?).
6198
6199         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6200         so always #define USE_BACKING_STORE.
6201
6202         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6203         of printf for debugging output.
6204
6205         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6206         
6207         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6208
6209         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6210         declaration.
6211
6212         * gtk/gtktexttypes.h: Ditto.
6213
6214         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6215         (GDK_VoidSymbol) also if in case of arg check failure.
6216
6217         * gtk/gtkimcontextsimple.c
6218         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6219         position to the pointer, but to the variable it points to.
6220
6221         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6222
6223         * gtk/gtk.def: Updates.
6224
6225 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6226
6227         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6228         GTK_TYPE_TREE_MODEL.
6229
6230 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6231
6232         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6233         Set the size of the font from the description.
6234         (gdk_text_width): Gross hack that calculates the width
6235         of text by text_length * size/2. This is necessary because
6236         GtkLabel does some ugly gtk_string_width call to calculate
6237         an good size.
6238         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6239
6240 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6241
6242         * docs/tutorial/gtk-tut.sgml: DND updates
6243
6244 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6245
6246         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6247         If you pass width or height == 0 to gdk_window_clear_area they
6248         should be calculated from the window size.
6249
6250 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6251
6252         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6253         a grab, but no grab-cursor, use the cursor from the grabbed
6254         window. (gdk_fb_window_send_crossing_events): Send normal
6255         enter/leave notifications if grab and owner_events == TRUE.
6256
6257 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6258
6259         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6260         Do implicit button grabs, even if the window doesn't
6261         want the event.
6262         (gdk_fb_window_send_crossing_events): If there is a
6263         grab, only the grabbed window gets normal enter/leave
6264         notifications. On ungrab go from grabbed window to current.
6265         Don't send any notification to b when propagating from c -> b.
6266         If setting a grab on window, don't set prev_window.
6267         (handle_mouse_input): Send enter/leave events to the window the
6268         mouse is over, not the grabbed one.
6269         
6270 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6271
6272         * gdk/gdkregion-generic.c: Zap warning.
6273         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6274         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6275
6276 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6277
6278         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6279         The cursor should be hidden if it is part of either the
6280         source or destination region. Not only if it is in both.
6281         (gdk_window_set_transient_for): Silence warnings.
6282
6283 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6284
6285         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6286         The default mode in X is Pie Arcs, therefore that is
6287         what Gtk+ uses.
6288
6289 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6290
6291         * gdk/linux-fb/gdkinput-ps2.c:
6292         Implement correct EnterNotify/LeaveNotify:
6293         (gdk_fb_window_send_crossing_events): New function that sends
6294         all GdkCrossingEvents from the last mouse-window to the specified
6295         destination.
6296         (gdk_fb_window_visibility_crossing): Removed function.
6297         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6298         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6299         instead of gdk_window_get_pointer() for better readability.
6300
6301         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6302         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6303
6304         * gdk/linux-fb/gdkprivate-fb.h:
6305         removed gdk_fb_window_visibility_crossing, added
6306         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6307
6308         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6309         New function that finds the least common ancestor of two windows.
6310         (gdk_window_show, gdk_window_hide):
6311         Use gdk_fb_window_send_crossing_events.
6312         (gdk_fb_window_move_resize): Send configure events to toplevel
6313         windows. Use gdk_fb_window_send_crossing_events.
6314
6315 2000-11-27  Havoc Pennington  <hp@redhat.com>
6316
6317         * gtk/gtkprivate.h (enum): Remove a trailing comma
6318
6319 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6320
6321         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6322         the "changed" callback of the adjustment.  We need to redraw the
6323         spin button's arrows when the adjustment's range changes.
6324         (adjustment_changed_cb): Draw the arrows.
6325         (gtk_spin_button_value_changed): Draw the arrows.
6326
6327 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6328
6329         * gdk/linux-fb/gdkselection-fb.c:
6330         Initial selection implementation.
6331
6332         * gtk/gtkselection.c:
6333         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6334         requestor in gtk_selection_request.
6335         
6336         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6337         Added gdk_selection_property atom.
6338
6339         * gdk/linux-fb/gdkprivate-fb.h:
6340         Export _gdk_selection_window_destroyed.
6341         Removed mask_off_x/y from GdkCursorPrivateFB.
6342         Removed hbearing, added top, left to PangoFBGlyphInfo.
6343
6344         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6345         Call _gdk_selection_window_destroyed
6346         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6347         the root window has been created.
6348         (static_dx_hack, static_dy_hack, compare_draw_rects,
6349         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6350         in region. They are already sorted. Instead just traverse them in
6351         reverse if draw_direction < 0.
6352         
6353         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6354         Double-clicks must be sent after the normal button_press.
6355         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6356         
6357         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6358         Pass _gdk_fb_screen_gc instead of NULL.
6359
6360         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6361         Initialize gdk_selection_property.
6362         (gdk_event_make): Remove unused code.
6363
6364         * gdk/linux-fb/gdkcursor-fb.c:
6365         Make the pixmap for the cursor the same size as the mask. Also remove
6366         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6367         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6368         Now the whole cursor is visible.
6369
6370         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6371         Fix bug where xdest+height instead of ydest+height was used
6372         to calculate if the source and dest overlapped. This fixes the
6373         redraw bug when the main window in testgtk was scrolled when
6374         partially covered by a tall window.
6375         Copy rectangles in region in order depending on draw_direction.
6376         Also moved the draw_direction flipping of start_y and end_y into
6377         the gc functions, as this might not be what all of them want.
6378         (gdk_fb_draw_lines): Support dashed lines.
6379         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6380         so that the text is positioned correctly (was 1 pixel high).
6381
6382         gdk/linux-fb/gdkgc-fb.c:
6383         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6384         all lines were drawn a pixel to short. Also checked the default of
6385         the rest of the values, and they're the same as X now.
6386
6387         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6388         Clean up pixel positioning of the glyphs. Just use bgy->top and
6389         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6390         to all divisions to get correct rounding behaviour.
6391
6392         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6393         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6394         Moved start_y/end_y flip into draw_drawable implementations.
6395         Flip also x rendering when draw_direction < 0.
6396         Remove unneccesary multiply with draw_direction.
6397
6398 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6399
6400         * docs/tutorial/gtk-tut.sgml:
6401           - get rid of gtk_toggle_button_toggled FUD
6402           - start DND section - needs work - based on:
6403                 http://wolfpack.twu.net/docs/gtkdnd/
6404
6405 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6406
6407         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6408         Correct calculation of font metrics. Now GtkEntrys have sane
6409         size.
6410
6411 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6412
6413         * gdk/gdktypes.h:
6414         Add new type GdkSpan
6415         
6416         * docs/reference/gdk/gdk-sections.txt,
6417         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6418         gdk/gdkregion.h:
6419         Implement and document gdk_region_spans_intersect_foreach.
6420
6421         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6422         Add new file gdkrender-fb.c which contains all core
6423         rendering code.
6424         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6425         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6426         (optimized rectangle fillers).
6427
6428         * gdk/linux-fb/gdkdrawable-fb2.c:
6429         Move all rendering code to gdkrender-fb.c.
6430         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6431         Use the new span intersection functions in gdk_fb_fill_spans.
6432         gdk_fb_draw_rectangle() clips filled rectangles and calls
6433         gc->fill_rectangle with the result.
6434         gdk_fb_fill_spans() gets extra argument "sorted".
6435
6436         * gdk/linux-fb/gdkevents-fb.c:
6437         Remove unused includes and defines.
6438         New function gdk_fb_get_time() to get correct time for events.
6439
6440         * gdk/linux-fb/gdkinput-ps2.c:
6441         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6442         Make sure to set the time of all events.
6443
6444         * gdk/linux-fb/gdkmain-fb.c:
6445         Use gdk_fb_get_time ().
6446
6447         * gdk/linux-fb/gdkprivate-fb.h:
6448         New virtual GC calls: fill_span & fill_rectangle.
6449         Export gdk_fb_get_time().
6450         gdk_fb_fill_spans() gets extra argument "sorted".
6451
6452         * gdk/linux-fb/mi*.c:
6453         Use GdkSpan instead of GdkRectangle.
6454         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6455         from XFree 4 source)
6456         
6457 2000-11-22    <jrb@redhat.com>
6458
6459         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6460         reversing the order in an if statement will do.  Doing so managed
6461         to make the treemodelsort half work.  Other half will follow after
6462         I get the insert function fully fixed.
6463
6464 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6465         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6466         more than 2 bits. Besides, I need to implement an evil hack. :)
6467
6468 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6469
6470         * docs/tutorial/gtk-tut.sgml: minor corrections
6471
6472 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6473         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6474           convert to and from relative path's and iters.
6475
6476         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6477           testing sorting functions a bit better.  Currently broken -- will
6478           fix in morning.
6479
6480 2000-11-20  Havoc Pennington  <hp@redhat.com>
6481
6482         * gtk/gtkwidget.c: Documented a bunch of functions in here
6483         (gtk_widget_realize): Warn if you try to realize
6484         a widget with no parent that isn't a toplevel
6485         (gtk_widget_intersect): return a gboolean
6486
6487 2000-11-20  Havoc Pennington  <hp@redhat.com>
6488
6489         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6490         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6491         scrolling to be implemented in GDK to finish. Also, right now
6492         we just size_allocate all children on every layout change,
6493         which is pretty lame. Test commented out of testtext.c, 
6494         until it works better.
6495
6496 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6497
6498         * gdk/linux-fb/gdkdrawable-fb2.c:
6499         Removed unused arguments from gdk_fb_drawable_get_pixel().
6500
6501         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6502         Renamed fidur specific mouse packet data in MouseDevice to
6503         generic. Used it in ps2 mouse handling code to avoid blocking
6504         reads.
6505
6506 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6507
6508         * demos/gtk-demo/main.c: Changed to have the list become
6509         non-italic when the demo window is destroyed through an external
6510         event (like a close button).  Doing so found three bugs in the
6511         widget.
6512
6513         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6514
6515         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6516         we actually set the cell.
6517
6518         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6519
6520         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6521         free a leaked path.  Thanks memprof.
6522
6523 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6524
6525         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6526         off-by-one error when destroying allocated segments
6527         on failure. (Elliot)
6528
6529 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6530
6531         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6532         memleaks found by Evan Martin.
6533
6534 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6535
6536         * Released 1.3.2
6537         
6538         * NEWS: Updates for 1.3.2
6539
6540 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6541
6542         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6543         but in general for window system specific events.
6544
6545         * gtk/gtk.def
6546         * gtk/makefile.mingw.in
6547         * gtk/makefile.msc.in: Update.
6548         
6549         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6550
6551 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6552
6553         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6554         distribute gtk.immodules.
6555
6556         * gtk/Makefile.am (install-data-local): Don't install the
6557         gtk.immodules file created for the uninstalled modules;
6558         instead run gtk-query-immodules after install
6559
6560 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6561
6562         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6563         -rpath to the right install location.
6564
6565         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6566         -export-dynamic.
6567
6568         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6569         properly.
6570
6571 2000-11-15  Havoc Pennington  <hp@pobox.com>
6572
6573         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6574         patch from Mikael Hermansson to temporarily stop blinking while
6575         the user is using the keyboard to type or navigate. 
6576
6577         Also, when blinking, stay on for longer than we stay off. Also,
6578         return from start_cursor_blink if !cursor_visible, to save
6579         checking that flag all over the place before we call
6580         start_cursor_blink.
6581
6582 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6583
6584         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6585         only contain a "fontset" line, which is now ignored.
6586
6587         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6588         double-click-to-select-word work.
6589         
6590 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6591
6592         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6593         Don't move back one char when we are actually at the end of the 
6594         paragraph.
6595
6596 2000-11-15  Robert Brady  <robert@suse.co.uk>
6597
6598         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6599         'o' < 'p'.
6600         
6601         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6602         bind_textdomain_codeset.
6603
6604         (gtk_init_check): Make the warning about translating default:LTR
6605         sterner.
6606         
6607 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6608
6609         * **/Makefile.am : remove unecessary rules for win32-specific
6610         config-substituted targets. If you want these rules, use
6611         --enable-maintainer-mode (called automatically by autogen.sh).
6612         Stops a lot of unneccessary make-time warnings.
6613
6614         * gtk/gtktext{layout,display}.c: Factor in total width as
6615         well as screen when figuring alignment for word-wrap as well as
6616         no wrap; this is necessary to handle lines that cannot be wrapped
6617         at all.
6618
6619 2000-11-15  Havoc Pennington  <hp@redhat.com>
6620
6621         * gtk/testtext.c: Implement essential color cycling feature
6622
6623 2000-11-15  Havoc Pennington  <hp@redhat.com>
6624
6625         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6626         when we invalidate the main window.
6627
6628         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6629         GtkTextView will now invalidate the side windows for us when text
6630         changes.
6631
6632 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6633
6634         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6635         unconditionally, since we may need to update the horizontal
6636         scrollbars even if the height didn't change.
6637
6638         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6639         the extra attrs, since some of them affect size.
6640
6641         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6642         x_offset correctly.
6643
6644 2000-11-15  Havoc Pennington  <hp@redhat.com>
6645
6646         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6647         don't move the first line out into the margin, instead move the
6648         whole paragraph in order to make space for the first line within 
6649         the margin
6650
6651 2000-11-15  Havoc Pennington  <hp@redhat.com>
6652
6653         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6654         xoffset in addition to yoffset, so horizontal scrolling doesn't
6655         break redraws
6656
6657 2000-11-15  Havoc Pennington  <hp@redhat.com>
6658
6659         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6660         from the cursor
6661         (render_layout_line): fix reversed test that caused weird
6662         underlines to get drawn
6663
6664 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6665
6666         * gdk/linux-fb/gdkprivate-fb.h:
6667         Fix debug macros.
6668         
6669 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6670
6671         * gdk/linux-fb/gdkprivate-fb.h:
6672         Added virtual functions set_pixel, get_color,
6673         fill_span and draw_drawable to the GC.
6674         Added global _gdk_fb_screen_gc to use instead of
6675         NULL when drawing to the screen.
6676         Added _gdk_fb_gc_calc_state() prototype.
6677
6678         * gdk/linux-fb/gdkgc-fb.c:
6679         Call _gdk_fb_gc_calc_state() on any gc state change.
6680
6681         * gdk/linux-fb/gdkglobals-fb.c:
6682         Add _gdk_fb_screen_gc
6683                 
6684         * gdk/linux-fb/gdkdrawable-fb2.c:
6685         _gdk_fb_gc_calc_state() calculates best functions
6686         for the GC state and depth.
6687         Moved bpp specialized code to separate functions.
6688         Added optimized 24 bpp AA draw_drawable.
6689
6690         * gdk/linux-fb/gdkevents-fb.c:
6691         Silence gcc warning.
6692
6693         * gdk/linux-fb/gdkimage-fb.c:
6694         Use _gdk_fb_screen_gc
6695
6696         * gdk/linux-fb/gdkwindow-fb.c:
6697         Init and use _gdk_fb_screen_gc
6698
6699         * gdk/linux-fb/mitypes.h:
6700         Remove unused types.
6701
6702 2000-11-14  Havoc Pennington  <hp@pobox.com>
6703
6704         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6705         to pixels
6706
6707 2000-11-14  Havoc Pennington  <hp@pobox.com>
6708
6709         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6710
6711         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6712         unknown char, no real reason we were using a variable. 
6713         Remove gtk_text_unknown_char variable. Fix all the text widget
6714         files accordingly.
6715
6716         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6717         since the Unicode spec seems to prefer that character for our
6718         purposes.
6719
6720 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6721
6722         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6723         value of g_getenv() isn't freeable, so g_strdup it.
6724
6725         * modules/input/inuktitut.c: Inuktitut input method.
6726
6727         * modules/input/Makefile.am: Build this.
6728         
6729 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6730
6731         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6732         of gtk programs.
6733
6734 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6735
6736         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6737         reversed > that was causing Home to go to end of previous line.
6738
6739         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6740         modified-keypresses (leave for bindings.)
6741
6742         * modules/input/Makefile.am: Remove useless -export-dynamic
6743         from module LDFLAGS.
6744
6745 2000-11-14  Havoc Pennington  <hp@redhat.com>
6746
6747         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6748         higher.
6749
6750         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6751         account. Also, render rise, underline, background, etc. for
6752         pixbufs as well as text. Also, draw underlines one pixel higher.
6753
6754         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6755         PangoAttribute for the rise, so it gets drawn properly. Also,
6756         add the GtkTextAppearance attribute for pixbuf/widget segments
6757         as well; we should go ahead and have rise, underline, background,
6758         stipple work for those
6759
6760         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6761         Pango
6762
6763 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6764
6765         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6766
6767         * gtk/gtk.def: Update.
6768
6769         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6770         included.
6771         (gtk_rc_get_im_module_file): Use run-time installation directory
6772         on Win32.
6773
6774         * gdk/win32/rc/gdk.rc: Remove.
6775         * gdk/win32/rc/gdk.rc.in: New file.
6776         * gdk/win32/rc/Makefile.am: New file
6777         * gdk/win32/Makefile.am: Corresponding changes.
6778
6779         * gtk/gtk.rc: Remove.
6780         * gtk/gtk-win32.rc.in: New file.
6781         * gtk/Makefile.am: Corresponding changes.
6782
6783         * configure.in: Corresponding changes.
6784
6785         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6786         has a built gtkcompat.h. Developers using CVS code on Win32 can
6787         hand-edit it from gtkcompat.h.in.
6788
6789         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6790         gtkcompat.h from gtkcompat.h.win32.
6791
6792 2000-11-14  Havoc Pennington  <hp@redhat.com>
6793
6794         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6795         to default to GDK_ACTION_MOVE if the drag is within a single
6796         widget. Defaults to GDK_ACTION_COPY between widgets.
6797
6798 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6799
6800         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6801
6802         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6803
6804         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6805         srcdir != builddir
6806
6807         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6808
6809         * configure.in (GTK_VERSION): Up to 1.3.2
6810
6811         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6812         gtkimcontextxim.h
6813
6814         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6815         missing doc comment.
6816
6817 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6818
6819         * modules/linux-fb/basic.c:
6820         Use the glib iconv wrappers.
6821
6822 2000-11-13  Havoc Pennington  <hp@pobox.com>
6823
6824         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6825         still more bugs.
6826
6827         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6828         scroll the GdkWindows before realization.
6829
6830 2000-11-13  Havoc Pennington  <hp@redhat.com>
6831
6832         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6833         where GC didn't always get updated properly
6834
6835         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6836         of fonts instead of setting the entire font
6837
6838         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6839         setting entire font
6840
6841         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6842
6843         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6844         a bunch of individually-settable font attributes. You can still 
6845         use the "font" and "font_desc" args, they just set all the font
6846         attributes at once.
6847
6848 2000-11-13 Elliot Lee <sopwith@redhat.com>
6849
6850         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6851
6852 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6853
6854         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6855         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6856
6857         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6858         work better.
6859
6860 2000-11-13  Havoc Pennington  <hp@redhat.com>
6861
6862         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6863         the module file.
6864
6865         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6866         dest->language
6867
6868         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6869         settings
6870
6871         * gtk/gtktextview.c: Implement object args and setters/getters for
6872         all the aspects of the GtkTextAttributes that are not set from
6873         GtkWidget attributes. This is spacing, justification, margins,
6874         etc.
6875
6876         (gtk_text_view_set_arg)
6877         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6878         args
6879         (gtk_text_view_class_init): Add args for justify, left_margin,
6880         right_margin, indent, and tabs
6881         
6882
6883         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6884         attribute properly
6885
6886         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6887         replace with indent attribute
6888
6889         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6890         PANGO_SCALE
6891
6892         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6893         rearranging code to do that
6894         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6895         i.e. don't subtract the top_margin first, just to keep
6896         all margin-futzing in one place.
6897
6898         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6899
6900         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6901         special case of last line, Pango now handles this itself.
6902         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6903         Y coordinate
6904         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6905         (find_display_line_above): wasn't moving the byte index as it
6906         iterated over lines, so always returned byte 0. Also, port to use
6907         PangoLayoutIter.
6908         (find_display_line_below): same problem as
6909         find_display_line_above. Also, port to use PangoLayoutIter.
6910
6911 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6912
6913         * gdk/linux-fb/*.[ch]:
6914         Massive reindent to gtk+ standard. My hands hurt.
6915
6916         * gdk/linux-fb/gdkcolor-fb.c:
6917         Move GdkColorPrivateFB from inherited to windowing_data
6918
6919         * gdk/linux-fb/gdkcursor-fb.c:
6920         _gdk_cursor_new_from_pixmap made static
6921
6922         * gdk/linux-fb/gdkdnd-fb.c:
6923         GdkDragContextPrivate moved to windowing_data
6924
6925         * gdk/linux-fb/gdkdrawable-fb2.c:
6926         Removed endian.h, use glib endianness macros instead
6927         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6928         and GDK_DRAWABLE_IMPL_FBDATA
6929
6930         * gdk/linux-fb/gdkfont-fb.c:
6931         Add empty gdk_font_load(). Needed for linking of Gtk+.
6932
6933         * gdk/linux-fb/gdkimage-fb.c:
6934         Removed endian.h, use glib endianness macros instead
6935         Moved GdkImagePrivateFB to windowing_data
6936         gdk_image_new_bitmap didn't always allocate enough
6937         memory.
6938
6939         * gdk/linux-fb/gdkinput-ps2.c:
6940         Added semi-working support for MS serial mice.
6941
6942         * gdk/linux-fb/gdkprivate-fb.h:
6943         s/GdkWindowPrivate/GdkWindowObject/
6944         Removed GdkWindowPrivate typedef
6945         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6946         Removed GDK_DRAWABLE_P
6947         Move GdkColorPrivateFB from inherited to windowing_data
6948         Moved GdkImagePrivateFB to windowing_data
6949
6950         * gdk/linux-fb/gdkvisual-fb.c:
6951         Removed some unused debug code.
6952
6953         * gdk/linux-fb/gdkwindow-fb.c:
6954         Use stock cursors instead of including X headers.
6955         s/GdkWindowPrivate/GdkWindowObject/
6956
6957         * gdk/linux-fb/mitypes.h:
6958         Removed unused types.
6959
6960         * modules/linux-fb/basic.c:
6961         Use the pango fribidi wrappers.
6962
6963 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6964
6965         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6966         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6967         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6968         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6969         GEqualFunc where applicable.
6970         
6971         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6972         pango_font_description_equal as changed in pango.
6973         
6974         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6975
6976         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6977
6978         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6979
6980         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6981
6982         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6983
6984         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6985
6986         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6987         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6988
6989         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6990         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6991
6992 2000-11-12  Havoc Pennington  <hp@pobox.com>
6993
6994         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6995         dir to datadir/gtk+-2.0/demo
6996
6997         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6998         sorts of text widget and Pango font bugs. Urgh.
6999
7000         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7001
7002         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7003         tree that you should double click to see the demo. Fix 
7004         types of variables to reflect changed return values from 
7005         GtkTreeStore and GtkTreeViewColumn constructors.
7006
7007         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7008         newly-created buffer to prepare for GObject semantics
7009
7010         * gtk/testtext.c: don't leak the buffer with GObject semantics
7011
7012         * gtk/testtextbuffer.c: ditto
7013         
7014 2000-11-12  Havoc Pennington  <hp@pobox.com>
7015
7016         Rename this testgtk to gtk-demo to avoid confusion, and 
7017         install it so people can use it as a supplement to 
7018         the documentation.
7019         
7020         * demos/gtk-demo: Moved from demos/testgtk
7021
7022         * demos/testgtk: Removed
7023
7024         * configure.in: make Makefile in gtk-demo
7025         
7026         * demos/gtk-demo/Makefile.am: Install sample source to 
7027         datadir/gtk-demo (maybe there's a better place?), and 
7028         rename the binary to gtk-demo
7029         
7030         * demos/gtk-demo/main.c (load_file): Load installed sample
7031         source if source isn't found in pwd.
7032
7033 2000-11-09  Havoc Pennington  <hp@pobox.com>
7034
7035         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7036         argument to set the char displayed when visibility == FALSE
7037         (gtk_entry_create_layout): If !entry->visible, replace 
7038         all chars with the "invisible char"
7039
7040         * gtk/testgtk.c: Test the invisible_char deal
7041         
7042 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7043
7044         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7045         can't get a native font in the right encoding.
7046
7047 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7048
7049         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7050         respectively.
7051
7052 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7053
7054         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7055         Fix warning when moving between paragraphs.
7056
7057         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7058         delete => delete_from_cursor, insert => insert_at_cursor
7059
7060 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7061
7062         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7063
7064         * modules/input/imthai-broken.c: A Thai input method for use if
7065         Thai keys are really generating Latin1 keysyms.
7066
7067         * modules/input/Makefile.am: Build these.
7068
7069 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7070
7071         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7072         g_filename_{to,from}_utf8 now takes an extra parameter.
7073
7074         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7075         strftime into UTF-8.
7076
7077         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7078         calendars.
7079
7080         (gtk_calendar_paint_day_names): Draw day names in the right 
7081         place.
7082         
7083 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7084
7085         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7086         problem with using result of g_get_charset() backwards -
7087         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7088
7089         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7090         negative min_width/height and max_width/height to
7091         mean "requisition"; this allows setting a window
7092         to be user-resizable in only one direction easily.
7093
7094         * gtk/testgtk.c (create_main_window): Remove hard-coded
7095         usize - set a default size in the vertical direction.
7096
7097 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7098
7099         * gtk/gtkrange.c: Add some missing casts. Support 
7100         2 and 3 button clicks on the arrows to mean 
7101         "move by pages" and "jump to end". (Like gtkspinbutton)
7102
7103 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7104
7105         * gdk/win32/makefile.msc : reflect build module changes
7106
7107         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7108         from GdkPixmap*, cast implementation member instead.
7109
7110         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7111         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7112         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7113         more Gdi functions return value checking. 
7114         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7115         GdkImagePrivateWin32 *.
7116
7117         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7118         menus useable again. Add #pragma message to keep reminded on this issue.
7119         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7120         windows. This allows to enable backing store on Win32!
7121
7122         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7123         in drawable is of impl type. Correct specific type checks appropriate.
7124  
7125         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7126         GDK_WINDOW_DESTROYED before allocating new resources.
7127
7128         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7129
7130         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7131         (gdk_window_foreign_new) initialize parent handle.
7132         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7133
7134         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7135         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7136         problems (e.g. main buttons in testgtk). 
7137
7138 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7139
7140         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7141         gtk_widget_activate for GDK_Return.
7142
7143         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7144         of preedit cursor position.
7145
7146 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7147
7148         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7149         static.
7150
7151 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7152
7153         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7154         out support for multiple locales; that simple doesn't
7155         work reliably with current Xlib
7156
7157         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7158         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7159         Add support for positioning the cursor within the preedit string.
7160
7161 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7162
7163         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7164         at XIM input method module.
7165
7166         * gtk/gtktextview.c: Check for bindings after passing
7167         events to im context filter.
7168
7169 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7170
7171         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7172         empty attribute lists properly.
7173
7174 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7175
7176         * gtk/queryimmodules.c (main): Return non-zero exit
7177         status if errors were encountered querying any
7178         modules.
7179
7180         * modules/input/Makefile.am (moduledir): remove
7181         leftover bin program target.
7182
7183         * docs/make-todo: Fix typo in error message.
7184
7185 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7186
7187         * configure.in: Add modules/input/Makefile
7188
7189 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7190
7191         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7192         don't include gtkthemes.h.
7193
7194         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7195         to point
7196
7197         * gtk/Makefile.am: Add new .c and .h files, build 
7198         gtk-query-immodules and use it to create a gtk.immodules
7199         file for use of test programs.
7200
7201         * gtk/gtkpreview.c: remove extra blank line.
7202
7203 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7204
7205         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7206         Add the ability to add extra tables beyond the default
7207         one, and also the ability to have compose sequences 
7208         that are prefixes of other compose sequences. 
7209
7210         * gtk/gtkimcontextsimple.c: Export a preedit string which
7211         consists of possible candidates for keystrokes that have
7212         been entered but not yet committed.
7213
7214         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7215         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7216
7217         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7218         Add a function to add input-method switching menu items
7219         to a menu.
7220
7221         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7222         when switching input methods.
7223
7224         * gtk/gtkimcontextsimple.[ch]: Change the format of
7225         the compose table to allow compose tables of different
7226         lengths / sequence.
7227
7228 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7229
7230         * gtk/gtkimmodule.[ch]: Support routines for loading
7231         GtkIMContext implementations dynamically at runtime.
7232
7233         * modules/input/imcyrillic-translit.c: A sample input
7234         method (based on GtkIMContextSimple with an extra table),
7235         which demonstrates preedit strings and the module
7236         system for input modules
7237
7238         * gtk/queryimmodules.c: Program to query the available
7239         input modules and write the results into a file.
7240          
7241         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7242         extra config options "im_module_file" (cache file for
7243         input method modules), and "im_module_path" - path
7244         to look for modules when generating cache file.
7245
7246         This doesn't scale.
7247
7248 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7249
7250         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7251         generic code from gtkthemes into a new abstraction
7252         GtkModule which has the logic for implementing
7253         a loadable module which implements a number of 
7254         GObject types.
7255
7256 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7257
7258         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7259         a class into an interface  
7260         
7261         * gtk/gtkoldeditable.[ch]: Move the old editable
7262         implementation into here, so legacy widgets can
7263         still rely on the implemenation. GtkOldEditable
7264         exports GtkEditable. Make selection handling
7265         code use new text conversion functions (and
7266         handle UTF-8 as a side-effect). Use GtkClipboard
7267         for CLIPBOARD.
7268
7269         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7270         Adopt to match above changes.
7271
7272         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7273         avoid GtkOldEditable implementation. Restructure
7274         to reduce number of places that modify state directly.
7275         Move to GtkBindingSet. Display the preedit string.
7276         Queue recomputation of PangoLayout and scroll position
7277         to improve effiency of doing complex changes naively.
7278         Add a menu with cut/copy/paste and input method selection.
7279
7280 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7281
7282         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7283         to set preedit string and attributes; display preedit string by
7284         inserting string and attributes at cursor when creating the
7285         GtkTextLineDisplay.
7286
7287         * gtk/gtktextlayout.c: Move all conversions between byte
7288         positions in PangoLayout and GtkTextIter into new functions
7289         line_display_iter_to_index/index_to_iter that properly
7290         handle the preedit string.
7291
7292         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7293         it to return const char * (eventually will end up
7294         as GCONST char *, most likely.)
7295
7296         * gtk/gtktextview.[ch]: Handle the preedit string, call
7297         gtk_im_context_reset() as necessary, add a menu to switch
7298         input methods.
7299         
7300         * gtk/gtktextlayout.[ch]: Remove useless
7301         gtk_text_layout_get_log_attrs() function.
7302
7303 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7304
7305         * gdk/gdk.def
7306         * gtk/gtk.def: Update.
7307
7308         * gdk/win32/*.c: Add last argument to g_type_register_static()
7309         calls.
7310
7311         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7312
7313         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7314         generated by older wheel mouse drivers. Get the correct y
7315         coordinate from WM_MOUSEWHEEL messages.
7316
7317         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7318         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7319         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7320         Debugging functions.
7321
7322         * gdk/win32/gdkprivate-win32.h: Declare them.
7323
7324         * gdk/win32/gdkinput-win32.h: Add declaration for
7325         gdk_input_window_destroy().
7326
7327         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7328
7329 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7330
7331         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7332         function to help handle keeping things in sync.
7333
7334 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7335
7336         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7337         BOXED marshallers.
7338
7339         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7340         (gtk_list_store_class_init): use the new BOXED marshallers.
7341
7342         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7343         new_with_values to new_with_types.
7344         (gtk_tree_store_get_column_type): add this.
7345         (gtk_tree_store_class_init): use the new BOXED marshallers.
7346
7347         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7348         mirror some POINTER marshallers.
7349
7350 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7351
7352         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7353         allow more interesting iterators.  Also, made the lifecycle of
7354         iterators more explicit.
7355
7356         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7357
7358         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7359         types.
7360
7361 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7362
7363         * demos/testgtk/menus.c:
7364         Changes to make the new testgtk compile after
7365         gtk_menu_append was removed.
7366
7367         * gdk/linux-fb/gdkdrawable-fb2.c
7368         (gdk_fb_get_depth, gdk_fb_get_visual,
7369         gdk_drawable_impl_fb_class_init): Implement
7370         these drawable functions. Now GtkImages work again.
7371
7372         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7373
7374         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7375         
7376         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7377         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7378         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7379         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7380
7381 2000-11-08  Havoc Pennington  <hp@pobox.com>
7382
7383         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7384         visible_set args, don't know where these had gone, I thought they
7385         used to be there
7386
7387         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7388         now we can test the feature and see that it's totally broken.
7389
7390 2000-11-08  Havoc Pennington  <hp@pobox.com>
7391
7392         Make DND copy pixbufs and tags when source and target share a 
7393         tag table.
7394         
7395         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7396         in-process GTK_TEXT_BUFFER_CONTENTS target
7397         (gtk_text_view_drag_data_received): Paste from
7398         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7399
7400 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7401
7402         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7403         API changes.
7404
7405         * gtk/gtkmenu.c: Add support for scrolling menus.
7406         Remove gtk_menu_append/prepend/insert, these have been moved to
7407         gtkcompat.h as #defines.
7408
7409         * gtk/gtkcompat.h.in:
7410         Add compatibility #defines for gtk_menu_append/prepend/insert
7411
7412         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7413         GtkMenuPositionFunc gets an extra argument push_in.
7414         gtk_menu_append/prepend/insert removed.
7415         
7416         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7417         positioning behaviour to fit to scrolling menus.
7418
7419         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7420         into menuitem->submeny. That is wrong, and broke torn
7421         off submenus of torn off menus, since they were unrealized
7422         when the first menu was unrealized.
7423
7424         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7425         gtk_menu_shell_select_item() since these need to be overridden in
7426         GtkMenu.
7427
7428         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7429         positioning behaviour to fit to scrolling menus.
7430         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7431         the current item so that it is prelighted when the menu pops up.
7432         This is a workaround to the fact that the menu doesn't get the
7433         initial enter event (due to grabs).
7434
7435         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7436         s/gtk_menu_append/gtk_menu_shell_append/
7437
7438         * gtk/gtknotebook.c:
7439         s/gtk_menu_insert/gtk_menu_shell_insert/
7440
7441         * gtk/testgtk.c (create_menu, create_menus):
7442         Create the first menu with 50 items so that menu scrolling
7443         can be tested.
7444         
7445         
7446         Patch from Jonathan Blandford  <jrb@redhat.com>
7447
7448         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7449         system to handle size requests.  First, we ask what the size of
7450         the toggle is.  Then, when allocating the size, we allocate the
7451         toggle_size first.  This way we can have multiple menu-item
7452         classes w/o needing a seperate class for each.
7453
7454         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7455         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7456
7457         * gtk/gtkcheckmenuitem.c
7458         (gtk_check_menu_item_toggle_size_request): New function to handle
7459         the toggle size-request.
7460
7461 2000-11-07  Havoc Pennington  <hp@redhat.com>
7462
7463         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7464         Half-ass somewhat fix this function, so that scrolling to the
7465         insertion point works. Pango hacking is in the future to really
7466         fix it.
7467
7468         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7469         length of data, no longer used.
7470
7471         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7472         method contents in here, get rid of destroy method
7473         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7474         that were backward. Remove debug spew.
7475         (cut_or_copy): Make the clipboard work with insert_range to
7476         preserve tags and pixbufs, not just the primary selection.
7477
7478 2000-11-07  Havoc Pennington  <hp@redhat.com>
7479
7480         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7481         to gtk_text_mark_get_visible
7482
7483         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7484         bug that was generating an invalid iterator
7485
7486         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7487         ensure_char_offsets() in front of code placing the iter in an
7488         invalid state.
7489
7490         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7491         make override_location arg const
7492         (paste): Replace the selection if we paste into the 
7493         current selection
7494
7495         * gtk/gtkselection.h: Remove "GtkSelectioData"
7496         (struct _GtkSelectionData): move the definition here.
7497
7498         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7499         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7500
7501         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7502
7503         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7504         (gtk_text_buffer_insert_range_interactive): implement
7505         (gtk_text_buffer_get_tags): Remove, replaced by
7506         gtk_text_iter_get_tags()
7507
7508         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7509         limit parameter, to avoid infinite linear scan.
7510         (gtk_text_iter_backward_search): Add search limit
7511         (gtk_text_iter_forward_find_char): Add search limit
7512         (gtk_text_iter_backward_find_char): Add search limit
7513
7514 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7515
7516         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7517         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7518         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7519         gdk/linux-fb/gdkwindow-fb.c:
7520         use g_object_new() instead of g_type_create_instance() which
7521         is a private function for fundamental type implementations.
7522
7523         * gdk/linux-fb/gdkinput-ps2.c:
7524         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7525         instead just store the current modifier state. Add a (somewhat broken)
7526         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7527         Rename exported function gdk_input_ps2_get_mouseinfo to
7528         gdk_input_get_mouseinfo.
7529
7530         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7531         gdk/linux-fb/gdkwindow-fb.c:
7532         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7533         
7534
7535 2000-11-02  Havoc Pennington  <hp@redhat.com>
7536
7537         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7538         use stock buttons. Should be 100% source compatible, appropriate
7539         filesel fields now point to dialog->vbox and dialog->action_area.
7540         On the bizarre side, dialog->action_area and filesel->action_area
7541         are not the same widget.
7542         (gtk_file_selection_init): Put some padding around the selection
7543         entry, so it isn't touching the GtkDialog separator.    
7544
7545         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7546         use stock buttons, etc. Should also be source compatible.
7547         Set the dialog default title in _init not _new().
7548         
7549         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7550         Use stock buttons; don't put a button box inside the existing
7551         dialog button box. Don't bother with push/pop colormap anymore.
7552
7553         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7554         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7555         for message dialog, and necessary for the font selection and color
7556         selection with help and apply buttons.
7557         
7558         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7559         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7560         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7561         between buttons, put less padding around the action area.
7562         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7563         This will also exit the loop if the widget is hidden.
7564         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7565         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7566         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7567         special-case delete event.
7568
7569         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7570         formatting
7571         
7572 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7573
7574         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7575         button to temporarily disable position recording in the
7576         "saved position" test.
7577
7578 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7579
7580         * gtk/gtkthemes.c: added compat code that temporarily implements
7581         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7582         going to be revamped by owen's upcoming GtkModule patches, but
7583         untill then people want gtk to build, right? ;)
7584
7585 2000-11-04  Havoc Pennington  <hp@pobox.com>
7586
7587         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7588         list
7589
7590         * docs/Changes-2.0.txt: Add note about
7591         gtk_container_get_toplevels()
7592
7593         * gtk/gtktextview.h: formatting
7594         
7595         * gtk/gtktextview.c: don't start descriptions with "Returns",
7596         confuses gtk-doc
7597
7598 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7599
7600         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7601         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7602
7603 2000-11-03  Havoc Pennington  <hp@redhat.com>
7604
7605         * gtk/gtktexttagtable.c: Docs
7606         (gtk_text_tag_table_size): return a signed int
7607
7608         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7609         (gtk_text_tag_event): make the event_object a GObject
7610
7611         * gtk/gtktextview.c: Write API docs for all functions.
7612
7613         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7614         for gtk_text_view_get_window_type() called on one of the private
7615         windows.
7616
7617         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7618         directly, call get_buffer() which demand-creates a default
7619         buffer. So gtk_text_view_new() can be used to create a view with a
7620         default buffer in it, if you just want an empty text box users can
7621         put data in. Useful for GUI builders also.
7622
7623 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7624
7625         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7626         the charset encodign portion MUST be in lowercase.
7627         * gtk/gtkrc.az: added file for Azeri language
7628
7629 2000-11-03  Havoc Pennington  <hp@redhat.com>
7630
7631         Get widgets working on the btree/buffer side. Display of them 
7632         still doesn't work.
7633         
7634         * gtk/gtktextview.c: start implementing child widget stuff
7635
7636         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7637
7638         * gtk/gtktextlayout.c: handle embedded widgets
7639
7640         * gtk/gtktextdisplay.c: handle embedded widgets
7641
7642         * gtk/gtktextchild.c: Implement all the child anchor goo
7643
7644         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7645         function
7646
7647         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7648         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7649         creating a child anchor or a pixbuf segment.
7650         (gtk_text_btree_create_child_anchor): new function
7651         (gtk_text_btree_unregister_child_anchor): new function
7652
7653         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7654         allocate_child signal on GtkTextLayout
7655
7656         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7657         values
7658         (gtk_text_iter_get_child_anchor): new function
7659
7660         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7661         default handler for the changed signal, which calls
7662         gtk_text_buffer_set_modified(), instead of just always emitting
7663         changed then calling set_modified() manually. I guess this is
7664         maybe more flexible. It seems logical.
7665
7666 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7667
7668         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7669         now.
7670
7671         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7672
7673 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7674
7675         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7676         been marked static.
7677
7678 2000-11-02  Havoc Pennington  <hp@redhat.com>
7679
7680         * gtk/testgtk.c (create_labels): had a test backward
7681
7682         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7683         fields, so the dest GC ends up with the correct clip origin, 
7684         etc. Fixes a bug where colored labels didn't redraw 
7685         properly.
7686
7687 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7688
7689         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7690         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7691         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7692         Add last argument to t_type_register_static call.
7693         
7694         * gdk/linux-fb/gdkdrawable-fb2.c:
7695         Add last argument to t_type_register_static call.
7696         export the get_image drawable virtual function.
7697
7698         * gdk/linux-fb/gdkimage-fb.c:
7699         Add last argument to t_type_register_static call.
7700         rename gtk_image_get to _gdk_fb_get_image and
7701         export it for use by gdkdrawable-fb2.
7702
7703         * gdk/linux-fb/gdkprivate-fb.h:
7704         export _gdk_fb_get_image.
7705
7706         * gdk/linux-fb/gdkselection-fb.c:
7707         Add new api call stubs.
7708
7709         * gtk/Makefile.am:
7710         Missing ( in linux-fb part.
7711
7712         * modules/linux-fb/Makefile.am:
7713         Must link with gdk_pixbuf or get unresolved symbol.
7714
7715 2000-11-01  Havoc Pennington  <hp@pobox.com>
7716
7717         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7718         GTK_TYPE_TEXT_ITER and BOXED marshallers
7719
7720         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7721
7722         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7723         
7724         * gtk/gtk-boxed.defs: add GtkTextIter
7725
7726         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7727         properly use OBJECT and BOXED
7728
7729 2000-11-01  Havoc Pennington  <hp@redhat.com>
7730
7731         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7732
7733         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7734         before returning it. 
7735         
7736 2000-11-01  Havoc Pennington  <hp@redhat.com>
7737
7738         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7739         Clip the rectangle to be rendered to the drawable, since
7740         get_from_drawable() requires a region within the drawable
7741
7742 2000-11-01  Havoc Pennington  <hp@redhat.com>
7743
7744         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7745         from coordinates.
7746
7747 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7748
7749         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7750         it isn't NULL.
7751
7752 2000-11-01  Havoc Pennington  <hp@pobox.com>
7753
7754         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7755         on a label
7756         (gtk_label_finalize): unref the attr list if any.
7757
7758         * gtk/testgtk.c (create_get_image): close test on second click
7759         (make_message_dialog): close dialog if it exists
7760
7761         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7762
7763         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7764         gdk-pixbuf
7765
7766         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7767         from Pango markup format
7768         (gtk_label_set_markup_with_accel): ditto but with accelerator
7769         parsing
7770
7771         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7772
7773         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7774         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7775         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7776         call gdk_window_get_origin().
7777
7778         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7779         implement GDK_PIXBUF_ALPHA_FULL
7780         
7781 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7782
7783         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7784         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7785         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7786         multiple handlers respectively, instead of only treating the
7787         first handler found (bug reported by owen).
7788
7789 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7790
7791         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7792
7793         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7794
7795         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7796         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7797         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7798
7799         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7800         widget.  Needs writing someday.
7801
7802         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7803         the docs.
7804
7805 2000-10-30  Havoc Pennington  <hp@redhat.com>
7806
7807         * gtk/gtktextview.h, gtk/gtktextview.c:
7808         Rename delete_at_cursor delete_from_cursor, and 
7809         move to move_cursor.
7810
7811 2000-10-30  Havoc Pennington  <hp@redhat.com>
7812
7813         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7814         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7815         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7816         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7817         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7818         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7819         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7820         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7821         gtktexttypes.h, gtktextview.c, gtktextview.h:
7822
7823         Massive reindentation and reformatting. Arg alignment and comments
7824         still need fixing in various places.
7825
7826 2000-10-30  Havoc Pennington  <hp@redhat.com>
7827
7828         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7829         to be named insert_at_cursor and delete_at_cursor so C++ can
7830         handle them.
7831
7832 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7833
7834         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7835         to get a double directory separator in case the home directory
7836         ends with one. This would cause trouble especially on Windows,
7837         where the path will be confused with the syntax for an an UNC
7838         (network share) path \\server\share\path.
7839         (gtk_rc_add_initial_default_files): Ditto.
7840
7841 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7842
7843         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7844
7845         * gtk/gtktextview.c: Use correct marshallers.
7846
7847 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7848
7849         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7850         use new iter stuff, and added all the appropriate signals et al.
7851
7852         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7853         code is internal to gtk only.
7854
7855 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7856
7857         * gtk/gtk.def
7858         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7859         glib-genmarshal etc.
7860
7861 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7862
7863         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7864         parallel builds.
7865
7866 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7867
7868         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7869
7870 2000-10-27  Robert Brady  <robert@suse.co.uk>
7871
7872         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7873         en_GB (British), ia (Interlingua).
7874
7875 2000-10-26  Havoc Pennington  <hp@redhat.com>
7876
7877         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7878
7879         Fixed output of:
7880         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7881         
7882         * gtk/gtktextsegment.c (char_segment_new): rename
7883         (_char_segment_new_from_two_strings): rename
7884         (_toggle_segment_new): rename
7885         
7886         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7887         (make_clipboard_widget): make it static
7888         (text_get_func): static
7889         (text_clear_func): static
7890
7891         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7892         static
7893         (hex_changed): make it static
7894         (hsv_changed): make it static
7895         (opacity_entry_changed): make it static
7896
7897         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7898         (toggle_segment_check_func): rename with _gtk
7899
7900         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7901         (_widget_segment_new): rename
7902         (_widget_segment_add): rename
7903         (_widget_segment_remove): rename
7904         (_widget_segment_ref): rename
7905         (_widget_segment_unref): rename
7906
7907         * gtk/gtktextmark.c (_mark_segment_new): Rename
7908         _gtk_mark_segment_new   
7909
7910 2000-10-26  Havoc Pennington  <hp@redhat.com>
7911
7912         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7913         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7914         types
7915
7916         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7917         marshaller types
7918
7919         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7920         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7921         license on these files.
7922
7923         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7924         work.
7925
7926         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7927         runtime random number different for each tree, instead of 
7928         a constant I made up.
7929
7930 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7931
7932         * gtk/Makefile.am: buncha cleanups, kludged build sources
7933         dependencies with a Makefile: oldest-source-stamp dependancy
7934         for the moment. automake is really fighting us here, with
7935         intentionally not allowing user-defined rules or dependancies
7936         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7937
7938         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7939         to public headers. tehy have a comment stating that they are
7940         "semi-public" aren't included by gtk.h and if enums popup there,
7941         they can be /*< skip >*/-ed.
7942
7943         * gtk/gtktextlayout.h: 
7944         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7945         added LGPL... <SIGH>
7946
7947 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7948
7949         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7950         GtkTreeIter.  Added iterators everywhere.
7951
7952         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7953
7954         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7955
7956         * gtk/gtktreestore.c: Changed to use the iterators.
7957
7958         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7959         iterators tomorrow.
7960
7961         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7962         iterators tomorrow.
7963
7964         * gtk/treestoretest.c: Changed to use iterators.
7965
7966         * demos/testgtk/main.c: Moved to use the new iterator system.
7967
7968 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7969
7970         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7971         localization misbehaviour.
7972
7973         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7974         a useless type without copy/free.
7975
7976         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7977         of GTK_TYPE_CTREE_NODE.
7978
7979 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7980
7981         * gtk/gtksignal.c:
7982         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7983         applicable.
7984
7985         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7986         gtk_selection_data_copy and gtk_selection_data_free
7987         do GtkSelectionData work as params in signals.
7988
7989 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7990
7991         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7992         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7993         couldn't they at least give it a non-standard name?
7994         
7995         * gtk/gtktextlayout.c: arg! yet another implementation of
7996         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7997
7998         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7999         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8000         home. now i know this _is_ a conspiracy.
8001
8002         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8003         ::state-changed.
8004
8005         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8006         (gtk_accel_group_create_add): marshaller signature fixups.
8007
8008         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8009         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8010
8011         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8012         anymore.
8013
8014 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8015
8016         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8017         due to the signal system changes, it wouldn't build currently. to
8018         be fixed soon.
8019
8020         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8021
8022         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8023         so it needs gtk_marshal_VOID__ENUM() instead of
8024         gtk_marshal_NONE__UINT().
8025
8026         * gdk/gdk*.c: adapted type registration functions.
8027
8028         * gtk/gtkbindings.c:
8029         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8030         gone.
8031
8032         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8033
8034         * gtk/gtkobject.c:
8035         (gtk_object_destroy):
8036         (gtk_object_shutdown): fixed recursion guards. basically we have to
8037         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8038         is called during ::destroy, and avoid recursion there.
8039
8040         * gtk/gtktypeutils.c:
8041         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8042         boxed_copy/boxed_free. this needs a more general solution based on a
8043         publically installed code-generator utility.
8044
8045         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8046         glib's gobject has support for that now.
8047         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8048
8049 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8050
8051         * gtk/gtksignal.[hc]:
8052         * gtk/gtkmarshal.[hc]:
8053         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8054         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8055         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8056         care of that.
8057
8058         * *.c: marshaller name fixups.
8059
8060         * gtk/gtkmarshal.list: added a comment briefing the format.
8061
8062 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8063
8064         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8065         compatibility macros here now. more specifically, most of
8066         the API is preserved (yes, _most_, nonwithstanding the
8067         following exceptions listed, the API is stil lHUGE ;)
8068         things that got removed completely:
8069         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8070         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8071         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8072         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8073         gtk_signal_remove_emission_hook().
8074         non-functional functions variants:
8075         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8076         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8077         not supported anymore.
8078         (gtk_signal_compat_matched): new internal function to aid
8079         implementation of the compatibility macros, it  provides
8080         functionality to block/unblock/disconnect handlers based
8081         on func/data.
8082
8083         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8084
8085         * *.c: adaptions to new type registration API signatures.
8086
8087 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8088
8089         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8090
8091 2000-10-25  Robert Brady  <robert@suse.co.uk>
8092
8093         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8094         gdk_property_delete): If window == NULL, assume the root window.
8095         (restoring the behaviour that was in 1.2).
8096         
8097         * gtk/testtext.c (save_buffer): Allow creation of new files when
8098         saving.
8099
8100         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8101         calls to read().
8102
8103 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8104
8105         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8106
8107         * gdk/win32/gdkdrawable-win32.c
8108         * gdk/win32/gdkimage-win32.c
8109         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8110         X11 backend.
8111
8112         * gdk/win32/gdkcc-win32.c
8113         * gdk/win32/gdkcolor-win32.c
8114         * gdk/win32/gdkfont-win32.c
8115         * gdk/win32/gdkinput-win32.c
8116         * gdk/win32/gdkmain-win32.c
8117         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8118
8119 2000-10-24  Havoc Pennington  <hp@redhat.com>
8120
8121         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8122         it a static function
8123
8124         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8125         redraw text when a tag is applied to it.
8126
8127         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8128         (gtk_text_tag_affects_nonsize_appearance): private functions to
8129         see if a tag requires various kinds of redraw/layout to be queued
8130         up.
8131
8132         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8133
8134         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8135         at the start of the buffer, so search works by default
8136
8137         * gtk/gtktextiter.c (lines_match): init match_start always
8138
8139         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8140         function, get iter at a line + a byte index
8141
8142         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8143         to set byte position within a line
8144         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8145
8146 2000-10-23  Havoc Pennington  <hp@redhat.com>
8147
8148         * gtk/testtext.c: Re-enable the "find" dialog
8149
8150         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8151         
8152         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8153         the arguments to gdk_draw_drawable were in the wrong order
8154         (gdk_window_paint_init_bg): This function was ignoring the
8155         init_region, instead of clipping to it, so the entire backing
8156         pixmap was cleared on every begin_paint()
8157         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8158         was in here again, the loop kept using the same GtkWindowPaint
8159         over and over.
8160         (gdk_window_begin_paint_region): Fix a bug where we had two
8161         x_offset instead of x_offset and y_offset
8162
8163         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8164         before we get the image.
8165         (gdk_draw_drawable): get the composite before we draw the drawable.
8166         (gdk_drawable_real_get_composite_drawable): default
8167         get_composite_drawable implementation that returns the drawable 
8168         itself
8169
8170         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8171         get_composite_drawable virtual function
8172
8173         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8174         list-walking bug
8175
8176         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8177         make this work if the source drawable is a GdkDrawableImplX11
8178         instead of a public drawable type. This is really broken; the
8179         problem is that GdkDrawable needs a virtual method get_xid(), but
8180         of course that doesn't work in practice. Enter RTTI.
8181
8182         Also, improve mismatched depth message.
8183
8184         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8185         GdkPixmap
8186
8187         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8188         install _gdk_x11_get_image as our implementation of get_image
8189         
8190         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8191         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8192
8193         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8194         gdk_drawable_get_image
8195
8196         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8197
8198         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8199         get_image
8200
8201         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8202         trailing semicolon after for loop
8203
8204 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8205
8206         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8207         where font_desc for widget's context lagged widget's font_desc by
8208         one step.
8209
8210 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8211
8212         * gdk/win32/gdkgc-win32.c
8213         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8214
8215         * gtk/makefile.mingw.in
8216         * gtk/gtk.def: Updates.
8217
8218         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8219         library.
8220
8221         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8222
8223         * gtk/makefile.msc: Remove
8224
8225         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8226
8227         * gtk/Makefile.am: Add it.
8228
8229         * configure.in: Generate it.
8230
8231         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8232         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8233         something even if not implemented, to satisfy picky MSVC.
8234
8235         Patches by Hans Breuer:
8236         
8237         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8238         SetBkMode() and SetTextAlign() before calling
8239         pango_win32_render().
8240
8241         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8242         Set hcliprgn to NULL after destroying it.
8243         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8244
8245         * gdk/win32/gdkgeometry-win32.c
8246         (_gdk_windowing_window_queue_antiexpose): More effective
8247         implementation.
8248
8249         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8250         depth as default, not the visual's.
8251
8252         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8253         against empty title.
8254
8255         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8256         IMAGE_PRIVATE_DATA.
8257
8258         * gdk/win32/gdkimage-win32.c: Use it.
8259
8260 2000-10-22  Robert Brady  <robert@suse.co.uk>
8261
8262         * configure.in: Check for bind_textdomain_codeset
8263
8264         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8265         present, make use of it.
8266
8267         Add a translatable string "default:LTR" which, if translated
8268         to "default:RTL", will cause the default direction to be
8269         Right-to-Left.
8270
8271         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8272         direction if marked as flippable.
8273
8274         * gtk/gtkhscale.c: Mark widget as flippable.
8275         
8276 2000-10-04  Havoc Pennington  <hp@redhat.com>
8277
8278         * gtk/testgtk.c (create_buttons): create some stock buttons
8279         with the default accel group
8280         (create_image): test some new GtkImage features
8281         (make_message_dialog): test GtkMessageDialog
8282         (create_modal_window): fix someone's bizzarro indentation
8283
8284         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8285         GTK_WIN_POS_CENTER_ON_PARENT. 
8286         Add "destroy with parent" setting, which means the window goes
8287         away with its transient parent.
8288         (gtk_window_get_default_accel_group): get the default accel group
8289         for the window.
8290         (gtk_window_set_destroy_with_parent): set/unset destroy with
8291         parent flag
8292         (gtk_window_read_rcfiles): invalidate icon set caches
8293         after reloading rcfiles 
8294
8295         * gtk/gtkenums.h (GtkWindowPosition): add
8296         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8297         on its parent window when the dialog is mapped for the first time.
8298
8299         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8300         a simple message dialog class
8301         
8302         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8303         handler to emit response signal, and maybe later it would
8304         honor a hide_on_delete flag - though that isn't there yet.
8305         Set border width on the vbox to 2, so we get some padding.      
8306         Use a button box for the action area.
8307         (gtk_dialog_key_press): synthesize a delete event if Esc
8308         is pressed and the GtkWidget key press handler didn't 
8309         handle the escape key.
8310         (gtk_dialog_new_with_buttons): new function creates a dialog
8311         with some default buttons in it.
8312         (gtk_dialog_add_action_widget): add an activatable widget
8313         as a button in the dialog - you can also add a non-activatable
8314         widget by accessing the action area directly.
8315         (gtk_dialog_add_button): add a simple button - stock ID or 
8316         label - to the action area
8317         (gtk_dialog_response): emit response signal
8318         (gtk_dialog_run): block waiting for the dialog, return 
8319         the response. Override normal delete_event behavior, so that 
8320         delete_event does nothing inside gtk_dialog_run().
8321
8322         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8323         emitted when an action widget is clicked or the dialog gets
8324         delete_event
8325
8326         * gtk/gtk.h: add gtkmessagedialog.h
8327
8328         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8329
8330 2000-10-18  Havoc Pennington  <hp@redhat.com>
8331
8332         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8333         where any number of empty lines would get skipped
8334
8335         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8336         edge.
8337
8338         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8339         warning about invalid iterators (explain more thoroughly)
8340         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8341
8342         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8343         big
8344
8345         * demos/*.c: Add error handling
8346
8347         * gtk/gtktextbuffer.c: don't modify const iterators
8348
8349         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8350
8351         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8352         on file load
8353
8354         * gtk/gtkiconfactory.c: Update to reflect addition of error
8355         handling to gdk-pixbuf loaders
8356
8357 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8358
8359         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8360         move to new modularized testgtk.
8361
8362 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8363
8364         * gtk/gtktreeview.c: Draw the arrows correctly.
8365
8366         * gtk/gtktreemodel.c: Added user docs.
8367
8368         * gtk/gtk.h: remove gtktreedatalist.h.
8369
8370         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8371         parent when generating my type.
8372
8373         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8374         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8375
8376 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8377
8378         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8379         GtkTreeModel from object to interface.
8380
8381 2000-10-16  Havoc Pennington  <hp@redhat.com>
8382
8383         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8384         compilation
8385
8386 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8387
8388         * gtk/gtktreeselection.c: Add API documentation to all public
8389         functions.
8390
8391         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8392         functions.
8393
8394 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8395
8396         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8397         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8398         docs to all public functions.
8399
8400         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8401         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8402         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8403         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8404         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8405         issue.
8406
8407 2000-10-14  Robert Brady  <robert@suse.co.uk>
8408
8409         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8410
8411 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8412
8413         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8414         values other then G_TYPE_STRING.
8415         * gtk/gtktreeselection.c: Minor commenting updates.
8416         * gtk/gtktreeview.c: Format updates.
8417
8418 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8419
8420         * README.win32: Update.
8421
8422         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8423         lines that had been deleted by mistake (?).
8424
8425         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8426         also the case fg==white and bg==black (but still not randomly
8427         coloured cursors). Thanks to Wolfgang Sourdeau.
8428
8429         * gdk/win32/*.c: Silence gcc -Wall.
8430
8431         * gtk/gtk.def: Add missing entry points.
8432
8433         Fixes by Hans Breuer:
8434
8435         * gdk/makefile.msc
8436         * gdk/win32/makefile.msc: Update.
8437
8438         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8439         some MSVC thing, presumably), cause breakpoint on failures. Add
8440         GDK_NOR case. Call g_log_set_always_fatal.
8441
8442         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8443         should be pased by reference.
8444         
8445         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8446         
8447         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8448
8449         * gdk/win32/gdkevents-win32.c
8450         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8451
8452         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8453         implementation object.
8454
8455         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8456         not just windows.
8457         
8458         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8459         Use the wrapper object.
8460         
8461 2000-10-06  Havoc Pennington  <hp@redhat.com>
8462
8463         * Makefile.am (SRC_SUBDIRS): contrib subdir
8464
8465         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8466         so it can be used in Xlib version
8467
8468         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8469         tree
8470
8471         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8472         change from 1.0 tree that returns first frame of animation
8473         if the loaded file is an animation.
8474
8475         * contrib: add new directory to hold stuff that comes with GTK+
8476         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8477         
8478         * configure.in: add contrib/*
8479
8480 2000-10-05  Havoc Pennington  <hp@redhat.com>
8481
8482         * demos/testpixbuf-save.c: add pixbuf save test
8483
8484         * demos/Makefile.am: add testpixbuf-save.c
8485
8486 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8487
8488         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8489         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8490         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8491         * gtk/gtktreeselection.[ch]: Replaced
8492         "node_selected"/"node_unselected" signal with "selection_changed"
8493         signal.
8494
8495 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8496
8497         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8498         tree widget.
8499
8500 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8501
8502         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8503         drawing.
8504
8505 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8506
8507         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8508         Move list pointer forwards before removing item from
8509         list. (Crash reported by Salmaso Raffaele)
8510
8511         * gdk/gdkwindow.h: Remove spurious trailing ,
8512
8513         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8514         dependencies on uninstalled libraries, sorry folks.
8515
8516 2000-10-04  Havoc Pennington  <hp@redhat.com>
8517
8518         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8519         gtk/gtkiconfactory.c: Fix copyrights    
8520
8521         * demos/testpixbuf.c: add inline pixbuf test
8522         
8523 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8524
8525         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8526         Add gdk_window_iconify.
8527
8528         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8529         (gdk_window_set_geometry_hints): Add win_gravity
8530         to geometry structure.
8531
8532         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8533         Implement _NET_WM_PING.
8534
8535         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8536         Set _NET_WM_PID on the client leader.
8537
8538         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8539         Handle UTF-8 better.
8540
8541         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8542         UTF-8 better, set _NET_WM_NAME as well. Only set
8543         icon name if it hasn't previously been explicitely 
8544         set.
8545
8546 2000-10-03  Havoc Pennington  <hp@redhat.com>
8547
8548         * gtk/testtextbuffer.c: clean up trailing whitespace,
8549         add extensive tests for tag toggle iteration.
8550         
8551         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8552         distance
8553
8554         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8555         optimize case where the tag root is on level 1
8556         (gtk_text_line_previous_could_contain_tag): attempt to implement
8557         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8558         functionality
8559
8560         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8561         Implement this, though not very efficiently.
8562
8563         * gtk/gtktextiterprivate.h: reformat
8564
8565         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8566         iterator
8567
8568         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8569         this to properly revalidate the iterators.
8570
8571         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8572         properly at the end of the line (and therefore on empty lines)
8573
8574         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8575         maybe we should return a value...
8576
8577 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8578
8579         * config.h.win32: Guard definition of alloca(). glib.h now handles
8580         that.
8581
8582         * gdk/gdk.def
8583         * gtk/gtk.def: Add new entry points.
8584
8585         Changes just to make GTK+ build without errors on Win32. No hope
8586         of it working in its current state, though...:
8587         
8588         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8589         some functions from the X11 backend, just to make GTK+ build.
8590
8591         * gdk/makefile.mingw.in
8592         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8593         number. Add new object files.
8594
8595         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8596         GetMessageTime to get timestamp (where on X11 uses
8597         gdk_x11_get_server_time()).
8598
8599 2000-10-02  Havoc Pennington  <hp@pobox.com>
8600
8601         * gtk/gtktextview.c: text_window_* weren't static and should have
8602         been.
8603         Start work on child widgets; not yet complete, syncing to 
8604         office computer.
8605
8606         * gtk/gtktextchild.h: change this to contain a public interface,
8607         starting work on child interfaces.
8608         * gtk/gtktextchildprivate.h: move private interfaces here
8609
8610         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8611
8612         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8613         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8614         gtk/gtktextmark.c: copyright notices
8615
8616         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8617         internal functions      
8618
8619         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8620         internal function
8621
8622         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8623         Reformatting    
8624
8625 2000-09-30  Havoc Pennington  <hp@pobox.com>
8626
8627         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8628         NULL start/end pointers
8629
8630         * gtk/gtktextbuffer.c: Write some docs
8631         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8632         NULL, so you can just check whether there's a selection.        
8633
8634         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8635         cleanup_line or segments_changed ourselves, it gets done 
8636         in unlink_segment
8637
8638         * gtk/gtktextmark.h:
8639         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8640         
8641         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8642
8643         * gtk/gtktextmark.c: delete some more old Tk cruft
8644
8645         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8646         mark before removing it, so we can emit MARK_DELETED with a valid
8647         pointer.
8648         (gtk_text_buffer_mark_set): hold ref across signal emission
8649
8650         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8651         whining about attempts to delete special marks
8652
8653         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8654         underscore, since it's internal.
8655
8656         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8657         now implemented in terms of iterators in gtktextiter.h
8658
8659         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8660         New function, destructively sets contents of buffer. Also 
8661         a convenient way to clear the buffer by setting text to ""
8662
8663         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8664         multiline string literal
8665
8666         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8667         text changes.
8668
8669         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8670         is not dereferenceable
8671         (gtk_text_iter_forward_lines): fix return value
8672
8673 2000-09-29  Havoc Pennington  <hp@redhat.com>
8674
8675         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8676
8677         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8678         that set border window size to have nicer name
8679         (gtk_text_view_mark_set_handler):  Fix this to have the 
8680         right signature.
8681
8682         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8683
8684         * gtk/testtext.c: Update with API changes, put line numbers on 
8685         both sides.
8686         
8687         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8688         with this
8689
8690         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8691         pixbuf; delete a big block of #if 0 Tk code
8692
8693         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8694         insert_pixmap with insert_pixbuf
8695
8696 2000-09-29  Martin Baulig  <baulig@suse.de>
8697
8698         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8699         confusion with the GdkPixbuf of the GNOME 1.x platform.
8700
8701 2000-09-29  Havoc Pennington  <hp@pobox.com>
8702
8703         * gtk/gtktextview.c: Implement the side windows.
8704
8705         * gtk/testtext.c: Implement simple line numbering in the 
8706         left side window; seems to make scrolling sloooow. Oops.
8707         Also, cursor blink is for some reason causing redraws
8708         of the line numbers. Should investigate...
8709
8710 2000-09-28  Havoc Pennington  <hp@redhat.com>
8711
8712         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8713         scrolling child windows, and draw focus rectangle properly.
8714         
8715         (gtk_text_view_buffer_to_window_coords):
8716         Coordinate transformation to deal with all these freaking windows
8717         and offsets
8718         (gtk_text_view_window_to_buffer_coords): transform the other way
8719
8720         * gtk/testtext.c (create_buffer): Update to match Pango API change
8721
8722         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8723         anonymous tags
8724         (foreach_unref): don't emit remove signal from finalize, just
8725         set tag's parent to NULL
8726
8727 2000-09-26  Havoc Pennington  <hp@redhat.com>
8728
8729         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8730         Fix some warnings       
8731
8732 2000-09-26  Havoc Pennington  <hp@redhat.com>
8733
8734         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8735         headers into the private header list
8736
8737         * Makefile.am (pkgconfig_DATA): install pkg-config files
8738
8739         * configure.in: add pkg-config files
8740
8741         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8742
8743         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8744         outstanding icon caches on theme change.
8745
8746         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8747         important types:
8748
8749         (GtkIconSource): Specification for creating a pixbuf 
8750         appropriate for a direction/state/size triplet from 
8751         a source pixbuf or filename
8752
8753         (GtkIconSet): List of GtkIconSource objects that are used to
8754         create the "same" icon (e.g. an OK button icon), and cache for
8755         rendered icons
8756
8757         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8758         up the icon set for a given stock ID.  GTK maintains a stack of
8759         GtkIconFactory to search, and applications or libraries can add
8760         additional icon factories on top of the stack
8761         
8762         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8763         the set of GtkIconSource specified for a given stock ID into 
8764         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8765         RcStyle, under the specified stock ID.
8766
8767         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8768         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8769         This allows people to theme how prelight, insensitive, etc. are
8770         done.
8771
8772         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8773         icon factories for a style, and return the resulting 
8774         icon set if any.
8775
8776         (gtk_style_render_icon): Render an icon using the render_icon 
8777         method in the GtkStyleClass.
8778
8779         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8780         Use the style for a given widget to look up a stock ID, get the
8781         icon set, and render an icon using the render_icon method 
8782         of the style
8783
8784         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8785         (contains information about a stock item), the built-in stock item
8786         IDs, and functions to add/lookup stock items.
8787
8788         * gtk/stock-icons/*: Stock icons that come with GTK
8789
8790         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8791         a button based on a GtkStockItem
8792         (gtk_button_new_accel): Takes a uline string and accel group, and
8793         installs the accelerator.
8794
8795         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8796         image-display widget.
8797
8798 2000-09-25  Havoc Pennington  <hp@redhat.com>
8799
8800         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8801
8802         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8803         Fix a bug when removing node data, we didn't properly 
8804         re-splice the linked list after removing the data.
8805
8806         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8807         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8808
8809         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8810
8811         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8812         for the layout from the GtkTextTag.
8813
8814         * gtk/gtktexttypes.h: delete tab and search cruft, 
8815         remove g_convert() in favor of GLib version
8816
8817         * gtk/gtktexttypes.c: remove tab implementation from here,
8818         move to Pango
8819
8820         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8821         tab stuff using new PangoTabArray from Pango
8822
8823         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8824         unused border_width stuff
8825
8826 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8827
8828         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8829         glib) and now useless utf_to_latin1() latin1_to_utf()
8830
8831         * gtk/gtktextview.[ch]: Change ::move_insert and
8832         ::delete_text action signals to ::move and ::delete;
8833         create the signals with the right enumeration type,
8834         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8835         C-v bindings, change Home, End to move to beginning/end
8836         of line, Add C-Home C-End to move to beginning/end
8837         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8838         combine ::scroll_text into ::move; use new GtkSelectionData
8839         functions to simplify DND text handling.
8840         
8841         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8842         deletion enumerations here, rename enumeration values to 
8843         be consistently plural.
8844
8845         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8846         for cut/copy/paste and primary selection.
8847
8848         * gtk/gtktextbuffer.[ch]: Remove excess time and
8849         'interactive' arguments from cut/copy/paste;
8850         rename cut to cut_clipboard, etc; remove
8851         gtk_text_buffer_get_clipboard_contents().
8852
8853         * gtk/gtktextlayout.[ch]: Add 
8854         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8855         line ends.
8856
8857         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8858         Functions to set or get a UTF-8 string on the selection
8859         data.
8860
8861         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8862         interfaces.
8863
8864         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8865         created widgets - one of these is useless if we don't.
8866
8867         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8868         a public function clear all targets registered for the
8869         widget.
8870
8871         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8872         Never call gtk_widget_realize() - that was just asking
8873         for bizarre side-effects.
8874
8875         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8876         gdk_selection_owner_set even if the widget is the
8877         same so that we reliably update the timestamp on
8878         the server.
8879
8880         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8881         gdk_x11_get_server_time() function.
8882         
8883         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8884         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8885         Add some tricky filtering on serial numbers for
8886         selection clear events to fix up long-standard
8887         race condition FIXME's in gtkselection.c.
8888
8889         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8890         routines to convert from utf8 to compound text or
8891         STRING and from a text property to UTF-8.
8892
8893         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8894         a convenience function gdk_get_current_event_time().
8895
8896         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8897         and free selection_data->data properly
8898
8899 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8900
8901         * gtk/gtkthemes.c: Remove some unecessary includes.
8902
8903 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8904
8905         * gtk/gtktextdisplay.c
8906         * gtk/gtktextlayout.c
8907         * gtk/gtktexttag.c
8908         * gtk/gtktexttag.h
8909         * gtk/testtext.c: Change the overstrike property to strikethrough,
8910         to closer match pango.
8911
8912 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8913
8914         * gtk/gtktextview.c: Fix up visibility so that focus,
8915         cursor_visible and blink interact properly.  Reenable cursor blink
8916         which had been roughly disabled. Make blink and focus
8917         properly per-view.
8918
8919         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8920         Add a flag for whether to display insertion cursor and
8921         a function to set the flag.
8922
8923         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8924         get_line_y() to get_line_yrange(), to be a bit more generally
8925         useful.
8926
8927 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8928
8929         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8930           do stop_navigating_submenu, to clear last timeout properly.
8931           Also in gtk_menu_motion_notify move ignore_enter above
8932           the conditional to make it always happen as suggested by Owen
8933
8934 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8935
8936         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8937
8938         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8939         w32api headers.
8940
8941         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8942         declarations.
8943
8944         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8945         (gdk_win32_get_colormap): A line had been deleted by mistake.
8946
8947         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8948         (gdk_event_translate): Handle more virtual keycodes to be able to
8949         generate GDK events for Control-comma, Control-period, etc.
8950
8951         * gtk/gtk.def: Add some missing entry points.
8952
8953 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8954
8955         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8956         Doc comment fixing. (Mostly non-matching parameter names.)
8957
8958         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8959         comments a little to avoid looking like a doc comment.
8960
8961         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8962         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8963         conversions be changed to GError?)
8964
8965         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8966         Move private #defines into .c file.
8967
8968         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8969         order of argument addition, remove duplicates.
8970
8971         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8972         parent class is FrameClass, not BinClass.
8973
8974         * gtk/gtk.h: Add gtkinvisible, which was missing.
8975         (It's occasionalyl useful for client apps, if seldom.)
8976
8977         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8978         #define.
8979
8980 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8981
8982         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8983         coordinates when creating window, instead of GDK-space
8984         coordinates. (Avoid BadValue on too large windows.)
8985
8986 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8987
8988         * configure.in (use_mmx_asm): Remove conftest* after use along the
8989         lines of AC_TRY_COMPILE.        
8990         
8991         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8992         of g_dirname, which is deprecated.
8993         (gtk_rc_parse_any): Removed calls to
8994         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8995
8996         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8997         Removed calls to g_hash_table_{freeze,thaw}, as they are
8998         deprecated now.
8999
9000         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9001         instead of g_basename.
9002         
9003 2000-09-04 Elliot Lee <sopwith@redhat.com>
9004         
9005         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9006         ANSI warning.
9007
9008 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9009
9010         * gtk/gtkwidget.h:  Add some documenting comments about 
9011           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9012           just as owen said on irc.
9013
9014         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9015           set HAS_DEFAULT.  Only set it if there isn't another window
9016           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9017           it if the widget is not the focused window with RECEIVES_DEFAULT.
9018           This fixes weird double default bugs in dialogs which has things
9019           call gtk_window_set_default at times.
9020
9021 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9022
9023         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9024         Nils Barth and David Santiago to improve submenu
9025         navigation. The patch does this by creating a triangular
9026         region from the point where the pointer leaves the
9027         menu to the submenu.  While the pointer is in
9028         that region and a timeout has not expired, events 
9029         that would cause the active submenu to change are
9030         ignored.
9031
9032 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9033
9034         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9035         moving a toplevel window immediately after sizing it would
9036         result in it being sized back to the old size since 
9037         impl->width, impl->height aren't updated until we hear
9038         back from the server. There is still a (longstanding) bug
9039         here that gdk_window_get_size() will give the wrong size
9040         until we do hear back.
9041
9042 2000-08-31  Havoc Pennington  <hp@redhat.com>
9043
9044         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9045         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9046         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9047         Rename GtkTextStyleValues to GtkTextAttributes
9048
9049 2000-08-31  Havoc Pennington  <hp@pobox.com>
9050
9051         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9052         for rapid testing whether an iterator is the end iterator
9053         (gtk_text_btree_new): init end line cache
9054         (gtk_text_line_is_last): use fast cached line to 
9055         see if we're the last line.
9056         (get_last_line): use cached line here too, should 
9057         speed up some random unrelated code.
9058         
9059 2000-08-30  Havoc Pennington  <hp@pobox.com>
9060
9061         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9062         signals.
9063
9064         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9065         delete_text signals. This allows the signals to be used for
9066         implementing undo.
9067
9068         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9069         provide "interactive" argument when emitting insert_text or
9070         delete_text signal.
9071         
9072 2000-08-30  Havoc Pennington  <hp@pobox.com>
9073
9074         * gtk/gtktextbuffer.c: Docs
9075
9076 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9077
9078         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9079         from switch statements, since Tor removed the enumeration
9080         value.
9081         
9082         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9083         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9084
9085 2000-08-29 Elliot Lee <sopwith@redhat.com>
9086         * */*.h: Use G_GNUC_CONST.
9087
9088 2000-08-27  Havoc Pennington  <hp@pobox.com>
9089
9090         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9091         minor indentation fixes, inserted some FIXME about stuff I
9092         realized was broken while documenting it.
9093         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9094         GTK convention  
9095
9096 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9097
9098         * gtk/testgtk.c (create_styles): Fix double free of
9099         font desc.
9100
9101 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9102
9103         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9104         
9105         * gtk/testgtk.c (create_styles): Add a test for modifying
9106         the style through gtk_widget_modify_*.
9107
9108         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9109         a function to get the current modifier style.
9110
9111         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9112         of the passed in GtkRcStyle instead of ref'ing it.
9113
9114         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9115
9116 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9117
9118         * gdk/gdkimage.h
9119         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9120         shared memory image+pixmap GdkImage type, or
9121         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9122         I am dropping that.
9123
9124         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9125         actually call gtk_init_abi_check(), passing also
9126         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9127
9128         * gtk/gtk.def
9129         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9130         New functions, used to check that the GTK+-using code has been
9131         compiled using the correct compiler and switches. In particular,
9132         with gcc one has to use the -fnative-struct switch as GTK+ is
9133         compiled with that.
9134
9135 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9136
9137         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9138         ->prev fields when merging lists. (Found simultaneously
9139         by Pawel Salek and Jakub Jelinek)
9140
9141 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9142
9143         * gdk/gdk.def
9144         * gtk/gtk.def: Add missing entries.
9145
9146         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9147         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9148
9149         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9150         function. Dummy implementation at this point.
9151
9152         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9153         rules. Undefine GTK_COMPILATION when compiling the test programs.
9154         
9155         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9156
9157 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9158
9159         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9160         to convert back and forth from UTF-8 and the "system" (or "current
9161         locale") charset when necessary. Indentation/spacing cleanup.
9162
9163 2000-08-10  Havoc Pennington  <hp@redhat.com>
9164
9165         * Makefile.am (snapshot): Change the format of the snapshot
9166         version to match glib
9167
9168         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9169         from EXTRA_DIST since it doesn't seem to exist
9170
9171 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9172
9173         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9174         version of the directory name (not the UTF-8 one) when building
9175         the path name to stat().
9176
9177 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9178
9179         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9180         PANGO_ATTR_SHAPE set.
9181
9182 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9183
9184         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9185         Peter Osterlund to simplify the code while keeping the
9186         functionality the same.
9187
9188 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9189
9190         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9191         is_viewable() test further inside the function, since removing the 
9192         window from the redraw list without clearing ->update_area
9193         was also very broken.
9194
9195 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9196
9197         * configure.in: Check for <unistd.h>.
9198
9199 2000-08-01  Martin Baulig  <baulig@suse.de>
9200
9201         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9202         to display the message that this is a development version of GTK+.
9203
9204 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9205
9206         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9207         was depending on widget->allocation instead of the width of text_area,
9208         which was incorrect for subclasses like GtkSpinButton.
9209
9210         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9211         with width == 1 tests that should be width == -1.
9212
9213 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9214
9215         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9216         (broken, Elliot, every single window blank on X) custom code with call
9217         to gdk_window_is_viewable() which a) prevents code duplicate and
9218         b) works. 
9219
9220 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9221
9222         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9223         to get the GDK_PARENT_ROOT() macro to work.
9224         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9225         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9226         of, windows that aren't shown.
9227         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9228         pointer grab stuff.
9229
9230 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9231
9232         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9233           s/gtk_main_iteration/g_main_iteration/
9234
9235           Did this already in change:
9236                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9237           don't know how it got reverted.
9238
9239 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9240
9241         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9242         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9243
9244         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9245         not gdk_pixbuf.
9246
9247 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9248
9249         * configure.in,po/{sp,sr}.po: Added Serbian files
9250
9251 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9252
9253         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9254
9255         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9256         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9257         GIOChannel implementation.
9258
9259         * gdk/win32/gdkinput.c
9260         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9261
9262         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9263         definition to match prototype.
9264
9265         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9266
9267 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9268
9269         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9270         function, to allow handling image formats that cannot be detected
9271         by looking at content alone.
9272
9273 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9274
9275         * docs/tutorial/*.gif *.jpg *.eps
9276           Update these to the same look-n-feel.
9277           Why does including images in DocBook suck so badly?
9278
9279 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9280
9281         * gtk/gtktable.c: applied patch from Phil Thompson
9282         <phil@river-bank.demon.co.uk> that enables space settings for
9283         the last row/columns as well.
9284
9285 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9286
9287         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9288         updates the license headers to the GNU Lesser General Public License,
9289         as well as updating the copyright year to 2000.
9290
9291 2000-07-26  Robert Brady  <rwb197@zepler.org>
9292
9293         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9294           and po/Makefile, was installing and looking for them under gtk20
9295           and gtk2 respectively.
9296
9297 2000-07-25  Havoc Pennington  <hp@redhat.com>
9298
9299         * gtk/testtext.c: Comment out some stuff that depends on the rest
9300         of my patches.
9301
9302 2000-07-25  Havoc Pennington  <hp@redhat.com>
9303
9304         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9305         buffer
9306
9307 2000-07-25  Havoc Pennington  <hp@redhat.com>
9308
9309         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9310         widget changes.
9311
9312         * gtk/gtktextview.h: To be consistent with usage of "line"
9313         throughout the API to mean "newline-terminated thingy", change
9314         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9315         to MOVEMENT_LINE.
9316
9317         (GtkTextView): Add flags for default editability, and whether to
9318         show the cursor. Add functions to get/set that. Add 
9319
9320         (gtk_text_view_get_iter_location): new function
9321
9322         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9323         gtktextlayout.h
9324         (g_convert): Add g_convert temporarily, will go in glib in a bit
9325         
9326         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9327         GtkTextTagTableForeach instead of brokenly using GHFunc.
9328         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9329
9330         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9331         moved to public header.
9332
9333         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9334         "invisible", since "elide" was a bad name.
9335         (gtk_text_tag_get_priority): Added
9336
9337         (GtkTextStyleValues): put this in public header, along with
9338         functions to use it.
9339
9340         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9341         longer include gtktextbtree.h.
9342
9343         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9344         gtk_text_mark_deleted
9345
9346         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9347         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9348         to make this possible. Now we only need to install
9349         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9350         (However the Makefile.am isn't changed yet because of the
9351         logistics of merging gtk-hp-patches piecemeal)
9352
9353         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9354         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9355         gtk_text_iter_get_line is now used in the public API for a
9356         different purpose.
9357
9358         * gtk/gtktextiter.h: Clean up function names to be more
9359         consistent. Always call char offset "offset" and byte index
9360         "index". A "line" is always a line number. 
9361
9362         (gtk_text_iter_is_last): new function, more efficient than 
9363         the existing way to check
9364         (gtk_text_iter_is_first): new function, also more efficient
9365
9366         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9367
9368         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9369         gtk_text_iter_forward_char, etc.
9370
9371         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9372         forward_find_tag_toggle, since this isn't a linear search
9373
9374         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9375
9376         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9377         New functions, search for a buffer substring.
9378
9379         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9380         interactive and default editable (since we need to store that info
9381         until we receive the selection data).
9382
9383         Remove all the _at_char and at_line etc. versions of functions;
9384         only have iterator versions.
9385
9386         Add _interactive() versions of functions, that consider the
9387         editability of text. (FIXME add interactive flag to the 
9388         insert/delete signals per Darin's suggestion)
9389
9390         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9391         tag table if necessary
9392
9393         Remove declaration of gtk_text_buffer_get_iter_from_string
9394
9395         (_gtk_text_buffer_get_btree): private/internal function, added.
9396         
9397
9398         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9399         (gtk_text_line_is_last): new function
9400
9401 2000-07-25  Havoc Pennington  <hp@redhat.com>
9402
9403         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9404         using GtkProgressBar. See Changes-2.0.txt for details.
9405
9406         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9407         "pulse_step" which are the equivalent of
9408         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9409         Implement new API.
9410         
9411         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9412         (use_text_format) to mark whether text set on the progress bar is
9413         a format string. Deprecate entire GtkProgress interface.
9414
9415         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9416         (gtk_progress_build_string): make this a no-op if use_text_format
9417         is FALSE
9418
9419         * docs/Changes-2.0.txt: Describe progress bar changes.
9420
9421 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9422
9423         * Makefile.am: Include the build directory.
9424
9425         * configure.in: Generate build/Makefile, build/win32/Makefile,
9426         gdk/, gdk/win32/, and gtk/makefile.mingw.
9427
9428         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9429         Add GETTEXT_PACKAGE.
9430         
9431         * gdk/gdk.def
9432         * gtk/gtk.def: Updates.
9433
9434         * gdk/gdkfont.h
9435         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9436         need them any longer.
9437
9438         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9439
9440         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9441         PANGOWIN32_LIBS and gdk_pixbuf.
9442
9443         * gdk/win32: Compiles, but no doubt doesn't work at all.
9444
9445         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9446
9447         * gdk/win32/gdkinput.c: New file, temporarily.
9448         
9449         * gdk/win32/gdkinput-win32.h: New file
9450
9451         * gdk/win32/gdkinputprivate.h: Remove.
9452
9453         * gdk/win32/gdkpango-win32.c: New file.
9454
9455         * gtk/makefile.mingw.in: New file
9456
9457         * gtk/makefile.cygwin: Removed
9458         
9459         * gtk/Makefile.am: Update accordingly.
9460
9461         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9462         made externally visible.
9463
9464         * gtk/gtkmain.c: Use it.
9465         
9466         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9467         is enough.
9468
9469         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9470
9471 2000-07-24 Elliot Lee <sopwith@redhat.com>
9472         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9473         individual backends already.
9474         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9475         again. Yes, there really is a good reason for this, if you are using the gdkregion
9476         internals, and if you're not, why do you care?
9477         * gdk/gdkwindow.c: Fix inverted condition
9478         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9479         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9480         * gtk/gtkrange.c: Redraw trough when moving.
9481         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9482         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9483
9484 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9485
9486         * configure.in: Check for mkstemp and sigsetjmp. Output
9487         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9488
9489         More work on GDK for Win32. Still in an intermediate state.
9490
9491         * gdk/makefile.cygwin
9492         * gdk/win32/makefile.cygwin: Removed.
9493         
9494         * gdk/makefile.mingw.in
9495         * gdk/win32/makefile.mingw.in: New files.
9496
9497         * gdk/Makefile.am
9498         * gdk/win32/Makefile.am: Generate and distribute them.
9499
9500         * gdk/win32/gdkwindow-win32.h
9501         * gdk/win32/gdkdrawable-win32.h
9502         * gdk/win32/gdkpixmap-win32.h: New files.
9503
9504         * gdk/win32/gdkcolor-win32.c
9505         * gdk/win32/gdkcursor-win32.c
9506         * gdk/win32/gdkdrawable-win32.c
9507         * gdk/win32/gdkgc-win32.c
9508         * gdk/win32/gdkimage-win32.c
9509         * gdk/win32/gdkprivate-win32.h
9510         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9511         Rename fields and variables called xcursor, xid, etc (these names
9512         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9513
9514 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9515
9516         * gtk/gtkentry.[ch]: Fix some problems with vertical
9517         alignment.
9518
9519         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9520         char/byte confusion.
9521
9522 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9523
9524         * gtk/gtktextview.c (changed_handler): Fix bug where
9525         redraw wasn't being done properly when height of
9526         dirty region changed.
9527
9528         * demos/Makefile.am: Remove various references to
9529         -lgmodule
9530
9531 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9532
9533         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9534         PangoAttrShape to reserve space for pixmaps, add 
9535         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9536         in the display functions.
9537         
9538         * gtk/testgtk.c (create_layout): Set some more exotic
9539         scrolled window options
9540
9541         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9542         Add function to set the shadow type of a window, to allow
9543         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9544         which don't draw their own frame.
9545
9546 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9547
9548         * docs/tutorial/package-db-tutorial.sh: New file for
9549           packaging DocBook format tutorial
9550
9551 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9552
9553         * docs/tutorial/gtk-tut.sgml: Minor updates
9554
9555         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9556
9557 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9558
9559         * gtk/gtksignal.c: Fix C++ comment.
9560
9561         * gtk/gtkimmulticontext.c
9562         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9563         don't return value from void functions.
9564
9565         * gtk/gtk.def: Add gtk_rc_style_unref.
9566
9567 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9568
9569         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9570         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9571         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9572         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9573         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9574         gtk/gtktypeutils.h: Include files outside of the extern "C"
9575         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9576         <vakatov@peony.nlm.nih.gov>.
9577
9578 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9579
9580         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9581           Completes first pass. Hurrah!
9582
9583 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9584
9585         * docs/tutorial/gtk-tut.sgml: More clean ups.
9586
9587 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9588
9589         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9590         paint the background of the text area which was accidentally
9591         removed at some point.
9592
9593         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9594           
9595          - Move most of the functionality from the theme vtable
9596            into GtkRcStyleClass and GtkStyleClass. The moved
9597            vtable functions were changed a bit in the move to
9598            work better in their new home.
9599
9600          - Get rid of the engine and engine_data fields from
9601            GtkRcStyle and GtkStyle; instead the theme
9602            engine derives theme-specific subclasses of GtkRcStyle
9603            and GtkStyle
9604
9605          - Add extra dlsym() found entry point to themes,
9606            theme_create_rc_style().
9607
9608         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9609         in gtk_style_real_copy.
9610
9611         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9612         to register a type associated with an engine. (The engine
9613         won't be unloaded as there is an instance of the type.)
9614
9615
9616 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9617
9618         * docs/tutorial/gtk-tut.sgml: Clean ups.
9619
9620 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9621
9622         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9623           of cleaning up to do.
9624
9625 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9626
9627         * gdk/testgdk.c: New file, quick hack to test backends for
9628         pixel-by-pixel correctness of the most simple graphic operations.
9629
9630 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9631
9632         * Really release 1.3.1
9633         
9634         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9635         include structure.
9636
9637 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9638
9639         * Released 1.3.1
9640
9641 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9642
9643         * gtk/gtktextlayout.c: use FALSE for size_only most
9644         of the time when calling gtk_text_layout_get_line_display()
9645         to avoid causing double reshapes when a redraw follows
9646         immediately after.
9647
9648 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9649
9650         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9651         appropriate region and gdk_window_process_updates() so trough
9652         updating doesn't lag behind the window being scrolled.
9653
9654         * gdk/gdkgc.c: Make parent_class pointer static.
9655          
9656 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9657
9658         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9659         include <string.h>.
9660          
9661         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9662         cut-and-paste error in computing memory offset for 4 channels.
9663
9664 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9665
9666         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9667         gtk_rc_append_default_pixmap_path(), since it wasn't
9668         adding an interesting path and we don't have a meaningful
9669         default for this value.
9670
9671 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9672
9673         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9674         gtk-config to gtk-config-2.0 move gtk_.m4 to
9675         gtk-2.0.m4
9676
9677         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9678         gdk/Makefile.am demos/Makefile.am: Change 
9679         library names to libgtk-1.3.la, etc, so that we
9680         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9681
9682         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9683         gdk/Makefile.am gdk/x11/Makfile.am
9684         Move include files into /usr/include/gtk-2.0, 
9685         /usr/lib/gtk-2.0/include/
9686          
9687         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9688         gtk/gtkintl.h: Change package for gettext from 
9689         gtk+ to gtk20. Put hack in autogen.sh to modify
9690         po/Makefile.in.in after gettextize to make this
9691         possible.
9692
9693         * gtk+.spec: Some updates, not tested.
9694
9695         * gdk-pixbuf/Makefile.am: Move loaders into
9696         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9697
9698         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9699         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9700         to THEMENAME/gtk-2.0/. Move engine directory  to
9701         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9702         
9703 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9704
9705         Win32 changes, still doesn't build though.
9706
9707         * gdk/makefile.cygwin
9708         * gdk/win32/makefile.cygwin
9709         * gtk/makefile.cygwin: Updates.
9710
9711         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9712         default values for fg and bg pixel as X11 does (0 and 1), not
9713         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9714         Use 0 for pen width by default (treated as 1 anyway later, but for
9715         apps that might check the value in the GdkGC).
9716         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9717         interface to gdk_gc_predraw and _postdraw.
9718
9719         * gdk/win32/gdkwin32.h
9720         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9721
9722         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9723         extraneous semicolon.
9724
9725         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9726
9727         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9728         not the Win32 bitspixel value.
9729
9730         * gdk/win32/gdkcc-win32.c:
9731         * gdk/win32/gdkcolor-win32.c 
9732         * gdk/win32/gdkprivate-win32.h
9733         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9734         GDK object structure.
9735
9736 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9737
9738         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9739         * docs/tutorial/gtk_tut_it.sgml (name): 
9740         * docs/tutorial/gtk_tut_fr.sgml (name): 
9741         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9742         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9743
9744 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9745
9746         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9747           small changes.
9748
9749 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9750
9751         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9752         a bug here, never been here and never fixed anything ;(
9753         (don't segfault if tree->root_tree is NULL, which happens prior
9754         to widget realization, but puke instead).
9755
9756 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9757
9758         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9759         add the necessary tokens.
9760
9761         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9762         (gtk_rc_style_to_style): copy thicknesses.
9763         (gtk_rc_init_style): apply thicknesses.
9764         (gtk_rc_parse_style): parse xthickness and ythickness.
9765
9766         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9767
9768         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9769         (gdk_window_new): 
9770         (_gdk_windowing_window_init): 
9771         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9772         (gdk_pixmap_create_from_data): 
9773         (gdk_bitmap_create_from_data): 
9774         (gdk_pixmap_new): 
9775         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9776         (gdk_image_new): 
9777         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9778         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9779         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9780         (gdk_colormap_get_system): 
9781         (gdk_colormap_new): 
9782         * gdk/gdkwindow.c (gdk_window_init): 
9783         * gtk/gtkstyle.c (gtk_style_new):
9784         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9785         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9786         * gtk/gtkrc.c (gtk_rc_style_new):
9787         use g_object_new() instead of g_type_create_instance() which
9788         is a private function for fundamental type implementations.
9789
9790 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9791
9792         * configure.in: Add check for db2html
9793
9794 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9795
9796         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9797         hack to set glib_debug_objects based on gtk_debug_flags.
9798
9799 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9800
9801         * INSTALL.in: Update the Prerequisites section.
9802
9803         * Makefile.am demos/Makefile.am docs/Makefile.am
9804         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9805         gdk/linux-fb/Makefile.am: Dist fixes
9806
9807 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9808
9809         * NEWS: 10,000 foot view of 1.3.1 changes.
9810
9811 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9812
9813         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9814         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9815         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9816         gdk/x11/gdkmain-x11.c: 
9817
9818         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9819         as a return value of gdk_*_grab(). Previously, we just
9820         returned the X11 values directly.
9821
9822 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9823
9824         * gdk/x11/Makefile.am: Patch from George Lebl to 
9825         install all the headers in the right place.
9826
9827 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9828
9829         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9830           initial conversion to DocBook.
9831
9832 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9833
9834         * README.win32: Improve a bit.
9835
9836         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9837         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9838         Alt+0nnn on the numpad (used to enter characters by numeric code
9839         from current DOS or ANSI codepage) working correctly, as in other
9840         Windows apps.
9841
9842         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9843         same argument validity tests as in X11 version.
9844         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9845
9846         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9847         definitions in case missing from headers.
9848
9849         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9850         destroy the window-specific cursor.
9851         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9852         calling GetModuleHandle(NULL).
9853         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9854         with CopyCursor before setting it as the window-specific
9855         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9856         also its Windows cursor) after calling this function. Destroy any
9857         previous window-specific cursor.
9858
9859 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9860
9861         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9862         font charset is iso8859-1, not iso-8859-1.
9863
9864 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9865
9866         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9867         Use g_get_charset() instead of g_get_codeset().
9868
9869         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9870         Comment out some strdup'ing functions to keep timj
9871         happy until we finish fighting this out.
9872
9873 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9874
9875         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9876         <= width or height.
9877
9878         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9879         from 1.2 for parent/child states.
9880
9881         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9882         of typos.
9883
9884         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9885         event structures, replace with a generic axes field. Replace 
9886         deviceid/sourec with GdkDevice *device.
9887
9888         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9889         to extract particular axis use value from event. (Also
9890         can be used for normal X/Y.)
9891
9892         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9893         allow for arbitrary number of axes, namespace everything
9894         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9895         everywhere.
9896
9897         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9898         Get rid of the gdk_input_vtable setup if favor of simply
9899         defining the functions in gdkinput-none/gxi/xfree.c in
9900         a similar fashion to the way that the port structure is 
9901         done.
9902
9903         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9904         for new event structures. 
9905
9906         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9907         new device interfaces.
9908
9909 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9910
9911         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9912         set the initial text.
9913
9914         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9915         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9916         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9917         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9918
9919         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9920         pango_layout_set_font_description to simplify.
9921
9922 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9923
9924         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9925         pango_layout_set_font_description to simplify.
9926
9927 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9928
9929         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9930         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9931         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9932
9933         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9934         PANGO_PIXELS() macro.
9935
9936 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9937
9938         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9939         that returns a PangoContext owned by the widget and updated to
9940         match future changes in the widget. Also, make 
9941         gtk_widget_create_pango_layout() use this context. If we ever
9942         add a ::changed signal to PangoContext, this will make things
9943         much more convenient. 
9944
9945         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9946         in the appropriate places instead of destroying the layouts and
9947         creating new ones.
9948
9949         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9950         in a few strategic places.
9951
9952 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9953
9954         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9955         gtk_widget_size_request() on reparented child, if one. Otherwise,
9956         queue_resize() on the child never results in it getting size-requested
9957         at all.
9958
9959         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9960         in option menus, so that (with luck) people won't copy it into
9961         their apps in the future.
9962
9963         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9964         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9965         a lot of problems with changing the size of the menu's menu
9966         items after adding it to the option menu.
9967
9968         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9969
9970         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9971         the text direction for a widget changes.
9972
9973         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9974         ::direction_changed to get rid of various hacks.
9975
9976 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9977
9978         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9979         name.
9980
9981 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9984         flag to the structure. Do not call XFreePixmap on pixmaps created
9985         by gdk_pixmap_foreign_new().
9986
9987 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9988
9989         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9990         value using GdkRGB functionality given GdkColormap and GdkColor.
9991         (name not final, waiting for inspiration.)
9992         
9993         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9994         set the foreground/background of a GC using the GC's colormap
9995         and GdkRGB. (name not final, waiting for inspiration.)
9996
9997         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9998         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9999
10000         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10001         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10002         purely a function of the corresponding colormap. Make
10003         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10004
10005         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10006         gdk_pixbuf_*create_from_xpm_* in terms of
10007         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10008         code.
10009
10010         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10011         advantage of the new draw_rgb_32_image_dithalign.
10012
10013         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10014
10015         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10016         on each created GC.
10017
10018         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10019
10020         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10021         which we initialize from the drawable when the GC is created,
10022         if the drawable has a colormap.
10023
10024         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10025
10026         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10027
10028         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10029
10030 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10031
10032         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10033         actually returning expose events, make sure to set
10034         the count field properly.
10035
10036         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10037         accidentally reintroced bug which always cleared
10038         the graphics_exposures value. 
10039
10040 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10041
10042         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10043
10044 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10045
10046         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10047
10048 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10049
10050         * docs/faq/gtk-faq.sgml: Start of Section 6.
10051
10052 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10053
10054         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10055         
10056         (Fixes problem with drawing childless frames. Pointed out
10057         by and a first patch from Anders)
10058         
10059         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10060         compute a child_allocation, even if we don't have a child.
10061
10062         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10063         Always chain to the parent's impl, even if we don't have a child.
10064
10065 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10066
10067         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10068         use multiple parts of it instead of creating a bunch of separate
10069         segments, since the maximum number of segments per system is not
10070         large. (This might be worth backporting to GTK+-1.2.x if we make a
10071         new release )
10072
10073         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10074         structure in preparation for per-colormap GdkRGB.
10075
10076         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10077         to False when we get EINVAL from shmget so that the caller of
10078         gdk_image_new can retry with a smaller segment size.
10079
10080 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10081
10082         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10083
10084 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10085
10086         * configure.in: make the current version number 1.3.1 (binary age 0,
10087         interface age 0).
10088         
10089         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10090         gtkcompat.h is all we want.
10091
10092         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10093         GLib primitive types. fixed g_type_register_fundamental() argument
10094         ordering.
10095
10096         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10097         compiles.
10098
10099         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10100         object code cleanup, comment trigraph fixes, etc...
10101
10102 2000-06-23  Havoc Pennington  <hp@redhat.com>
10103
10104         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10105         instead of making up a bogus name for first_para_mark
10106
10107         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10108         0 as a context ID
10109
10110 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10111
10112         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10113
10114 2000-06-21  Havoc Pennington  <hp@pobox.com>
10115
10116         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10117         we didn't check window->bg_pixmap != GDK_NO_BG.
10118
10119         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10120         gdk-pixbuf
10121
10122 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10123
10124         * docs/faq/gtk-faq.sgm: Move file to here.
10125           TODO: Update Makfile.am 
10126
10127 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10128
10129         * docs/gtk-faq.sgm: Add Section 2
10130
10131 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10132
10133         * docs/gtk-faq.sgm: New file. Start of DocBook
10134           version of the FAQ.
10135
10136 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10137
10138         * configure.in (GDK_PIXBUF_MAJOR): Define version
10139         numbers for GDK_PIXBUF_*, as they get substituted
10140         into a header file. Need to consider versioning
10141         for gdk-pixbuf more carefully later.
10142
10143 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10144
10145         Work with srcdir != builddir.   
10146         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10147         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10148         * demos/testpixbuf.c: Likewise.
10149         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10150         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10151         <gdk/x11/gdkx.h>.
10152         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10153         "gdk-pixbuf.h".
10154         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10155
10156 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10157
10158         * TODO.xml: Change 1.4 version numbers to 2.0.
10159
10160 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10161
10162         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10163         fixups to GTK+ standard.
10164
10165 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10166
10167         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10168         gdk-pixbuf.
10169
10170         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10171         fixups for GObject.
10172
10173         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10174         gdk-pixbuf with GDK dependencies moved into GDK.
10175         
10176         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10177         move gdk-pixbuf-loader here until GObject has signals.
10178
10179         * demos/: New directory of demos. Move demos from
10180         gdk-pixbuf here.
10181
10182         * demos/pixbuf-init.c: Small bit of code to check for
10183         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10184         set GDK_PIXBUF_MODULEDIR appropriately.
10185
10186         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10187         define which no longer makes sense.
10188
10189 2000-06-21  Havoc Pennington  <hp@redhat.com>
10190
10191         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10192         gtk_get_default_language
10193
10194         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10195         new function to get the default language
10196
10197         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10198         s/gtk_text_view_style_values/gtk_text_style_values/
10199
10200         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10201         Add a "language" field to tags.
10202
10203         (gtk_text_tag_set_arg): Fix bug in setting
10204         "bg_full_height_set" tag.
10205
10206 2000-06-21  Havoc Pennington  <hp@redhat.com>
10207
10208         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10209         in the interfaces
10210
10211         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10212         stuff instead when possible.
10213
10214         * gtk/gtktexttypes.h: Delete some unused constants
10215
10216         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10217         testtextbuffer.c: use glib instead of custom unicode routines
10218
10219 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10220
10221         * docs/es/: Removed mistakenly added generated sgml
10222
10223         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10224         Remove outdated info files.
10225
10226         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10227         Moved tutorial files into subdir
10228
10229         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10230         subdir.
10231
10232         * docs/man/gtk_button.pod: Remove. (contents will be
10233         integrated into gtk-reference button page.)
10234
10235         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10236         docs/faq/Makefile.am: Adjust for new organization
10237
10238 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10239
10240         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10241         not $(MKINSTALLDIRS)
10242
10243 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10244
10245         * gtk/testgtk.c (create_text): Finish the job Elliot started
10246         of removing font setting test for text widget. (Since text widget
10247         and GdkFont are not deprecated, and cause portability problems.)
10248
10249 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10250
10251         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10252         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10253         Remove use of libunicode in favor of new GLib functions.
10254
10255         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10256         nano-x, framebuffer. The X11 include is just a hack until we get
10257         the necessary functions in gdkcolor.h, so there is no reason to
10258         add other includes of platforms.
10259
10260         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10261         window bigger than the screen change.
10262
10263         * gtk/testgtk.c: Revert some random changes from Elliot
10264         that had no particular point and were causing testgtkrc
10265         not to function correctly.
10266         
10267         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10268         because GdkSegment and GdkRegionBox have the same fields,
10269         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10270         results in clearer code.
10271
10272         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10273         gdk_input_translate_coordinates): Fix missed GdkObjectification
10274
10275 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10276
10277         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10278         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10279
10280 2000-06-20  Havoc Pennington  <hp@redhat.com>
10281
10282         * modules/linux-fb/Makefile.am: Make this compile
10283         without framebuffer enabled
10284
10285         * gdk/linux-fb/Makefile.am: Add conditional to not build
10286         framebuffer unless specified in configure
10287
10288         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10289         the size of the target instead of source if -1 was passed for
10290         width/height
10291
10292         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10293         width/height confusion.
10294
10295 2000-06-19  Havoc Pennington  <hp@redhat.com>
10296
10297         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10298         GDK_DRAWABLE_XID. In the future, we probably want to make it
10299         faster with G_DISABLE_CHECKS turned on.
10300
10301 2000-06-14  Havoc Pennington  <hp@redhat.com>
10302
10303         * gdk/Makefile.am: add gdkpixmap.c
10304
10305         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10306         s/gdk_image_init/_gdk_windowing_image_init
10307
10308         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10309         ref/unref
10310
10311         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10312
10313         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10314         GdkWindowType is now non-deprecated; 
10315         change gdk_window_get_type() compat to be
10316         gdk_window_get_window_type().
10317
10318         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10319
10320         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10321         virtual GObject. Make all functions call into the vtable.
10322         Move gdk_image_put() guts in here. Remove GdkDrawableType
10323         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10324         draw_image, get_depth, get_size, set_colormap, get_colormap,
10325         get_visual added to the vtable.
10326         
10327         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10328         GObject. Virtualize everything. 
10329         (gdk_gc_new_with_values): remove check for destroyed window,
10330         because now GdkWindow::create_gc will check this.
10331         (gdk_gc_set_values): New function to set GC values, this 
10332         was already implemented but wasn't in the header
10333
10334         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10335
10336         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10337         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10338         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10339         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10340         _gdk_windowing_window_init, rename gdk_image_init to
10341         _gdk_windowing_image_init.
10342         
10343         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10344         (gdk_draw_layout): Remove check for destroyed window, 
10345         because all the drawable methods already check it.
10346         
10347         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10348         Add gdkpixmap.c which contains implementation of GdkDrawable
10349         virtual table (by chaining to a platform-specific implementation
10350         object).
10351         
10352         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10353         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10354         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10355         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10356         GdkColormapPrivate. 
10357
10358         * gdk/gdktypes.h: #include <glib-object.h>
10359
10360         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10361         Move most functionality to platform-specific implementation
10362         object. GdkWindow itself now handles the backing store, then
10363         chains to the platform-specific implementation.
10364         (gdk_window_get_window_type): return GdkWindowType of the window.
10365         (gdk_window_peek_children): New routine, returns the children of 
10366         a GdkWindow
10367         (gdk_window_get_children): Was in X11-specific code and did 
10368         XQueryTree. Changed to simply return a copy of window->children; 
10369         so it can go in cross-platform code.
10370         
10371         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10372
10373         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10374         GdkColormap; just changed to use the new private data instead
10375         of casting to GdkColormapPrivate.
10376
10377         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10378         gdk_cursor_new().
10379
10380         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10381         (private data member in the GObject). 
10382         (xdnd_manager_source_filter): Function had broken 
10383         error handling, fix it (use gdk_error_trap_push).
10384
10385         * gdk/x11/gdkdrawable-x11.c: This file now implements
10386         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10387         base class is purely for the convenience of the X port,
10388         and not part of the interface to cross-platform GDK.
10389
10390         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10391         
10392         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10393         specific to X, and returned by the create_gc virtual method
10394         of GdkDrawableImplX11. 
10395         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10396         rather than gchar, this was also changed in the GdkGC vtable.
10397         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10398         mask is 0, return immediately, instead of checking every flag.
10399         This is faster, and keeps us from segfaulting if values is NULL
10400         and the mask contains some nonzero flags.
10401
10402         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10403         GdkWindow.
10404
10405         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10406         GdkWindowPrivate is gone.
10407
10408         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10409
10410         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10411         remove the image_put stuff that got transferred to GdkDrawable.
10412         
10413         * gdk/x11/gdkinput.c: renamings
10414
10415         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10416
10417         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10418
10419         * gdk/x11/gdkprivate-x11.h: indentation fixes
10420
10421         * gdk/x11/gdkproperty-x11.c: renamings
10422
10423         * gdk/x11/gdkselection-x11.c: renamings
10424
10425         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10426         implements the platform-specific "impl" object.
10427         Moved gdk_window_get_children to gdk/gdkwindow.c
10428
10429         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10430         that no longer exist. Add declaration of GdkGCX11 object here.
10431         Fix all the macros to still work. 
10432
10433         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10434         GdkDragContext from the boxed types since they are now GObjects.
10435
10436         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10437         moved xthickness/ythickness into the instance. GtkStyleClass
10438         functions are now in the standard vtable for GtkStyle, so you have
10439         to create a GObject subclass to write a theme engine.
10440         (gtk_style_copy): fixed a leaked PangoFontDescription
10441         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10442         can be the standard GObject function.
10443         
10444         * Throughout GTK:
10445         s/style->klass->[xy]thickness/style->[xy]thickness
10446         s/pango_layout_unref/g_object_unref/
10447
10448         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10449         
10450         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10451         accessing GDK internals.
10452
10453         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10454         accessing GDK internals.
10455
10456 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10457
10458         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10459
10460         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10461         problem by calculating event position relative to the trough
10462         rather than the slider.
10463         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10464
10465         * gdk/gdkgc.h: Add GDK_NOR.
10466
10467         * configure.in, Makefile.am: Add modules top level dir
10468         * configure.in: Only use pangox library if building x11 target.
10469         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10470
10471 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10472
10473         * gtk/gtkcolorsel.c: Change private class member to be named
10474         private_data throughout the file.
10475
10476         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10477         private_data to avoid clashing with keyword.
10478
10479 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10480
10481         * gdk/gdkdnd.h: Add comment to remove warning.
10482
10483 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10484
10485         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10486         Byelorussian language; changed the Makefile and file names 
10487         to reflect that.
10488
10489 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10490
10491         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10492         rather than gdk_window_hide; this makes things work
10493         correctly if the window is programmatically hidden while
10494         iconified.
10495
10496 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10497
10498         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10499         cut and paste typo where wrong pixmap was being
10500         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10501
10502 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10503
10504         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10505         Add helper function to compute format / bytes 
10506         relationship. Use in a couple places to fix up
10507         errors which assume 8 * format.
10508
10509         * gtk/gtkselection.c (gtk_selection_request): Use 32
10510         rather than 8 * sizeof (GdkAtom), to work correctly
10511         on Alpha.
10512
10513 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10514
10515         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10516         libgtk.la
10517         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10518         versions
10519
10520         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10521         checking macros return NULL since the function has a return value.
10522
10523 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10524
10525         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10526         GTK+ from building at all.
10527
10528         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10529
10530 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10531
10532         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10533         gtk/Makefile.am: make it possible to configure gtk for different
10534         targets on the same platform. The library name is now 
10535         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10536         flag. Only the x11 target compiles right now.
10537         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10538         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10539         * gdk/nanox/gdk*generic*: delete generic region code.
10540         * gdk/linux-fb/gdk*generic*: delete generic region code.
10541         * README.nanox: update information.
10542         
10543 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10544
10545         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10546         prepend not append. (Pointed out by Brett Hall.)
10547
10548 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10549
10550         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10551
10552 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10553
10554         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10555         need this later, and this makes sure that the atexit for
10556         glib gets called after that for GDK, so atexits are
10557         properly ordered for object leak checking.
10558
10559         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10560
10561         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10562         pango_x_shutdown_display()
10563
10564         * gtk/simple.c (main): Close window on destroy.
10565
10566 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10567
10568         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10569         to treat initial creation different from setting with 
10570         regards to the graphics-exposures parameter, so add a parameter
10571         indicating whether this is initial or not.
10572
10573 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10574
10575         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10576         to sort of work by adding an extra return_exposes arg
10577         to gdk_event_translate() - it might be better to simply
10578         deprecate the function altogether and force people to rewrite
10579         without it. gdk_window_scroll() handles most of it, and where
10580         gdk_window_scroll() doesn't work, simply redrawing more does.
10581
10582         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10583         assertion.
10584
10585         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10586
10587         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10588         bunch of pretty much useless /* Print debugging info */ comments 
10589         which had drifted away from the code they were commenting.
10590
10591 2000-06-02  Havoc Pennington  <hp@pobox.com>
10592
10593         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10594         is in working order.
10595         
10596         * gtk/testtext.c: Change to reflect anonymous mark API
10597
10598         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10599
10600         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10601         field, which was unused.
10602
10603         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10604         saves some typing.
10605
10606         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10607
10608         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10609         flag on the insertion point and selection bound
10610
10611         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10612         make mark-manipulation functions take a GtkTextMark* instead of a
10613         mark name.
10614         
10615         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10616         GtkTextMarkBody; will be used to detect attempts to delete
10617         the permanent marks (insert and selection bound)
10618
10619         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10620
10621 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10622
10623         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10624         flag to on.
10625
10626         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10627         Honor DOUBLE_BUFFRED_FLAG
10628
10629         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10630         function to set the DOUBLE_BUFFERED flag.
10631
10632         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10633         or not exposes done on the widget should be double-buffered.
10634
10635         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10636         to be what would be expected. (Fixes problem with a
10637         g_return_if_fail() validating a TextDirection enumeration)
10638
10639 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10640
10641         * gtk/gtkwidget.c: Remove all references to 
10642         offscreen flag which was no longer used.
10643
10644         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10645
10646         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10647         for non-null label_widget->parent.
10648
10649         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10650         which no longer was used.
10651
10652         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10653
10654         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10655         for null arguments.
10656
10657         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10658         check for destroyed windows.
10659
10660 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10661
10662         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10663         the slave context there.
10664
10665         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10666         identical to GtkWindow.
10667
10668 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10669
10670         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10671         pangox to here, so we can write them independent of rendering
10672         system, using GDK primitives.
10673
10674         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10675         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10676         since we have a rendering-system independent implementation in
10677         terms of draw_glyphs().
10678         
10679         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10680         function to render a single line.
10681
10682         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10683         into ../gdkpango.c, which simplifies things, since we
10684         don't have to deal with raw X gc's.
10685
10686 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10689         get the logical attributes for a given GtkTextLine.
10690
10691 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10692
10693         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10694         g_locale_get_codeset() to g_get_codeset() change.
10695
10696 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10697
10698         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10699         descriptions.
10700
10701         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10702         the entry.
10703
10704         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10705         redoing (vastly simplifying) for Pango. Still needs quite
10706         a bit of work. (Size selection is currently poor. List of 
10707         predefined sizes is not a good idea, since all of these
10708         sizes won't necessarily be distinct.)
10709
10710 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10711
10712         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10713         CODESET results for LANG=C.
10714
10715 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10716
10717         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10718         which takes a stringized pango font description;
10719         ignore the older 'font' and 'fontset' declarations.
10720
10721         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10722         field with a GdkFont derived via gdk_font_from_description(),
10723         for compatibility. (Should we just remove it entirely?
10724         Probably too much compatibility breakage, but people
10725         should be migrating to the new Pango stuff as quickly
10726         as possible.)
10727
10728 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10729
10730         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10731
10732 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10733
10734         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10735         redoing; there are some bugs in size allocation right
10736         now, the semi-existant distinction between header / day
10737         fonts was removed, but, with Pango, could actually
10738         be made functional in a nice way.
10739         
10740         * gtk/testcalender: Move calender from examples into this
10741         directory as a test program. (We really need to restrcture
10742         testgtk into a whole directory full of tests for every
10743         widget or functionality group, separated into multiple .c
10744         files.)
10745
10746 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10747
10748         * gtk/testgtk.c (file_exists): Fix stupid typo that
10749         was keeping RC file from being loaded.
10750
10751         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10752         RC file font code.
10753
10754 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10755
10756         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10757         Add function to load a GdkFont from a PangoFontDescription.
10758
10759 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10760
10761         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10762         variable should be of type GdkEventPrivate.
10763
10764 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10765
10766         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10767         to have any widget for the label, use a GtkLabel widget
10768         to display the text. (Based partially on a patch from
10769         Anders Carlson.)
10770
10771         (Quite a bit of code reorganization - strip 90% of the
10772         guts out of gtkaspectframe and add a single virtual
10773         func to GtkFrameClass - compute_child_allocation.)
10774
10775 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10776
10777         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10778         (Removed clist->row_center_offset field because caching
10779         it wasn't saving time or code, added private function
10780         _gtk_clist_create_cell_layout()).
10781
10782 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10783
10784         * gtk/gtkaccellabel.c: Pangoized.
10785
10786         * gtk/[hv]ruler.c: Pangoized
10787
10788 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10789
10790         * gtk/gtkfilesel.c (gtk_file_selection_init):
10791         Use gtk_clist_set_column_auto_resize() to remove need
10792         need for manual column width computations.
10793
10794 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10795
10796         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10797         ensuring Pango correctness, and considerably simplifying the
10798         code.
10799         
10800         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10801
10802         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10803         getting of numbers of lines.
10804
10805         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10806         to the actual requested width of the lable, not to the wrap
10807         width we set.
10808
10809         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10810
10811         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10812           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10813
10814         * gtk/gtktextview.c: Fix structure inheritance.
10815
10816         * gtk/gtkprogressbar.c: Pangoize.
10817
10818 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10819
10820         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10821         in a function.
10822
10823         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10824         bug with computing line tops.
10825
10826         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10827
10828 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10829
10830         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10831         and y_offset coordinates to do what we need now. (The offset between
10832         buffer and layout coordinates has been reintroduced, but is a 
10833         bit different than before.)
10834
10835         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10836         handle the adjustments ourselves, and scroll as necessary using
10837         the new gdk_window_scroll().
10838         
10839         The advantage of this is that when we are incrementally revalidating,
10840         we are essentially rearranging things around the visible portion
10841         of the screen. With the old setup, the visible portion of the
10842         screen was moved around in the layout, so scrolling and redrawing
10843         to track that caused jumping of the display. Since we now
10844         control the scrolling ourselves, we can suppress this and
10845         only redraw when things actually change.
10846
10847 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10848
10849         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10850         the region not just redisplay it after-all, since we store the
10851         cursors in the LineDisplay. (Ugly interactions here between
10852         GtkLayout and GtkTextBTree here.)
10853         
10854         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10855
10856 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10857
10858         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10859         Added function to scroll contents of a window while keeping the
10860         window constant. Works by XCopyArea or guffaw-scrolling depending
10861         on the details of how the window is set up. (guffaw-scrolling
10862         still needs to be filled in.)
10863
10864 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10865
10866         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10867         move the debugging that was tied to a global variable
10868         to that.
10869
10870         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10871
10872         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10873         validated flag, in line data instead of setting height/width to
10874         -1. This allows us to perform operations with partially invalid
10875         buffer (using the old size for invalid lines) and thus to do
10876         incremental vaidation. Keep height/width aggregates up to date
10877         when deleting text and rebalancing the tree.
10878
10879         * gtk/gtktextbtree.[ch]: Add functions validate a line
10880         (gtk_text_btree_validate_line), and to validate up
10881         to a number of pixels (gtk_text_btree_validate).
10882
10883         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10884         that indicates that something is changed and a revalidation
10885         pass is needed. Change ::need_repaint to ::changed, and
10886         make it take old and new yranges instead of a rectangle.
10887
10888         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10889         the line_data_destroy() function from 
10890         gtk_text_btree_add_view() to a virtual function in 
10891         GtkTextLayout
10892
10893         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10894         since we are handling partial repaints in a different fashion
10895         now.
10896
10897         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10898         of the selection instead of queueing a repaint on the
10899         entire widget.
10900
10901         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10902         get_selection_bounds() down to btree, make the function
10903         in buffer a wrapper around the btree function.
10904
10905         * gtk/gtktextlayout.[ch]: Add functions to check if the
10906         layout is valid and to recompute either a range of pixels
10907         aroudn a line or a certain total number of pixels.
10908
10909         * gtk/gtktextlayout.[ch]: Cache a single line display;
10910         now that we only redraw the needed portions, the hit rate
10911         for this cache is quite high.
10912         
10913         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10914         on the screen so that when re-laying-out the buffer, we can
10915         keep the same place. This requires connecting to ::value_changed
10916         on the adjustments
10917
10918         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10919         the buffer after we receive an ::invalidated signal.
10920         
10921 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10922
10923         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10924         to max of allocation and layout size, not just to the
10925         layout size.
10926
10927         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10928         Invalidate window so it gets redrawn properly.
10929
10930         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10931         to mean the entire window.
10932
10933         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10934         into public header.
10935
10936 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10937
10938         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10939         to get the name of a mark.
10940
10941         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10942         to find the paragraph from a y position.
10943
10944 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10945
10946         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10947         nodes have width/height >= 0, not > 0.
10948
10949 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10950
10951         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10952         Add a size_only flag, so when we only need the size, we don't create
10953         useless appearance attributes.
10954
10955         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10956         duplicate setting of font description.
10957
10958         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10959
10960 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10961
10962         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10963         EXTRA_DIST. It does not work well when the file that
10964         everything depends on is not in the tarball.
10965
10966 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10967
10968         * gtk/testgtk.c: Some hacks and fixes so that it basically
10969         works when not sitting in the GTK+ build tree.
10970
10971 2000-05-03  Havoc Pennington  <hp@redhat.com>
10972
10973         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10974         Properly determine the ordering of the tag root and the current
10975         line within the tree. Previous algorithm only worked if the tag
10976         root's immediate parent was the common root of both the current
10977         line and the tag root.
10978
10979 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10980
10981         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10982         alignment.
10983
10984         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10985         the widget text directional dynamically.
10986
10987         * gtk/gtktextview.[ch]: Added functions to get and set default
10988         wrap mode.
10989
10990 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10991
10992         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10993         in cursor location computation.
10994
10995 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10996
10997         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10998         vadjusment values properly when layout gets smaller.
10999
11000         * gtk/gtktextview.c (need_repaint_handler): Areas being
11001         passed in are far completely inaccurate, and sometimes
11002         too small, so, for now, just queue a redraw on the
11003         whole visible region.
11004
11005 2000-04-25  Havoc Pennington  <hp@redhat.com>
11006
11007         * gtk/gtktextbtree.c (summary_destroy): new function to 
11008         destroy tag summary nodes
11009         (gtk_text_line_next_could_contain_tag): this function was 
11010         totally broken if the line passed in wasn't below the tag
11011         root. Fix it.
11012         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11013         "wildcard" case, we have to do a linear scan. Blah.
11014         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11015         we have to do the linear scan
11016         (tag_removed_cb): When a tag is removed from the tag table, 
11017         remove the GtkTextTagInfo node from the btree.
11018         (gtk_text_btree_spew): Implement the spew function, for 
11019         our debugging pleasure.
11020
11021 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11024         a problem with referring to the wrong buffer.
11025
11026         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11027
11028         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11029         font description to gtk_style_new() - otherwise things
11030         don't work without a .gtkrc file.
11031
11032         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11033         tags table if we create it ourself, too.
11034
11035         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11036         it was conflicting with XKB modifiers.
11037
11038         * gtk/gtktextview.[ch]: Add simple support for 
11039         GtkIMContext.
11040
11041 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11042
11043         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11044         with deletion from last commit.
11045
11046 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11047
11048         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11049         in the context from the current locale.
11050         
11051         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11052         context, not hardcoded value.
11053
11054         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11055         not logical.
11056
11057 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11058
11059         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11060         attributes - that doesn't handle partial-glyph selection
11061         properly. Instead use new pango_layout_line_get_x_ranges()
11062         functionality to draw the selection.
11063
11064         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11065         now properly handles out-of-range coordinates.
11066
11067         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11068
11069         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11070         public.
11071
11072         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11073         for paragraphs opposite to the base direction of the widget.
11074
11075         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11076
11077         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11078         causes Arabic words to reshape as you cursor through.
11079
11080         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11081         cursor position when moving vertically with the arrow keys and
11082         scrolling with page-up/page-down. (Arrow keys save only the X,
11083         scrolling saves both X and Y.)
11084
11085         This means you can line-up / line-down or page-up / page-down
11086         without losing your place, and also that moving vertically
11087         with the cursor keys keeps the same X position, not the same
11088         character count:
11089
11090         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11091         arrow keys move by display lines, not paragraphs.
11092
11093 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11094
11095         * gtk/gtklayout.c: Make sure that the bin window is at least
11096         as big as the allocation. (Should we also make sure that the
11097         bin window is big enough to completely cover widget->window?)
11098
11099         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11100         function to get the onscreen rectangle.
11101
11102         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11103         for offsets in window coordinates.
11104
11105 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11106
11107         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11108         confusion.
11109
11110         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11111         from the widget direction.
11112
11113         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11114         Add a "direction" attribute.
11115
11116         * gtk/gtktextview.c: global s/tkxt/text_view/.
11117
11118         * gtk/testtext.c: Added long block of text in Arabic, to test out
11119         the direction attributes. (Some problems with the shaping system
11120         for arabic become obvious - like the fact the cursor splits words
11121         into unjoined pieces.)
11122
11123 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11124
11125         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11126
11127         * gtk/gtktextlayout.c: Fix up alignment.
11128
11129         * gtk/testtext.c: Add some tests for centering, wrapping.
11130
11131 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11132
11133         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11134         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11135         If we wrote GTK+-specific layout-render function this could just replace
11136         the draw_layout() operation in the vtable.
11137
11138         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11139         pango_layout_get_cursor_pos() and use that function.
11140
11141         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11142         is a non-static symbol.
11143
11144         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11145         with gtk_text_btree_find_line_by_y()
11146
11147         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11148         renderer that handles GtkTextAppearance attributes.
11149
11150         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11151
11152           - Move the values in the style that don't affect geometry into a
11153             GtkTextAppearance structure.
11154           - Change underline to take a PangoUnderline and "font" a string
11155             representation of a font description
11156           - Add a "font_desc" attribute which takes a FontDescription structure.
11157
11158         * gtk/gtktextlayout.[ch]:
11159
11160           - Get rid of the display-line list per each line. Instead, we
11161             generate, on demand, a GtkTextLineDisplay structure which]
11162             contains a PangoLayout * and other necesary information
11163             (offsets, cursor locations) for displaying a paragraph.
11164           - Get rid of the code to wrap lines, create display chunks,
11165             etc. Instead, we just go through a paragraph and convert
11166             it into the necessary inputs to a PangoLayout.
11167           - Implement a new attribute type, GtkTextAttrAppearance. This
11168             holds a GtkTextAppearance, and is used to pass colors, 
11169             stipple, etc, through from the layout to the display without
11170             having to use lots and lots of individual attributes.
11171           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11172             in terms of PangoLayout functions.
11173         
11174         * gtk/gtktextview.c: 
11175          
11176           - Handle passing the necessary PangoContext to the layout
11177           - Some fixups in painting to deal with the automatic backing store
11178             and offsetting of GTK+-1.4
11179           - Add a style_set handler so that the default style reacts
11180             properly to theme changes.
11181         
11182         * gtk/gtktext?*.[ch]: Random code-style fixes.
11183
11184         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11185
11186 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11187
11188         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11189         in original form preparatory to Pango-ization and gdkimcontext-ization.
11190
11191 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11192
11193         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11194         so that we can derive from gtkimcontext in language bindings properly.
11195
11196 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11197
11198         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11199         Add a compose table including (almost) all the compose combinations
11200         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11201         data in the XIM implementation.
11202
11203         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11204         Moved functions to convert keyvalues from and to unicode here from
11205         the win32 port and made them public.
11206
11207 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11208
11209         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11210
11211 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11212
11213         * gtk/gtkimcontext.[ch]: Base class for new input context system
11214
11215         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11216         the real input context implementation to be loaded from modules
11217         and switched on the fly.
11218
11219         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11220         context that just does direct keysymbol => unicode translation.
11221
11222         * gtk/gtkentry.[ch]: Start switching editing over to using
11223         GtkInputContext. (No handling of preedit yet.)
11224
11225 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11226
11227         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11228         many substitutions. (klass should not be subsituted.)
11229
11230 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11231
11232         * configure.in: Add checks for Pango
11233
11234         * configure.in docs/Makefile.am: Add test for sgml2html
11235         and allow 'make dist' without building html, but print out
11236         warnings in that case. (For making snapshots)
11237
11238         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11239         Add Pango libraries and C flags
11240
11241         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11242         Add function (gdk_draw_layout) to draw a pango layout.
11243
11244         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11245         for getting Pango contexts for GDK.
11246
11247         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11248
11249         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11250         editing.
11251
11252         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11253         keysym => unicode translations. More languages can be added
11254         here, but real input-method support is needed.
11255
11256         * docs/Changes-1.4.txt: Added note about entry behavior.
11257         
11258         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11259         to set the reading direction for a widget and the global direction.
11260         Add test which allows toggling the global direction. Two private
11261         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11262
11263         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11264           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11265
11266         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11267
11268         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11269         underlining now handled by Pango.
11270
11271         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11272         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11273         is temporary.)
11274
11275         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11276         convenience functions for creating contexts and layouts for widgets.
11277
11278         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11279
11280 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11281
11282         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11283         titles to be active, even if they aren't visible.
11284         (gtk_clist_column_titles_passive):  Ditto.
11285
11286 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11287
11288         * gtkmenu.c:
11289         * gtkmenu.h:
11290         * gtktypeutils.h: Spelling/grammar fixes in comments.
11291
11292 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11293
11294         * gdk/nanox/*.h: add missing header files.
11295
11296 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11297
11298         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11299         send_event to TRUE.
11300         (gtk_drawing_area_size): queue a resize.
11301
11302 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11303
11304         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11305         the handlers, also invalidate them. bug nailed down by Karl Nelson
11306         <kenelson@ece.ucdavis.edu>.
11307
11308 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11309
11310         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11311         "(nil)" foundries, patch from Grigorios Magklis.
11312
11313         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11314         on non-available fonts, based on a patch by Grigorios Magklis
11315         <maglis@cs.rochester.edu>.
11316
11317 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11318
11319         * gdk/x11/gdkregion-generic.c: If a region does not have any
11320         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11321         instead of GDK_OVERLAP_RECTANGLE_IN.
11322
11323 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11324
11325         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11326         OFFSCREEN, as it is no longer necessary.
11327
11328 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11329
11330         * gtk/gtkcolorsel.c: Patch from David Santiago
11331         <mrcooger@cyberverse.com> to change things so that the 
11332         indicator of the active palette entry is done independently,
11333         not via the focus, since it should always be visible.
11334
11335 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11336
11337         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11338         refcount leaks as in the X11 backend.
11339
11340         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11341         cosmetics.
11342
11343         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11344         backend. Add _gdk_windowing_window_destroy().
11345
11346         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11347         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11348         either, but these probably do exist on nanox?)
11349         
11350         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11351         which isn't necessarily defined by <math.h>.
11352
11353         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11354         ancestry past GtkObject.
11355
11356         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11357         from DLL on Win32.
11358
11359         * gtk/gtk.def: Update corresponding to recent changes.
11360
11361         * gtk/makefile.{cygwin,msc}: Updates.
11362
11363 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11364
11365         * docs/Changes-1.4.txt: A bit of editing.
11366
11367         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11368         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11369         to clear the update area for the window, and clear it
11370         when hiding a window.
11371
11372         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11373         if window destroyed.
11374
11375         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11376
11377         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11378         gdk_window_destroy() to the generic code, since there was a lot of 
11379         window-system-independent logic it in. Add a function:
11380         
11381          _gdk_window_destroy() 
11382
11383         to the internal API to destroy a window without unreferencing it.
11384         Add a function:
11385
11386          _gdk_windowing_window_destroy()
11387
11388         That does the windowing-system-dependent part of destroying 
11389         the window.
11390
11391 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11392
11393         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11394
11395 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11396
11397         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11398         Make gtk_widget_shape_combine_mask() keep a reference count on
11399         the pixmap since it keeps it around.
11400
11401 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11402
11403         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11404         leak.
11405
11406         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11407         leak with event filters.
11408
11409 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11410
11411         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11412         signal handlers with the right data arguments. (Fixes
11413         some warnings when a widget was repeatedly set as a drag
11414         destination.)
11415
11416         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11417         window so we can avoid avoid setting the DND properties on the
11418         toplevel window repeatedly.
11419
11420 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11421
11422         * gdk/win32/gdkwin32.h: Define more message types missing from
11423         mingw headers.
11424
11425         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11426         call gdk_window_destroy_notify(). It was never called. This
11427         probably meant that the GdkWindow was never freed. Thanks Owen for
11428         noticing (!).
11429
11430         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11431         window as destroyed before calling DestroyWindow(). DestroyWindow()
11432         causes a call to the window procedure (gdk_WindowProc), which
11433         calls gdk_event_translate(), which calls
11434         gdk_window_destroy_notify(), which gets confused unless the window
11435         is set as destroyed.
11436
11437         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11438         this function to indicate it's win32 only. Put inside #ifdef
11439         G_ENABLE_DEBUG.
11440
11441         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11442         debugging function. (gdk_event_translate:) Add a default branch
11443         that uses the above function to print debug messages with all
11444         Windows messages symbolically.
11445
11446         * gdk/win32/gdkprivate-win32.h: Declare it, and
11447         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11448
11449 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11450
11451         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11452         public header file.
11453
11454 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11455
11456         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11457
11458         * gtk/gtktext.c: made the adjustments no-construct args, simply
11459         provide default adjustments.
11460         (gtk_text_destroy): release adjustments.
11461
11462         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11463         adjustment argument non-construct.
11464
11465         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11466         instead of in finalize.
11467         (gtk_progress_get_text_from_value): 
11468         (gtk_progress_get_current_text): 
11469         (gtk_progress_set_value): 
11470         (gtk_progress_get_percentage_from_value): 
11471         (gtk_progress_get_current_percentage): 
11472         (gtk_progress_set_percentage): 
11473         (gtk_progress_configure): ensure an adjustment is present.
11474
11475 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11476
11477         * gtk/gtkcolorsel.[hc]:
11478         * gtk/gtkcolorseldialog.[hc]:
11479         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11480         their parent implementation, use bit fields for boolean values, don't
11481         create unused widgets, usage of glib types, braces go on their own
11482         lines, function argument alignment, #include directives etc. etc. etc..
11483
11484         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11485
11486 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11487
11488         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11489
11490         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11491         of NULL.
11492
11493         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11494         to freed data.
11495         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11496
11497         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11498         to NULL when the toplevel is getting destroyed.
11499         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11500         (gtk_menu_destroy): 
11501         (gtk_menu_init): store the information of whether we have to
11502         readd the initial child ref_count during destruction in a new
11503         GtkMenu field needs_destruction_ref_count.
11504
11505         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11506         here, those reading: learn from my mistake! ;)
11507         in order for set_?adjustment to support a default adjustemnt if
11508         invoked with an adjustment pointer of NULL, the code read (pseudo):
11509         if (v->adjustment) unref (v->adjustment);
11510         if (!adjustment) adjustment = adjustment_new ();
11511         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11512         now imagine the first unref to actually free the old adjustment and
11513         adjustment_new() creating a new adjustment from the very same memory
11514         portion. here, the latter comparision will unintendedly fail, and
11515         all hell breaks loose.
11516         (gtk_viewport_set_hadjustment):
11517         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11518         after unreferencing it.
11519
11520         * gtk/gtkcontainer.[hc]: removed toplevel registration
11521         functions: gtk_container_register_toplevel(),
11522         gtk_container_unregister_toplevel() and
11523         gtk_container_get_toplevels() which had wrong semantics
11524         anyways: it didn't reference and copy the list.
11525
11526         * gtk/gtkwindow.c: we take over the container toplevel registration
11527         bussiness now. windows are registered across multiple destructions,
11528         untill they are finalized. the initial implicit reference count
11529         users are holding on windows is removed with the first destruction
11530         though.
11531         (gtk_window_init): ref & sink and set has_user_ref_count, got
11532         rid of gtk_container_register_toplevel() call. add window to
11533         toplevel_list.
11534         (gtk_window_destroy): unref the window if has_user_ref_count
11535         is still set, got rid of call to
11536         gtk_container_unregister_toplevel().
11537         (gtk_window_finalize): remove window from toplevel list.
11538         (gtk_window_list_toplevels): new function to return a newly
11539         created list with referenced toplevels.
11540         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11541
11542         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11543         adjustment a non-construct arg.
11544         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11545         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11546         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11547
11548         * gtk/gtkrange.c: added some realized checks.
11549         (gtk_range_destroy): get rid of the h/v adjustments in the
11550         destroy handler instead of finalize. remove timer.
11551         (gtk_range_get_adjustment): demand create adjustment.
11552
11553         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11554         we simply create them on demand now and get rid of them in
11555         the destroy handler.
11556         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11557         destroy handler instead of finalize.
11558         (gtk_viewport_get_hadjustment): 
11559         (gtk_viewport_get_vadjustment): 
11560         (gtk_viewport_size_allocate): demand create h/v adjustment
11561         if required.
11562
11563         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11564         gtk_widget_real_destroy () functionality.
11565         (gtk_widget_real_destroy): reinitialize with a new style, instead
11566         of setting widget->style to NULL.
11567
11568 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11569
11570         * gtk/gtkcalendar.c:
11571         * gtk/gtkbutton.c: ported _get_type() implementation over to
11572         GType, either to preserve memchunks allocation facilities,
11573         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11574
11575         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11576         over. prepare for ::destroy to be emitted multiple times.
11577         removed reference tracer magic. chain into GObjectClass.shutdown()
11578         to emit ::destroy signal.
11579
11580         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11581         fundamental.
11582
11583         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11584         cludge.
11585
11586         * gtk/gtksocket.c:
11587         * gtk/gtkplug.c:
11588         * gtk/gtklayout.c:
11589         * gtk/gtklabel.c:
11590         * gtk/gtkargcollector.c:
11591         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11592         not being a fundamental anymore, and to work with the new
11593         type system (nuked fundamental type varargs clutter).
11594
11595         * gtk/*.c: install finalize handlers in the GObjectClass
11596         part of the class structure.
11597         changed direct GTK_OBJECT()->klass accesses to
11598         GTK_*_GET_CLASS().
11599         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11600
11601         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11602         GType. made most of the GTK_*() type macros and Gtk* typedefs
11603         simple wrappers around macros and types provided by GType.
11604         most notably, a significant portion of the old API vanished:
11605         GTK_TYPE_MAKE(),
11606         GTK_TYPE_SEQNO(),
11607         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11608         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11609         GTK_TYPE_ARGS,
11610         GTK_TYPE_CALLBACK,
11611         GTK_TYPE_C_CALLBACK,
11612         GTK_TYPE_FOREIGN,
11613         GtkTypeQuery,
11614         gtk_type_query(),
11615         gtk_type_set_varargs_type(),
11616         gtk_type_get_varargs_type(),
11617         gtk_type_check_object_cast(),
11618         gtk_type_check_class_cast(),
11619         gtk_type_describe_tree(),
11620         gtk_type_describe_heritage(),
11621         gtk_type_free(),
11622         gtk_type_children_types(),
11623         gtk_type_set_chunk_alloc(),
11624         gtk_type_register_enum(),
11625         gtk_type_register_flags(),
11626         gtk_type_parent_class().
11627         replacements, where available are described in ../docs/Changes-1.4.txt.
11628         implemented compatibility functions for the remaining API.
11629
11630         * configure.in: depend on glib 1.3.1, use gobject module.
11631
11632 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11633
11634         * TODO.xml: Various updates to current status.
11635
11636 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11637
11638         * gtk.m4: Print out version when test succeeds.
11639
11640 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11641
11642         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11643         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11644         
11645         (Original triangle color selector from Simon Budig
11646         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11647         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11648         Santiago <mrcooger@cyberverse.com>)
11649
11650         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11651         out into a separate widget.
11652
11653         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11654         and opacity controls.
11655
11656 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11657
11658         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11659         snuck in prematurely.
11660
11661 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11662
11663         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11664         had deleted a ! operator by mistake, which caused
11665         GDK_SELECTION_CLEAR events never to be generated, which caused
11666         only the first copy to the clipboard from an gtkeditable to
11667         actually cause a copy to the Windows clipboard.
11668
11669 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11670
11671         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11672         compilation, too. Current mingw gcc distributions include the
11673         necessary headers. Also the necessary IIDs are now in mingw
11674         headers/libraries, and own definitions unnecessary.
11675
11676         More hacking on OLE2 DND, still doesn't work though, and thus
11677         ifdeffed out.
11678
11679         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11680         here, too.
11681
11682 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11683
11684         * gdk/nanox/*: nano-X port work in progress.
11685         * gdk/simple.c: simple test for Gdk.
11686         * README.nanox: notes about the port: read this first!
11687         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11688         with nano-X.
11689
11690 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11691
11692         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11693         gdk_window_clear() into common code, implement in terms of
11694         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11695         not redirected to the backing rectangle.
11696
11697 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11698
11699         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11700         EXTRA_DIST. It does not work well when the file that
11701         everything depends on is not in the tarball.
11702
11703 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11704
11705         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11706         with recursion where process_updates() is called from
11707         an expose handler. (GtkTextView is highly broken in
11708         doing this, but it should work, so it is a nice test
11709         case.)
11710
11711 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11712
11713         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11714         handle the case where updates are queued during processing of
11715         updates.
11716
11717 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11718
11719         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11720         window is on gdk_display - use that instead of segfaulting.
11721
11722 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11723
11724         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11725         broken and require an empty arg, give it to them.
11726
11727 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11728
11729         * gtk/gtklabel.h: indentation fixes.
11730
11731 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11732
11733         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11734         draw too narrow or too low arcs, they seem to fail, at least with
11735         some display drivers.
11736
11737         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11738
11739         Large changes to the Win32 backend, partially made necessary by
11740         the changes to the backend-independent internal
11741         structures. Attempts to implement similar backing store stuff as
11742         on X11. The current (CVS) version of the Win32 backend is *not* as
11743         stable as it was before the no-flicker branch was merged. A
11744         zipfile with that version is available from
11745         http://www.gimp.org/win32/. That should be use by "production"
11746         code until this CVS version is usable. (But note, the Win32
11747         backend has never been claimed to be "production quality".)
11748
11749         * README.win32: Add the above comment about versions.
11750
11751         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11752
11753         * gdk/gdk.def: Update.
11754
11755         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11756         presumably be replaced by some more better mechanism as 1.4 gets
11757         closer to release shape.
11758
11759         * gdk/makefile.{cygwin,msc}: Update.
11760
11761         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11762         internal headers. Change code according to changes in these. Use
11763         gdk_drawable_*, not gdk_window_* where necessary.
11764
11765         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11766         our old DND.
11767
11768         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11769         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11770         Use correct function name in warning messages.
11771
11772         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11773         GSourceFuncs gdk_event_prepare and gdk_event_check.
11774         (gdk_event_get_graphics_expose): Do implement, use
11775         PeekMessage. Thanks to Hans Breuer.
11776         (event_mask_string): Debugging function to print an GdkEventMask.
11777         (gdk_pointer_grab): Use it.
11778
11779         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11780         (old) book I used claimed was Hangul actually is CJK Unified
11781         Ideographs Extension A. Also, Hangul Syllables were missing.
11782         Improve logging.
11783
11784         * gdk/win32/gdkgc-win32.c: Largish changes.
11785
11786         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11787         g_win32_getlocale() from GLib, and not setlocale() to get current
11788         locale name.
11789
11790         * gdk/win32/gdkprivate-win32.h
11791         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11792         gdkwin32.h, similarily as in the X11 backend.
11793
11794         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11795         assignment was used instead of equals in if test. Thanks to Hans
11796         Breuer.
11797
11798         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11799         the X11 version.
11800
11801         * gdk/win32/makefile.{cygwin,msc}
11802         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11803         path to the Win32 headers that works also with the mingw compiler.
11804
11805         * gtk/gtkstyle.c: Include <string.h>.
11806
11807 2000-04-26  Havoc Pennington  <hp@redhat.com>
11808
11809         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11810         replacing the broken gtk_label_get ()
11811
11812 2000-04-15  Havoc Pennington  <hp@pobox.com>
11813
11814         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11815         this keeps scanner scripts from getting confused.
11816
11817         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11818         data, rather than void
11819
11820 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11821
11822         * gtk/gtkclist.c (gtk_clist_motion)
11823         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11824         with is_hint FALSE, get x and y from the event. They used to be
11825         used uninitialised. The Win32 backend never sends motion events
11826         marked as hints. This for instance fixes the annoying file and
11827         font selector behaviour in the Win32 version.
11828
11829 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11830
11831         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11832         gtk_private_n_signals variables, they are used by some software,
11833         sigh.
11834
11835         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11836         installation directory from the Registry, where the installer
11837         should have put it.
11838
11839 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11840
11841         * gdk/x11/Makefile.am: Fix problem with installation directory for
11842         gdkx.h
11843
11844         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11845         <mrcooger@cyberverse.com> so that when selecting menus with the
11846         mouse, the first item will not be selected, but when selecting
11847         with an accelerator, or navigating left-right on a menubar with
11848         the menus popped up, the first item will be selected.
11849
11850 2000-04-05  Dan Damian  <dand@dnttm.ro>
11851
11852         * configure.in: Added "ro" to ALL_LINGUAS.
11853
11854 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11855
11856         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11857         indentation.
11858
11859         * Makefile.am (EXTRA_DIST): Fix typo.
11860
11861         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11862         to catch gdkconfig.h
11863
11864         * gtk/gtkitemfactory.c: Added FIXME.
11865
11866 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11867
11868         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11869         s/return_if_fail/return_val_if_fail/g and add a return value.
11870
11871 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11872
11873         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11874         merge slipup.
11875
11876         * gdk/gdkinput.h: Fix missing line from merge.
11877
11878 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11879
11880         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11881         instead of gdkprivate.h.
11882
11883 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11884
11885         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11886         parent class to correctly be GtkDialogClass.
11887
11888 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11889
11890         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11891         toplevel windows and their immediate children by their parents,
11892         since the size of toplevel windows is out of our immediate
11893         control and we don't get any real benefit from trying to track
11894         this size for clipping.
11895
11896         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11897         for input_only windows.
11898
11899         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11900         to fix some hacks and make sure that we don't try to set the
11901         background of input only windows.
11902
11903 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11904
11905         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11906         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11907         stuff that we've traditionally exposed.
11908
11909         * gdk/**.c: Use gdkinternals.h where appropriate.
11910
11911         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11912         not include gdkprivate-x11.h, move all stuff of conceivable public
11913         interest into gdkx.h; keep all really private stuff in
11914         uninstalled header gdkprivate-x11.h.
11915
11916         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11917         image->image_put on windows through a new function _gdk_window_draw_image()
11918         to allow us to do backing store for images. (Sort of ugly)
11919
11920         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11921         contexts locally so that we can offset them properly when drawing 
11922         onto backing pixmaps.
11923
11924         * gdk/gdkinput.h: Reindented
11925
11926         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11927         pixmap or color for the window, so we can properly initialize
11928         our double-buffer pixmaps, and also so that we temporarily set
11929         a background of None while scrolling.
11930
11931         * gdk/gdkregion.h: Revise region boolean operators to have an
11932         interface that is actually convenient - switch from creating new
11933         regions on every op, to "methods" that modify existing regions
11934         (A = A OP B). 3 argument forms which allow dest == src, would also
11935         be possible, but the current interfaces seem to map nicely
11936         onto what needs to be done. (There is quite a lot of region
11937         code in GDK now.)
11938
11939         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11940         operator.
11941
11942         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11943         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11944         to 32 bit coordinates, modify it to be mostly GTK+ style
11945         and to have interfaces that match gdkregion.h.
11946
11947         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11948         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11949         create a backing pixmap and redirect all drawing to
11950         that backing pixmap until a matching gdk_window_end_paint().
11951
11952         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11953         Create a special drawable class for GtkWindow's that 
11954         redirects the drawing to the backing pixmap as necessary
11955         and then calls the real operations in _gdk_windowing_window_class.
11956
11957         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11958         Store invalid region for each window. Generate expose events for invalid
11959         region in an idle. This replaces both the expose compression
11960         and the redrawing queuing in GTK+. It is both more efficient and
11961         simpler than either one individually and far more so then the
11962         combination.
11963
11964         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11965         Emulate 32 bit coordinates for windows with 16 bit coordinates
11966         by offsetting drawing, guffaw scrolling techniques and
11967         mapping/unmapping child windows as necessary.
11968
11969         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11970         where, when invalid regions are processed, the region is stored,
11971         and if expose events come in that are detectably duplicate
11972         the processed exposes (by comparison of event serial numbers),
11973         the stored region is subtracted out of those exposes.
11974
11975         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11976         regions newly exposed when scrolling or resizing windows.
11977         This, combined with forcing processesing of queued invalidated
11978         regions, gives nice flicker-free scrolling.
11979
11980         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11981         invalidated regions after every scroll.
11982
11983         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11984         emulation in GDK. Its, for all practical purposes just a
11985         GtkViewport/GtkFixed hybrid now.
11986
11987         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11988         (16-bit) structures as necessary instead of just casting.
11989
11990         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11991         in terms of the structures from gdkregion-generic.c, using appropriate
11992         offsets from GDK to X11 coordinates. Cache clip mask and
11993         origin and ts origin locally and only flush to the server
11994         when drawing, to avoid constantly setting and resetting these
11995         values when offsetting GC's for scrolling and backing pixmaps.
11996
11997         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11998
11999         * gtk/gtkcontainer.c: Call process_all_updates at end
12000         of resizing to reduce flicker. (Avoids having redraw
12001         lag arbitrarily behind resize under some circumstances)
12002
12003         * gtk/gtkentry.c: Remove old backing store code, and simply take
12004         advantage of the new backing store capabilities of GDK.
12005
12006         * gtk/gtkmain.c: Simple implementation of widget backing
12007         store - simply push a paint while handling each expose.
12008         (Should really be configurable widget for widget.)
12009         
12010         * gtk/gtkwidget.c: Remove all the old complicated redraw
12011         code, and simply invalidate the GDK windows from
12012         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12013         debugged complexity ... gone to the winds.)
12014
12015         Remove all the code for suppressing expose events while
12016         resizes are pending; this isn't needed since the invalid
12017         areas won't be processed until after the resizes are
12018         processed, since they are in a lower priority idle.
12019
12020 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12021
12022         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12023         and height of dest rectangle for non-intersecting rectangles.
12024
12025 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12026
12027         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12028         for GdkRectangle.
12029
12030 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12031
12032         * gdk/gdk{events,image,private,types,window}.h
12033          gdk/x11/gdkinputprivate.h: Change all coordinates
12034          from int16 to int. Also, Change width and height from
12035          unsigned to signed to avoid all the stupid C 
12036          signedness bugs.
12037
12038 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12039
12040         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12041         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12042         Add some more detailed checking.
12043
12044         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12045         New function to retrieve the depth of a drawable.
12046
12047         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12048         field, reorder fields to save memory. 
12049
12050 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12051
12052         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12053         of the background image instead of scaling the background down to
12054         a line.
12055
12056         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12057         which temporarily set slider to wrong size.
12058
12059         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12060         queue_clear().
12061
12062 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12063
12064 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12065
12066         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12067
12068 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12069
12070         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12071         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12072
12073         * gdk/win32/gdkfont-win32.c
12074         * gdk/win32/gdkproperty-win32.c
12075         * gdk/win32/gdkselection-win32.c
12076         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12077         now declared such.
12078
12079 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12080
12081         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12082
12083 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12084
12085         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12086         is called without trapping X errors.
12087
12088 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12089
12090         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12091         way into the fontset lists.
12092
12093 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12094
12095         * gtk/gtkthemes.h: add extern "C" scope.
12096
12097 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12098
12099         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12100         to make appends to the list constant. (gtk-guy-990901-0.patch)
12101
12102 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12103
12104         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12105         for the typename hash table.
12106
12107 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12108
12109         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12110         to make sure we never divide by zero. 
12111         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12112
12113 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12114
12115         * gtk/gtkfontsel.c: Apply patch from
12116         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12117         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12118
12119         Also, some cleanups in atom handling.
12120
12121 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12122
12123         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12124         not GtkWidget.
12125
12126 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12127
12128         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12129         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12130         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12131         more guint wrap-around bugs before going to bed.
12132
12133 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12134
12135         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12136         guint wrap arounds in allocation.width.
12137
12138         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12139         process untill we fit the allocation given.
12140
12141 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12142
12143         * gtk/gtkwidget.c:
12144         (gtk_widget_unrealize): guard widget access with ref/unref
12145         around signal emission.
12146         (gtk_widget_hide): same here, but also check its destroyed
12147         state before queueing a resize.
12148
12149 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12150
12151         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12152         of gtk_default_insensitive_bg as insensitive base color.
12153
12154         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12155         to the widget's state.
12156         (gtk_text_realize): same here.
12157         (gtk_text_state_changed): same here.
12158         (draw_bg_rect): compare background color against base[] from
12159         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12160
12161 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12162
12163         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12164         grabs are active, unless a delete event is send to the toplevel
12165         of the currently grab holding widget.
12166
12167 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12168
12169         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12170         debugging g_print's.
12171
12172 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12173
12174         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12175         ever make the scrolled-window requisition ever depend on the 
12176         visibility state of the scrollbars for the AUTOMATIC policy. 
12177         This breaks the GTK+ requisition model, and causes loops.
12178
12179 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12180
12181         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12182         the default font to avoid problems with XFree86-4.0 where the
12183         default charset is iso10646-1, not iso8859-1.
12184
12185 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12186
12187         * acinclude.m4
12188         * config.guess
12189         * config.sub
12190         * ltconfig
12191         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12192
12193         * gtk/Makefile.am: minor cosmetic consistency tweak
12194
12195 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12196
12197         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12198         the activate_time to 0, so that we handle a quick
12199         press/release press/release properly and don't suppress
12200         the second release. (Red Hat bug #7545)
12201
12202 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12203
12204         * gtk/gtkctree.c (row_delete):
12205         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12206         bugs with destruction notifier, *always* update internal
12207         structures *before* calling user code.
12208
12209 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12210
12211         A few more fixes for bug #5487, #2051, #2677.
12212         * gtk/gtkclist.c : 
12213         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12214         not GDK_BUTTON_PRESS.
12215         (resync_selection): resync only if selection_mode is
12216         GTK_SELECTION_EXTENDED
12217         * gtk/gtkctree.c (resync_selection): same here
12218
12219 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12220
12221         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12222         gdk_drag_get_selection() and gtk_menu_detach().
12223
12224         [ From Jeroen Ruigrok/Asmodai ]
12225
12226 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12227
12228         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12229         page->tab_label can be NULL.
12230
12231 2000-01-25  Havoc Pennington  <hp@pobox.com>
12232         
12233         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12234         arg is boolean
12235
12236         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12237
12238         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12239
12240         * gdk/gdkproperty.c (gdk_property_get): return boolean
12241
12242         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12243
12244         * gdk/gdkim.c (gdk_im_ready): return boolean
12245
12246         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12247
12248         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12249         glib clash, should fix glib)
12250
12251         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12252         (gdk_get_show_events): return gboolean, and canonicalize 
12253         to TRUE/FALSE
12254
12255         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12256         colormap is private
12257         (gdk_colors_alloc): gboolean whether to be contiguous
12258         (gdk_color_equal): return gboolean since we are a predicate
12259         and not a qsort() (this looks semi-wrong due to glib breakage,
12260         IMO glib should be fixed)
12261         
12262         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12263         (gdk_get_use_xshm): return gboolean
12264         (gdk_pointer_is_grabbed): return gboolean
12265
12266         * gdk/gdk.h: Change prototypes to match all the above changes,
12267         and re-run egtk-format-protos as required.
12268
12269 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12270
12271         * gtk/gtkctree.c (resync_selection): 
12272         * gtk/gtkclist.c (resync_selection):
12273
12274         Return immediately if clist->drag_pos < 0. This is a workaround
12275         for the corrupt state that the clist gets into when a
12276         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12277
12278         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12279         
12280         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12281         variable from recent commit.
12282
12283 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12284
12285         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12286
12287 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12288
12289         * gtk/Makefile.am: prefix all autogenerated source that get build in
12290         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12291         in builddir. since we subsequently cd into srcdir for autogeneration,
12292         the paths have to be stripped from the target file names, thusly we
12293         use $(@F) as target names now.
12294         put a comment about configure.in's --disable-rebuilds option,
12295         which can be used for non-writable source directories, for development
12296         setups though, srcdir has to be *writable*.
12297
12298 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12299
12300         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12301           Finish the job of allowing event to be NULL.
12302           (Fixes bug #4283, reported by Chris Blizzard)
12303
12304         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12305           things so that the cursor appears on screen, properly
12306           take into account INNER_BORDER.
12307           (Fixes bug #4754, reported by Antonio Campos)
12308
12309 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12310
12311         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12312           show the tab_label unless it itself is visible.
12313
12314           gtk/gtknotebook.c (gtk_notebook_size_request):
12315           Do a better job of making sure that the visibility
12316           of the tab label corresponds to whether it should
12317           be mapped or not.
12318
12319 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12320
12321         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12322           Use the requisition, not the allocation, since the
12323           allocation has not necessarily been computed yet.
12324           (Pointed out by Eugene Osintsev)
12325
12326 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12327
12328         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12329           style/base[GTK_STATE_INSENSITIVE] both to
12330           gtk_default_insensitive_bg!
12331           (Bug #2187, reported by Jonathan Blandford)
12332
12333         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12334           Add Alt_L, Alt_R to list of invalid accelerators.
12335           (Bug #3736, reported by Vlad Harchev)
12336
12337 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12338
12339         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12340         bugs which occured after an attempt to open 
12341         invalid home directory left cmpl_state->reference_dir == NULL.
12342
12343          - completion on files in home directory didn't work
12344          - completion on an empty string caused  segfault
12345
12346          (Bug #3678, reported by Steve Ratcliffe)
12347
12348         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12349         cut and paste error that was causing scales to
12350         be incorrectly positioned.
12351         (Bug #2956,
12352          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12353
12354 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12355
12356         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12357         when checking for dcgettext, if we've found we needed
12358         it for dgettext.
12359 +
12360 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12363         queue_clear on NO_WINDOW widgets during a reparent,
12364         since at that point the window and widget heirarchies
12365         are out of sync. This stops crashing in some cases
12366         (the scrolled window reparent test, for instance), and
12367         _probably_ won't cause drawing errors.
12368
12369         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12370         test do what it was supposed to do and be robust against
12371         window closings, etc. (Bug #2443)
12372
12373 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gtk/gtkentry.c: Fix return values on mouse events.
12376         (Bug #2686, Sky <seb_sky@yahoo.com>)
12377
12378         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12379         (pointed out by George Lebl)
12380
12381         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12382         (From Ettore Perazzoli  <ettore@helixcode.com>)
12383  
12384 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12385
12386         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12387         clicks between rows or outside calender area correctly.
12388         (Patch from Damon Chaplin)
12389
12390         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12391         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12392           Call destroy function when overwriting existing data. 
12393           (Pointed out by Damon Chaplin)
12394
12395 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12396
12397         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12398           which was causing problems on various systems with Xmu.
12399           This hasn't been needed for a very long time.
12400           (Fixes #1185 3167)
12401
12402 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12403
12404         * gdk/gdki18n.h: Include <ctype.h> when defining
12405           gdk_isw* in terms of is* as a fallback.
12406           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12407
12408 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12409
12410         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12411           realize the widget when it is size allocated!
12412           (old, old bug)
12413
12414         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12415           Removed unused call to gdk_window_get_size() that
12416           showed up when the above was fixed.
12417
12418 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12419
12420         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12421           fix up widget->window when the widget is a
12422           NO_WINDOW container widget.
12423
12424 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12425
12426         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12427           to account for the fact that feof() does _not_ 
12428           return TRUE on errors, and thus avoid infinite loops
12429           when trying to use gdk_pixmap_create_from_xpm()
12430           on unreadable values.
12431
12432 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12433
12434         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12435
12436 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12437
12438         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12439           gdk_gc_set_dashes to take gint8 instead of gchar to
12440           make it clearer that it is _not_ a NULL terminated string.
12441
12442         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12443           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12444           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12445           arguments.
12446
12447 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12448
12449         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12450         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12451         background size relative to our allocation, guard against small
12452         allocations, we may have not yet been size allocated.
12453
12454 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12455
12456         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12457         not just version == 3. We implement all 3 + most of 4 - 
12458         (we don't support matching text/plain;charset=iso-8859-1
12459         to a dest that expects text/plain). We'll still advertise
12460         3 to be safe, but any client implementing version >= 3
12461         must interoperate with 3.
12462         
12463 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12464
12465         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12466         background and gc members, add a warning in gtk_tooltips_set_color()
12467         indicating that this function is deprecated.
12468
12469 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12470
12471         * docs/gtkfaq.sgml: FAQ Update:
12472           - Minor cleanups (Emmanuel, me)
12473           - New questions:
12474                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12475                 How can I retrieve the text from a GtkMenuItem? (timj)
12476                 How do I validate/limit/filter the input to a GtkEntry? (me)
12477                 Memory does not seem to be released when I free the list
12478                         nodes I've allocated (timj)
12479
12480 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12481
12482         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12483         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12484         for which it is no use to call GetLastError onWin9x.
12485         (gdk_other_api_failed) New function, for general error
12486         reporting without calling GetLastError.
12487         (gdk_win32_api_failed) OTOH, this function always calls
12488         GetLastError. (gdk_win32_last_error_string) Remove this function,
12489         GLib has the equivalent now.
12490
12491         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12492         call them with function name, file name and line number in the
12493         arguments.
12494
12495         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12496         functions.
12497         
12498         * gtk/gtk.def: Add some missing entry points.
12499
12500         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12501         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12502         
12503         Fixes by Hans Breuer:
12504
12505         * gdk/makefile.msc: Update for debugging.
12506
12507         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12508         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12509         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12510         in the dash_list.
12511
12512         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12513         the x11 backend.
12514
12515         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12516
12517         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12518
12519 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12520
12521         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12522         just pixel value of background colour.
12523
12524         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12525         containing code snippet previously duplicated in a couple of
12526         places.
12527         
12528         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12529         gdk_colormap_color.
12530
12531         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12532         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12533         events for autorepeated Shift, Control and Alt keys. Use
12534         gdk_colormap_color.
12535
12536         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12537         pointer is inside the window the cursor of which we are setting,
12538         call SetCursor immediately.
12539
12540         * gdk/win32/makefile.cygwin
12541         * gtk/makefile.cygwin: If we don't have the build number stamp
12542         file, use zero.
12543
12544         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12545         gtk_paned_set_gutter_size as empty.
12546
12547         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12548         
12549 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12550
12551         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12552           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12553           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12554           docs/gtk_tut.sgml docs/gtk.texi TODO:
12555
12556           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12557
12558 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12559
12560         * gtk/gtkcalendar.c: Implement num_marked_dates,
12561           and don't emit mutiple day_selected signals on
12562           month_prev.
12563
12564 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12565
12566         * docs/make-todo (lineno): let title and logo be configurable so
12567         that GNOME can use this script too.
12568
12569         * TODO.xml: added logourl and a title
12570
12571 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12572
12573         * TODO.xml: Added some UI items, and an explanatory
12574         comment at the top of the file.
12575
12576 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12577
12578         * TODO.xml: some updates, added abunch of new entries.
12579         a note for those fiddeling with this file, when done
12580         with it, invoke:
12581         $ ./docs/make-todo TODO.xml >/dev/null
12582         and correct output errors before comitting changes.
12583
12584 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12585
12586         * TODO.xml: Added XML-structured TODO file.
12587         * docs/make-todo: python script to turn TODO.xml into
12588           pretty XML output. 
12589
12590 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12591
12592         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12593         the function to let it draw the seven dots, instead of the old,
12594         much maligned, method.
12595         (draw_dot): New function to draw a dot.
12596
12597         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12598         to draw the handle inside the border width as opposed to outside.
12599         Use paint function instead of gdk_draw_point.
12600
12601         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12602         to draw the handle inside the border width as opposed to outside.
12603         Use paint function instead of gdk_draw_point.
12604
12605         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12606         Change indenting to be more GTK like.
12607
12608 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12609
12610         * docs/gtk_tut.sgml: New section on GtkCalendar
12611         * examples/calendar: Update example code
12612
12613 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12614
12615         * docs/gtkfaq.sgml: FAQ Update
12616
12617 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12618
12619         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12620         to prevent the scroll event to be propagated upwards.
12621
12622 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12623
12624         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12625         OwnerGrabButtonMask from button entries for
12626         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12627
12628         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12629         to the event mask (which will result in button/press release
12630         being added to the event mask on Unix) so scrolling works
12631         for layouts in scroll windows.
12632
12633         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12634
12635         Patch from Anders Carlsson  <andersca@gnu.org> to add
12636         a scroll event.
12637
12638         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12639         scrolling to the "Test Scrolling" part of testgtk.
12640  
12641         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12642  
12643         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12644         it against GDK_SCROLL.
12645  
12646         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12647         way of mouse wheel scrolling.
12648  
12649         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12650  
12651         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12652  
12653         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12654  
12655         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12656         gdk_event_mask_table.
12657  
12658         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12659         GdkEventScroll handler.
12660  
12661         * gdk/gdkevents.h: Added GdkEventScroll structure.
12662  
12663 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12664
12665         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12666         and Anders Carlsson to change the Paned widgets so that they
12667         can be dragged from anywhere along the length. Also change
12668         the way that this is drawn to make this apparent.
12669
12670         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12671         from George Lebl to check that option_menu->menu is present
12672         before getting history.
12673
12674 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12675
12676         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12677         before the assertion for non-NULL segment list.
12678
12679         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12680         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12681         machine, but it might be display driver dependent. Sigh, so make
12682         sure the stipple is that size. Does Windows suck or what?
12683
12684         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12685         places.
12686
12687 2000-02-13  Havoc Pennington  <hp@pobox.com>
12688
12689         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12690         refcount to 1
12691         (gdk_cursor_new): init refcount to 1
12692
12693         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12694
12695 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12696
12697         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12698         so that we don't have to do unnecessary settings to the HDC.
12699
12700         * gdk/win32/gdkdrawable-win32.c
12701         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12702         gdk_gc_predraw.
12703
12704         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12705         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12706         GDI paths, call WidenPath to get the outline of the stroken path,
12707         and then fill the outline (with the brush that was built from the
12708         stipple).
12709
12710         * gdk/win32/gdkgc-win32.c: Factor out common code from
12711         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12712         gdk_win32_gc_values_to_win32values. Use correct colour for
12713         SetBkColor() (Until now the code actually used a random colour in
12714         the call to SetBkColor()... but that didn't show up as not many
12715         GDI APIs use the background colour. Pattern (opaque stippled)
12716         brushes do.)
12717
12718         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12719         gdk_win32_api_failed): New functions for error logging.
12720
12721         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12722         WIN32_API_FAILED to call them, passing function or file name and
12723         line number.
12724
12725         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12726
12727         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12728         GdkColor for foreground and background in GdkGCWin32Data.
12729
12730         * gdk/makefile.cygwin: Link in the resource object separately.
12731
12732         * gdk/win32/rc/gdk.rc
12733         * gtk/gtk.rc (New file)
12734         * gdk/win32/makefile.cygwin
12735         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12736         as in GLib.
12737
12738 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12739
12740         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12741         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12742         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12743         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12744         parameters given and cursor->ref_count. coding style fixups.
12745
12746         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12747         not GtkWidget.
12748         
12749         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12750         fix up widget macros and add _GET_CLASS() variant.
12751         
12752         * gtk/*.c: some GtkType fixups.
12753
12754 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12755
12756         * gdk/win32/gdkproperty-win32.c
12757         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12758         were reversed.
12759
12760 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12761
12762         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12763         g_filename_to_utf8 to convert the font names Windows gives us from
12764         whatever is the default codepage to UTF-8.
12765         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12766         in the other direction.
12767
12768         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12769         error in debugging output.
12770
12771 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12772
12773         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12774         and height parameters to gdk_window_clear_area(). Not minus one.
12775
12776 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12777
12778         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12779         checks if the widget passed to gtk_drag_get_data() was not the
12780         dest widget.
12781
12782 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12783
12784         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12785         g_filename_from_utf8 functions (which were added a moment ago to
12786         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12787         size buffers.
12788
12789         gtk_file_selection_get_filename returns the filename in the C
12790         runtime encoding. It calls g_filename_from_utf8, but copies the
12791         returned string to a static buffer, which is returned. I think
12792         this is better than returning the result from g_filename_from_utf8
12793         directly, which would mean all apps that use it would have to free
12794         the return value. Or should this function care about this issue at
12795         all? Maybe a new function with clearly defined semantics.
12796
12797         * gtk/gtkfilesel.h: Add comment about
12798         gtk_file_selection_get_filename returning the filename in the C
12799         runtime's encoding.
12800
12801         * README.win32
12802         * gdk/gdk.def
12803         * gdk/makefile.{cygwin,msc}
12804         * gtk/gtk.def: Updates.
12805
12806         * gdk/gdkcursor-win32.c: Initialise refcount.
12807
12808 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12809
12810         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12811
12812 2000-01-30  Havoc Pennington  <hp@pobox.com>
12813
12814         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12815         destroy
12816
12817         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12818
12819         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12820         implemented in platform-specific code
12821
12822         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12823
12824         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12825         underscore in front
12826
12827         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12828         put an underscore in front
12829
12830         * gdk/gdkcursor.c: new file, implements
12831         gdk_cursor_ref/gdk_cursor_unref
12832
12833         * gdk/gdkcursor.h: Refcount GdkCursor
12834
12835         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12836
12837 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12838
12839         * gdk/gdkwindow.h
12840         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12841
12842 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12843
12844         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12845         structures to properly inherit from GtkWidget not GtkBin.
12846
12847 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12848
12849         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12850         (bug #5178 - Peter Wainright)
12851         
12852         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12853         so that it will be installed.
12854         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12855
12856 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12857
12858         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12859         for the GtkStyleClass vtable const.
12860
12861         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12862         take a const string argument like GtkTranslateFunc. This will
12863         require changes in use code.
12864
12865 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12866
12867         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12868         semantics (to mimic the X11 backend, which just calls XClearArea)
12869         is to check for zero width (and height), and in that case use the
12870         window's width minus x (height minus y). This fixes for instance
12871         some redraw problems with gtkclist, which were easily noticeable
12872         in the gtk file selection widget.
12873
12874         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12875         windows.
12876
12877 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12878
12879         * configure.in
12880         * gdk/Makefile.am
12881         * gdk/x11/Makefile.am
12882         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12883         (bug #5177).
12884         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12885         out later.
12886
12887 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12888
12889         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12890         WM_MOVE for iconified or invisible windows. This fixes various
12891         problems when minimising windows. Thanks to Bernd Herd.
12892
12893 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12894
12895         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12896         backend's draw_lines method, not draw_points.
12897
12898 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12899
12900         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12901         before Owen's reorganisation: Don't have queued_events and
12902         queued_tail statics in this file, but use gdk_queued_events and
12903         gdk_queued_tail. This makes exposure event compression work again.
12904
12905         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12906         seem to be needed?
12907
12908 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12909
12910         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12911         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12912         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12913         doesn't do anything.
12914
12915         * gdk/gdk.def: Add gdk_xid_table_insert.
12916
12917         * gdk/win32/gdkprivate-win32.h
12918         * gdk/win32/gdkevents-win32.c
12919         * gdk/win32/gdkinput-win32.c
12920         
12921         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12922         extension_events field in the GdkWindowWin32Data struct. Use only
12923         the extension_events field in GdkWindowPrivate. Previously one was
12924         set, and the other one tested, which broke tablet
12925         functionality. Thanks to Keishi Suenaga for pointing this out.
12926
12927 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12928
12929         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12930         When handling a single character (text length == 1), don't handle
12931         it as if it was UTF-8.
12932
12933 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12934
12935         * Makefile.am: Distribute README.win32.
12936         
12937         * gdk/Makefile.am
12938         * gdk/win32/Makefile.am: Distribute Win32 files.
12939
12940         * gdk/makefile.msc: New file.
12941
12942         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12943         after label).
12944
12945         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12946         gdk_error_code as GDKVAR, as they are referred outside GDK.
12947
12948         * gdk/win32/makefile.msc: Update.
12949
12950         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12951         tweaks. Check only if at least one of those Unicode subrange bits
12952         we care for is set. If no code page bits are set, guess (wildly)
12953         based on the charset.
12954
12955         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12956
12957         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12958         non-NULL.
12959
12960         * gtk/gtkdnd.c
12961         * gtk/gtklayout.c
12962         * gtk/gtkplug.c
12963         * gtk/gtkselection.c
12964         * gtk/gtksocket.c
12965         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12966         appropriate. There must be a cleaner way to handle this?
12967
12968         * gtk/gtkrc.c: Must include windows.h on Win32.
12969
12970         * gtk/testgtk.c: No need to include gdkx.h.
12971
12972         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12973
12974 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12975
12976         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12977         the rbearing is set to the same as the width, but this should be
12978         fixed.
12979
12980 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12981
12982         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12983         function. If Windows doesn't tell us what Unicode subranges a font
12984         covers, guesstimate based on the codepages it covers. This will
12985         hopefully help those Windows versions or fonts that don't give us
12986         any useful Unicode subrange information with GetTextCharsetInfo.
12987         Call this function in gdk_font_load_internal.
12988
12989         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12990         minor changes.
12991
12992 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12993
12994         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12995         New function, long needed.
12996
12997 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12998
12999         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13000         only_if_exists argument of gdk_atom_intern to
13001         bool.
13002
13003 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13004
13005         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13006         Fix two copy&paste errors.
13007
13008         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13009         win32 has changed.
13010
13011         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13012         GdkWin32SingleFont struct.
13013
13014         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13015         subranges of loaded fonts. Clear font signature first, in case
13016         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13017         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13018
13019         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13020         Unoffset clip region.
13021
13022 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13023
13024         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13025         event->any.window before calling filter functions.
13026
13027 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13028
13029         * gtk/gtkgamma.h: Adapt cast macros to standard.
13030
13031 [ Merges from 1.2 ]
13032
13033 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13034
13035         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13036         If translation does not include a '/', use entire
13037         translation instead of crashing.
13038
13039 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13040
13041         * docs/gtk_tut.sgml:
13042         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13043
13044 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13045
13046         * gtk/gtkselection.c (gtk_target_list_remove): Use
13047         g_list_remove_link, not g_list_remove.
13048
13049         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13050         
13051 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13052
13053         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13054         statement upon unselection (how the heck did that slip in?).
13055
13056 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13057
13058         * gtk/gtktext.c (gtk_text_freeze): 
13059         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13060         in frozen state (and aparently crashes). patch provided by Anders
13061         Melchiorsen <and@kampsax.dtu.dk>.
13062
13063 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13064
13065         * fix insensitive default/focus widget activation,
13066         reported by Matt Goodall <mgg@isotek.co.uk>.
13067
13068         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13069         (gtk_window_activate_default):
13070         (gtk_window_activate_focus):
13071         return handled=FALSE for actiavtion of insensitive default
13072         widgets. return handled=TRUE for activation of insensitive
13073         focus widgets. don't activate in either case.
13074
13075 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13076
13077         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13078         and $glib_cflags to match library order and in the
13079         theory that an old version of GLib is more likely to
13080         be in the include directory for X then vice-versa.
13081         (Bug #2776)
13082
13083 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13084
13085         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13086         to determine the locale for fontsets, not LC_MESSAGES;
13087         the user may want English messages with a handling
13088         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13089         will still be broken) (Bug #2891)
13090
13091 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13092
13093         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13094
13095 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13096
13097         * gtk/gtkrc.ko: Changed the Korean default fontset.
13098
13099 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13100
13101         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13102         where when scrolling to the left or top double exposes
13103         were done, causing major slowdowns.
13104
13105 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13106
13107         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13108         names to lowercase and alphanumeric, before looking
13109         them up.
13110
13111         * gtk/Makefile.am: Install codeset variant gtkrc files
13112         with normalized names.
13113
13114 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13115
13116         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13117         popup menus when the menu is already visible, but its parent
13118         is still hidden, (happens after tornoff window got hidden).
13119
13120 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13121
13122         * gtk/Makefile.am (install-data-local): Fix
13123         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13124         deleted, causing error messages on install.
13125
13126 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13127
13128         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13129         the handle as well, since we now sometimes ignore
13130         exposes on the handle while resizing.
13131
13132 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13133
13134         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13135         extra g_free introduced in one of the last one or two 
13136         commits.
13137
13138 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13139
13140         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13141         consistent, put each style that a gtkrc.* file creates
13142         in a unique namespace, remove old files before installing.
13143
13144 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13145
13146         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13147         gtk_rc_init is called multiple times. (Yes, people who
13148         do that have bugs in their code.)
13149
13150 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13151
13152         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13153         Remove it since it's generated by the Makefile anyway
13154
13155 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13156
13157         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13158         device->info.axes for core pointer.
13159
13160 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13161
13162         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13163         idle_id, to deal with obsolete, broken C libraries.
13164
13165 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13166
13167         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13168         allocation->x/y twice!
13169
13170         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13171         consistent with gtk_vscale_pos_trough().
13172
13173 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13174
13175         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13176         be queueing a resize on a toplevel container between
13177         the time we show it and when we map it. So, we need
13178         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13179         use GTK_WIDGET_DRAWABLE() for child windows.
13180
13181 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13182
13183         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13184         (fixes bug #2144)
13185
13186 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13187
13188         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13189         container DRAWABLE (instead of VISIBLE), so we don't queue
13190         resizes on non-toplevel containers.
13191
13192 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13193
13194         * gtk/gtkselection.[ch]: Make the data argument
13195         const guchar *.
13196
13197 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gtk/gtkwindow.c: Try to behave sensibly if 
13200         the focus widget is the window itself. (Should
13201         we allow this at all?)
13202
13203 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13204
13205         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13206         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13207         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13208         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13209         in prototypes and implementations consistent (Tomas Ogren).
13210
13211         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13212         before the widget is unparented (reported by damon).
13213
13214         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13215         since we provide unsigned data anyways.
13216
13217 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13220         the call to gtk_tooltips_layout_text() until later.
13221
13222         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13223         Call gtk_widget_ensure_style() before using the style.
13224
13225 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13226
13227         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13228         for old widgets that don't propagate draws to all
13229         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13230
13231 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13232
13233         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13234         for a redraw but just the widget that requested the resize.
13235
13236 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13237
13238         * gtk/gtkcontainer.c: added new widget level method
13239         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13240         reallocate_redraws : 1 to reflect the setting, exported this through
13241         the argument system as a boolean ::reallocate_redraws.
13242
13243         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13244         on the widget because the allocation changes, do so as well for
13245         widget->parent if the parent has reallocate_redraws set to TRUE.
13246         with that containers requesting reallocation redraws get automatically
13247         redrawn if their children changed allocation (this unfortunately
13248         affects also other children that didn't change allocation, but we
13249         cannot work around that before 1.3).
13250
13251 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13252
13253         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13254         _and_ height are >0 (not _or_).
13255
13256         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13257         instead of gtk_container_queue_resize(), which is a core gtk internal
13258         function (must have been on crack when i queued that).
13259
13260         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13261         we can check more reliably if we want to discard expose events.
13262         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13263         flag.
13264         
13265         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13266         we simply trust these events. for deciding whether to discard exposes,
13267         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13268         
13269 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13270
13271         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13272         queues of areas that are completely off screen.
13273
13274         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13275         logic for handleboxes.
13276
13277         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13278         check on width/height.
13279
13280 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13281
13282         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13283         we are fine with using $@ the way we do (if we actually encounter
13284         brokeness with $@ in VPATH builds because of additional path prefixes,
13285         we need to use $(@F) actually).
13286
13287 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13288
13289         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13290         short lived bugs, that would allow language bindings to do surgeries
13291         to our guts.
13292
13293 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13294
13295         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13296         where comparison was being done against an uninitialized
13297         value causing intermittant results depending on
13298         compiler flags. Also make it clearer that we aren't
13299         ever initializing the child as 0x0 (though this will
13300         be caught in gtk_widget_size_allocate())
13301
13302 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13303
13304         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13305         gtk_window_unset_transient_for() call after we do checks
13306         involving the old transient parent.
13307         [ From Lance Capser <lmc@cyberhighway.net> ]
13308
13309 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13310
13311         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13312         an empty file.
13313
13314 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13315
13316         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13317         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13318
13319 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13320
13321         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13322         `$@' is valid only in the build dir, not after we've done 
13323         `cd $srcdir'.  Also use `test -f' instead of less portable
13324         `test -e'.
13325
13326 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13327
13328         * gtk/gtktext.c (correct_cache_insert): Rewrite
13329          for simplicity, and hopefully correctness.
13330          (Fixes bug #1322, which was a segfault when
13331           on some insertions with the properties around
13332           the insertion set up just wrong.)
13333
13334         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13335          a "changed" signal, clamp the new value to the adjustment
13336          bounds to avoid segfaulting if someone tries to change
13337          the adjustment to a bogus value. (Bug #1795)
13338
13339 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13340
13341         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13342         for children, for toplevel windows handle them
13343         like delete_event.
13344
13345         * gtk/gtkplug.c: Add an unrealize handler so that
13346         we unref plug->socket_window when we are done
13347         with it.
13348
13349 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13350
13351         * gtk/gtktext.c (clear_area): Fix stupid signedness
13352          problem that was causing background to sometimes
13353          be misaligned.
13354
13355 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13356
13357         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13358         
13359         * gtk/gtkmenu.c (gtk_menu_position): Make
13360          sure we never position menus with negative x, y,
13361          since gtk_widget_set_uposition() can't handle that.
13362
13363         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13364          Modify the positioning code a bit so that we always
13365          put the top-left corner onscreen. (This is for
13366          UI reasons, gtk_menu_position() now takes care of
13367          gtk_widet_set_uposition() brokeness.)
13368
13369 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13370
13371         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13372
13373 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13374
13375         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13376           RC style that is passed in. The lack of the ref
13377           before was a bug. If people worked around this
13378           bug, this will introduce a slight memory leak
13379           in their code. The code should typically look like:
13380
13381             rc_style = gtk_rc_style_new ();
13382             [...]
13383             gtk_widget_modify_style (widget, rc_style);
13384             gtk_rc_style_unref (rc_style);
13385
13386         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13387           the style if it was already set.
13388
13389         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13390           style if it was set before.
13391
13392 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13393
13394         * gtk/testgtk.c (main): Add a check to see if we
13395           are being run from the correct directory and
13396           to quit nicely if we are not.
13397
13398         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13399           static.
13400
13401 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13402
13403         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13404
13405         * gtk/gtkwindow.c:
13406         queue resizes unconditionally (gtk_widget_queue_resize will figure
13407         what to do if the window is not realized).
13408         (gtk_window_move_resize): only recenter the window
13409         for GTK_WIN_POS_CENTER_ALWAYS.
13410         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13411         the same way as GTK_WIN_POS_CENTER.
13412
13413 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13414
13415         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13416         with (!(info->last_flags & GDK_HINT_POS)) instead of
13417         (!info->last_flags & GDK_HINT_POS).
13418
13419         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13420         new_height unconditionally, because we use these values even if
13421         !default_size_changed && !hints_changed.
13422         comented the (default_size_changed || hints_changed) case with
13423         respect to resize rejects from the window manager.
13424
13425         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13426         in the zvt condition hack, since this includes the window hints, set
13427         the hints after the handling_resize case.
13428
13429         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13430         window is initially shown with to the geometry.
13431
13432 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13433
13434         * gtk/gtkwindow.c (gtk_window_move_resize):
13435         s/size_changed/default_size_changed/g so i know what's
13436         really going on (frying brain on smaller flame now).
13437
13438 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13439
13440         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13441         we have size_changed upon handling_resize. this is a gross
13442         workaround for the broken zvt widget and should be removed in
13443         1.3 again (search for FIXME).
13444         Owen provided an accurate comment for this:
13445
13446         /* We could be here for two reasons
13447          *  1) We coincidentally got a resize while handling
13448          *     another resize.
13449          *  2) Our computation of size_changed was completely
13450          *     screwed up, probably because one of our children
13451          *     is broken. It's probably a zvt widget.
13452          *
13453          * For 1), we could just go ahead and ask for the
13454          * new size right now, but doing that for 2)
13455          * might well be fighting the user (and can even
13456          * trigger a loop). Since we really don't want to
13457          * do that, we requeue a resize in hopes that
13458          * by the time it gets handled, the child has seen
13459          * the light and is willing to go along with the
13460          * new size. (this happens for the zvt widget, since
13461          * the size_allocate() above will have stored the
13462          * requisition corresponding to the new size in the
13463          * zvt widget)
13464          *
13465          * This doesn't buy us anything for 1), but it shouldn't
13466          * hurt us too badly, since it is what would have
13467          * happened if we had gotten the configure event before
13468          * the new size had been set.
13469          */
13470
13471 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13472
13473         * gtk/gtkrc.c: deal properly with the fact that RC
13474           style lists may include rc styles more than once.
13475
13476         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13477           unused static function.
13478
13479         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13480           stack of directories of RC files currently being
13481           parsed and implicitely add them to pixmap path.
13482           
13483           This fixes a bug where the directory would get
13484           appended then overwritten by pixmap_path declarations.
13485
13486           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13487
13488         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13489           theme's exit function. (Patch from Peter Wainwright,
13490           bug #1454)
13491
13492         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13493           Add a destroy() handler to take care of removing
13494           group for menu item. (Fixes bug #1197)
13495
13496         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13497           in warning message.
13498
13499 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13500
13501         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13502         roundtrip to figure window's width and height, since we know that
13503         anyways from widget->allocation.
13504
13505 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13506
13507         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13508           the hints after we request the new size.
13509
13510 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13511
13512         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13513           GTK_WIDGET_REALIZED() assertion - we can compute the
13514           hints before we are realized.
13515
13516         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13517           hint changing so that we have a value of hints_changed
13518           when we decide whether to constrain the window size.
13519
13520         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13521
13522         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13523         change back to G_MAXINT.
13524
13525 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13526
13527         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13528         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13529         contain uncluttered values.
13530         (gtk_window_compute_hints): simply assert that window is realized
13531         and that geometry_info is valid, since we rely on this anyways.
13532         (gtk_window_constrain_size): major cleanups to the code.
13533         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13534         for the base size, instead of the minimums. use 32767 as max width
13535         and height (like in gtkwindow.c) instead of G_MAXINT.
13536
13537 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13538
13539         * cleaned up the GtkContainer.need_resize flag handling mess, we
13540         only need to force resize requests when we were prematurely
13541         realized, or our widget tree was modified when we were temporarily
13542         hidden. handling these cases directly upon showing the window (i.e.
13543         while the GdkWindow is still unmapped) avoids the need to wait for
13544         a configure event response and therefore makes the GUI more snappier
13545         and avoids blank windows during the roundtrip.
13546
13547         * gtk/gtkwidget.c:
13548         (gtk_widget_hide): 
13549         (gtk_widget_show): don't queue resizes on toplevels, they know how
13550         to deal with matters.
13551
13552         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13553         flag directly for not visible resize containers and spare us unecessary
13554         signal emissions.
13555
13556         * gtk/gtkwindow.c:
13557         (gtk_window_realize): if we need to enforce premature size allocation,
13558         queue a container resize so we are correctly resized later on.
13559         (gtk_window_init):
13560         (gtk_window_size_request):
13561         don't freak around with the ->need_resize flag,
13562         gtk_container_queue_resize() will care about that.
13563         (gtk_window_show):
13564         handle initial resizing issues here, we can handle matters better in
13565         this place, especially since we know that our GdkWindow is still
13566         unmapped.
13567         (gtk_window_move_resize):
13568         don't care about ->need_resize at all.
13569         handle size changes properly that occoured while we waited for a
13570         configure event.
13571
13572 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13573
13574         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13575         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13576         Move the hint setting code from gtk_widget_set_uposition
13577         to here; set the hints so that we respect any previously
13578         set geometry hints.
13579
13580         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13581         change the window hints here or move the window here,
13582         let that happen in gtk_window_move_resize().
13583
13584 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13585
13586         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13587         to already queued resizes (and therefore redraws) on a widget, check
13588         its anchestry as well.
13589
13590         * gtk/gtkcontainer.c:
13591         (gtk_container_queue_resize): clear resize widgets for resize
13592         containers before aborting prematurely. this is especially important
13593         for toplevels which may need imemdiate processing or their resize
13594         handler to be queued.
13595         (gtk_container_dequeue_resize_handler): added new internal function for
13596         gtkwindow.c.
13597
13598         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13599         configure event, take possible changes in window position into account
13600         as well.
13601         if we request a new window size, queue up a resize handler that will
13602         last until the configure event response arrives.
13603         combined the ->need_resize case (initial show) with the general size
13604         (hints) changed case and added even more comments.
13605         if !auto_shrink, only revert to the old allocation if the new size
13606         is smaller than the current allocation.
13607
13608 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13609
13610         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13611                            gtk_window_set_geometry_hints
13612                            gtk_window_set_default_size):
13613         When hints are set, queue a resize so that the hints will
13614         be eventually reset on the toplevel.
13615
13616         * gtk/gtkwindow.c (gtk_window_show): Use
13617         gtk_window_compute_default_size(). Clear the need_resize flag
13618         on the initail map so that we don't unnecessarily trigger the
13619         resize code.
13620
13621         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13622         into separate functions. Compare the hints we are setting
13623         with what we set last time so that we can accurately
13624         tell when we need to reset the hints.
13625
13626         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13627         function to figure out the size from requisition
13628         and default_size.
13629
13630         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13631         from fvwm to constrain a size to the geometry hints.
13632
13633         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13634         to compare two sets of geometry hints.
13635
13636         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13637         from gtk_window_set_hints(), just compute the hints,
13638         don't set them.
13639
13640         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13641         code from gtk_window_move_resize() to separate function,
13642         rationalize a bit.
13643
13644 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13645
13646         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13647         structure into a new private structure.
13648
13649         * gtkrc.c: Split GtkRcStyle into public/private.
13650         In the private part, add a list of pointers to the
13651         RcStyle lists this RcStyle participates in.
13652
13653         * gtkrc.c: When a RcStyle is free, remove all
13654         lists referencing it from the 
13655         realized_style_ht hash, and free those lists.
13656         
13657         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13658         gtk_rc_init(), since that adds the default styles
13659         to the list of parsed RC files again.
13660
13661         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13662         
13663 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13664
13665         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13666         checks that ensure that a widget's allocation is at least 1 in width
13667         and height. (GNOME note: this doesn't affect old panel code anymore,
13668         because GtkSocket will request width and height of at least 1 since
13669         Fri Jul 23).
13670
13671         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13672         allocated yet (happens if the user realizes the window prematurely),
13673         size request and allocate it.
13674         (gtk_window_size_allocate): guard against guint underflows.
13675
13676 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13677
13678         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13679         in gtk_built_sources, so gtk.defs gets built prior to all other
13680         sources.
13681
13682 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13683
13684         * gtk/Makefile.am:
13685         invoke indent on gtkmarshal.*. 
13686         rewrote source generation rules, use COPYING as oldest source tag for
13687         a piggyback rule to generate all sources from (don't touch it ;).
13688         major cleanups, strip spaces on build rules for GNU Make.
13689
13690         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13691         source and target files from commandline arguments. don't invoke indent.
13692
13693 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13694
13695         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13696         notebook after switch to avoid drawing problems.
13697         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13698         
13699         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13700         show them instead. 
13701         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13702
13703 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13704
13705         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13706         notebook after switch to avoid drawing problems.
13707         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13708         
13709         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13710         show them instead. 
13711         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13712
13713 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13714
13715         * gtk/gtkwindow.c:
13716         we use window->need_resize from configure_event now, to indicate that
13717         the gtkwindow should keep its allocation (e.g. because the user resized
13718         the window through window manager handles). resize_count is now reliably
13719         used to figure whether we got the allocation we requested from the
13720         window manager.
13721         configure events get queued as resizes now, the real stuff (size
13722         computation and allocation) now only goes on in gtk_window_move_resize().
13723         GtkWindow's requisition now contains its *real* requisition (like all
13724         other widgets), *not* taking usize into account.
13725         geometry_info->last_{width|height} is now updated from set_hints() only
13726         so it always contains the last hints we set for the window manager.
13727         made some event handlers return TRUE instead of FALSE.
13728         the overall code should be much more straight forward now, and the
13729         significant code portions are accompanied by comments now.
13730         (gtk_window_set_hints):
13731         removed requisition argument and made it
13732         fetch the requisition through gtk_widget_get_child_requisition.
13733         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13734         does that now.
13735         (gtk_window_show):
13736         ensure that the widget is realized before calling 
13737         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13738         ensure that we got properly size requested and allocated before
13739         realization.
13740         (gtk_window_configure_event):
13741         ignore plain window moves, or reallocate the widget tree through the
13742         resize queue otherwise.
13743         (gtk_window_move_resize):
13744         mostly rewrote this function to figure window manager hints more
13745         reliably, coalesce window moves and resizes to reduce configure events
13746         and do actuall size allocations.
13747
13748 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13749
13750         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13751         that have a resize pending, because a redraw is already queued for them.
13752
13753         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13754         hack to clear resize_widgets.
13755
13756         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13757         for resize containers prior to size allocation. (this is also a bit
13758         ugly, but avoids side effects for stopped emissions and is thus more
13759         reliable).
13760         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13761
13762         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13763         function from gtk_tooltips_expose, as we connect to ::expose_event
13764         *and* ::draw now.
13765
13766 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13767
13768         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13769         checks.
13770         (gtk_target_list_unref): Likewise.
13771
13772         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13773
13774 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13775
13776         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13777         guard against division by zero. (Fixes bug #1339)
13778
13779 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13780
13781         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13782         Prevent the trivial leak of information of allowing
13783         word motion when the entry is not visible.
13784
13785 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13786
13787         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13788         modality to error dialog as well as confirmation dialogs.
13789         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13790
13791 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13792
13793         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13794         tree->view_lines.
13795         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13796
13797         * gtk/Makefile.am (install-data-local): Solaris apparently
13798         has various troubles with ln -f; use rm first instead.
13799         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13800
13801 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13802
13803         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13804         use `cp' followed by `rm' (the `rm' was already there).
13805
13806 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13807         
13808         * configure.in: Fix autoconf warnings about cross compilation by
13809         trying to provide sane defaults for AC_TRY_RUN.
13810         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13811         put them into $(srcdir) when generated. Also add a dependency of
13812         gtksignal.h on gtkmarshal.h for -j builds. 
13813         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13814
13815 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13816
13817         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13818         GDK_THREADS_{LEAVE,ENTER} pair.
13819         (From Paul Fisher <pnfisher@redhat.com>)
13820
13821 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13822
13823         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13824         width and height are always >0 (owen).
13825
13826 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13827
13828         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13829         change that assured that a widget's allocated with and height are
13830         always >1, since this breaks *buggy* panel code. unfortunately this
13831         back-breaks the gimp's color selector.
13832
13833         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13834         allocation is always >0 in width and height, before sending the
13835         configure event; this is a *gross* hack to get the gimp back to work.
13836         
13837         * marked both cases with TODO-1.3
13838
13839 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13840
13841         * gtk/gtktext.c: Don't display wrap indicators when
13842         text is not editable and word wrap is on.
13843
13844 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13845
13846         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13847         option menus here as they are not derived from menu shell, assure that
13848         the option menu has a menu we can add items to.
13849
13850 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13851
13852         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13853         width/height to (gint) before calculations and check against < 0 to
13854         avoid guint wraparounds.
13855
13856 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13857
13858         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13859         width and height is never zero. sanity check both dimensions against
13860         32767 and issue a warning if the allocation is greater than that.
13861
13862 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13863
13864         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13865         to g_main_pending() as well.
13866
13867 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13868
13869         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13870         call to g_main_iteration() - since that will regrab
13871         GTK+ lock to process events.
13872
13873 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13874
13875         * gtk/gtkwindow.c
13876         - Regularize with the rest of GTK+ by making widget->requisition
13877           not reflect the set_usize()
13878         - Always recompute geometry hints, then check if they
13879           changed before sending them to the X server. The
13880           previous checks for changes would fail in a number
13881           of circumstances. 
13882
13883 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13884
13885         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13886
13887 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13888
13889         * gtk/gtkdnd.c:
13890         - Code cleanups
13891         - Instantaneously update on modifier key presses
13892         - Allow cancellation of the drag with Escape.
13893
13894 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13895
13896         * gtk/testgtk.c (create_handle_box): Set the policy
13897         to auto_shrink - otherwise the appearance is rather
13898         strange when flipping between horizontal and vertical.
13899
13900 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13901
13902         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13903         (gtk_window_set_default_size): don't change a value if it's < 0.
13904         queue a resize.
13905
13906 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13907
13908         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13909
13910 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13911
13912         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13913         add an extra "/" when concating "/" + filename.
13914         (From Matt Grossman <mattg@oz.net>)
13915
13916 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13917
13918         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13919         for fg_gc if we set it for drawing pixmap.
13920
13921 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13922
13923         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13924         
13925         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13926         already set, call old engine's destroy function and
13927         unref the old engine.
13928
13929 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13930
13931         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13932
13933 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13934
13935         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13936
13937 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13938
13939         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13940         expand behaviour changed.
13941
13942         * gtk/gtklabel.c (gtk_label_set_pattern):
13943         (gtk_label_set_justify):
13944         (gtk_label_set_line_wrap):
13945         don't bother invoking queue_clear, the reallocation does
13946         that for us, always free_words so the upcoming resize will
13947         relayout the label's contents.
13948
13949 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13950
13951         * applied argument implementation patches from Elena Devdariani
13952         <elena@cogent.ca>.
13953
13954         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13955         ::space_style, ::relief
13956         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13957         * gtk/gtkpreview.c: ::expand
13958         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13959         * gtk/gtknotebook.c: ::homogeneous
13960         * gtk/gtklabel.c: ::wrap
13961         * gtk/gtklist.c: ::selection_mode
13962         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13963         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13964         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13965         * gtk/gtkclist.c: ::sort_type
13966         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13967         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13968
13969 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13970
13971         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13972         comment.
13973
13974 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13975
13976         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13977         counting right when we have to attach a new style
13978         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13979
13980         * gtk/gtkstyle.c: Documented the refcounting
13981         peculularities of gtk_style_attach.
13982
13983 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13984
13985         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13986         window types.
13987
13988         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13989         of GTK_TOPLEVEL for creating the window.
13990
13991 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13992
13993         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13994         the last argument (reported by Per Winkvist).
13995         
13996 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13997
13998         Fixes for invisible XOR lines (Frank Loemker
13999         <floemker@TechFak.Uni-Bielefeld.DE>)
14000         
14001         * gtk/gtkclist.c (gtk_clist_realize): Always use
14002         a non-zero pixel for GDK_XOR.
14003
14004         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14005         Use GDK_INVERT instead of GDK_XOR.
14006
14007 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14008
14009         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14010         signals if h/voffsets differ from adjustment values.
14011         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14012
14013 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14014
14015         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14016         ::selection-done emissions up to the topmost menu shell.
14017
14018 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14019
14020         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14021         the user data on the window before destroying it.
14022
14023         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14024         unrealize handler to take care of destroying 
14025         notebook->panel properly. 
14026         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14027
14028         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14029         of g_new and g_realloc to stop memory leak. (Actually,
14030         we could just use g_realloc(), but I'm not 100% sure
14031         that is portable).
14032         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14033
14034 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14035
14036         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14037
14038         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14039         for fontsets.
14040
14041         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14042         with bin/button confusion.
14043
14044 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14045
14046         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14047         and show how preselection of radio items is done.
14048
14049 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14050
14051         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14052         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14053         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14054         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14055         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14056         * gtk/gtktable.c (gtk_table_attach): 
14057         * gtk/gtklist.c (gtk_list_insert_items): 
14058         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14059         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14060         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14061         * gtk/gtkbin.c (gtk_bin_add): 
14062         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14063         * gtk/gtkfixed.c (gtk_fixed_put): 
14064         * gtk/gtklayout.c (gtk_layout_put):
14065         general fixups to container_add logic. always realize child if
14066         child->parent is realized, only map the child and queue a resize
14067         if child and child->parent are both visible.
14068
14069 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14070
14071         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14072         instead of gtk_container_foreach to walk and unrealize children, so
14073         composite children get also unrealized.
14074         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14075         (gtk_widget_map): assert that the widget is visible (basic constrain).
14076         (gtk_widget_real_map): assert that the widget is realized (basic
14077         constrain).
14078
14079 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14080
14081         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14082
14083 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14084
14085         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14086         file for iso-8859-2 locales.
14087
14088         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14089
14090 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14091
14092         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14093          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14094          Remove some suspicious and useless lines. 
14095
14096 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14097
14098         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14099         width,height = 0, 0 to mean - here to edge of window,
14100         instead of -1, -1, since the former is all we support.
14101
14102 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14103
14104         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14105         when removing from quit_functions list.
14106
14107 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14108
14109         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14110
14111 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14112
14113         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14114          When redrawing characters on non-visible entry, use appropriate
14115          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14116
14117 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14118
14119         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14120         from drag coordinates.
14121         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14122         use drag_dest_cell.
14123
14124         * gtk/gtktree (drag_dest_cell)
14125         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14126         (Bug #1129)
14127
14128 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14129
14130         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14131         translate_* fields.
14132         (gtk_item_factory_finalize): invoke translate_notify independant from
14133         translate_data.
14134         (gtk_item_factory_set_translate_func): likewise.
14135         (gtk_item_factory_destroy): only remove ifactory pointer from those
14136         widgets that belong to us (stupid me).
14137
14138 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14139
14140         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14141         rc_style list when lookup succeeeds.
14142
14143 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14144
14145         * gtk/gtkctree.c (resync_selection): 
14146         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14147         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14148         bug.
14149
14150 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14151
14152         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14153         Add some missing GDK_THREADS_ENTER()/LEAVE around
14154         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14155
14156 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14157
14158         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14159         rather than emit_by_name.
14160
14161         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14162         on the widget across multiple signal emissions.
14163         (gtk_editable_delete_text): same here.
14164         (gtk_editable_class_init): set widget_class->activate_signal after
14165         editable_signals[ACTIVATE] has been created.
14166
14167 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14168
14169         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14170         position here prematurely -- we might not have the
14171         right ->min_position and ->max_position yet.
14172
14173 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14174
14175         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14176         Add error traps so if the other end of the connection
14177         dies, we survive.
14178
14179         * gtk/gtkselection.c (gtk_selection_notify): Clean
14180         up properly when selection property retrieval fails.
14181         
14182         * gtk/gtkselection.c (gtk_selection_request): Correctly
14183         reject SelectionRequest notifies where the handler
14184         returns no data.
14185
14186 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14187
14188         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14189         when we've previously highlighted.
14190
14191         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14192         emit two "drag_leave" signals for Motif drops.
14193
14194         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14195         back the correct status messages when dropping from
14196         Motif onto a proxy window that is rejecting the
14197         drop.
14198
14199 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14200
14201         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14202         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14203         to compare two argument values. added gtk_arg_to_valueloc() to set a
14204         variable from an arg through its location (pointer).
14205
14206         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14207         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14208         as gfloat*, uchars are collected as guchar*, ints are collected as
14209         gint*, etc...
14210
14211 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14212
14213         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14214         Include <string.h> instead of <strings.h>.
14215
14216         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14217         (actually, a lot more duplicate includes occur if
14218          you trace through the sequence of #include's)
14219         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14220         
14221 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14222
14223         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14224         gtk-a-higuti-990322-[0-3]
14225
14226         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14227         that was causing -DX_LOCALE not to work.
14228
14229         * gtk/gtkrc.c (gtk_rc_init):
14230         X_LOCALE will never have LC_MESSAGES defined
14231
14232 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14233
14234         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14235         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14236
14237         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14238         left/right as well (gtk-michael-980726-0.patch.gz).
14239
14240         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14241         for pointer values, use gchar instead of char. fixed uline allocation
14242         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14243         chunks instead of G_ALLOC_ONLY.
14244         (gtk_label_size_request): always alter requisition as passed and leave
14245         widget->requisition alone.
14246         (gtk_label_set_text): allow NULL strings.
14247         (gtk_label_new): likewise.
14248
14249 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14250
14251         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14252
14253 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14254
14255         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14256         *and* mapped (i.e. drawable).
14257         (gtk_bin_expose): only send exposes to drawable children.
14258
14259         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14260         (gtk_box_expose): only send exposes to drawable children.
14261
14262         * gtk/gtkhscale.c (gtk_hscale_draw): 
14263         * gtk/gtkvscale.c (gtk_vscale_draw):
14264         hm, this is an ugly one. we first compute the size of our trough area
14265         here (window relative) and then check intersection with the draw_area
14266         which is parent relative because we're a NO_WINDOW widget, so we need
14267         to offset the trough area by allocation.x and allocation.y before the
14268         check. (this must not be done for the background area though, since
14269         that's already computed parent relative).
14270
14271 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14272
14273         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14274         unrealize title buttons.
14275
14276 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14277
14278         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14279         (gtk_clist_column_title_active): 
14280         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14281
14282         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14283         zero initialize event, removed superfluous gdk_window_get_pointer call
14284
14285         * gtk/gtklist.c (gtk_list_vertical_timeout)
14286         (gtk_list_horizontal_timeout): removed superfluous
14287         gdk_window_get_pointer call
14288
14289 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14290
14291         * plugging problems reported by "Bruce Mitchener, Jr."
14292         <bruce@puremagic.com> due to a purify session.
14293
14294         * gtk/gtkstyle.c:
14295         (gtk_style_ref): 
14296         (gtk_style_unref): assert ref_count to be > 0.
14297
14298         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14299         the requisition.
14300         (gtk_clist_set_shift): likewise.
14301
14302         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14303         adjustments.
14304
14305         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14306         event before sending it and set send_event to TRUE (which needs to
14307         be done for *all* synthesized events).
14308         (gtk_list_vertical_timeout): likewise.
14309
14310         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14311         leaks.
14312
14313         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14314         to TRUE when synthesizing events.
14315
14316 [ *** end of merges from 1.2 *** ]      
14317         
14318 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14319
14320         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14321         (or copied from gdkconfig.h.win32 on Win32, sigh).
14322
14323         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14324
14325         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14326
14327         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14328
14329         * gdk/gdkconfig.h.win32: New file.
14330
14331         * gdk/win32/makefile.cygwin: Build just a static archive here.
14332
14333         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14334         for the DLL from the static archive built above.
14335
14336         * gdk/gdk.def: Moved here from the win32 subdirectory.
14337
14338         * gdk/win32/*: Adapt for the changed private struct organisation.
14339
14340         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14341
14342 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14343
14344         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14345         for wheel mice (buttons 4 and 5).
14346
14347 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14348
14349         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14350         drawables use just the pixel field in the foreground and
14351         background GdkColor of the GdkGC.
14352
14353         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14354         GdkColors containing uninitialized (red,green,blue) fields, and
14355         just the pixel field filled in, and furthermore in the
14356         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14357         It thus turns out that we really don't need to have the full
14358         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14359         it later to have just the pixel values.
14360
14361 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14362
14363         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14364
14365 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14366
14367         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14368         New question on GtkLabel background colors.
14369
14370         * docs/gtk_tut.sgml:
14371           - Correct the example code callback
14372             function definitions.
14373           - Update the gtkdial example code, from Frans van Schaik.
14374           - Update setselection.c to current API.
14375
14376         * examples/Makefile examples/*/*.c: Update to code
14377         listed in tutorial.
14378
14379 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14380
14381         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14382         subrange table (from the "Developing International Software for
14383         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14384         block... Get the loaded font's charset correctly.
14385
14386         (Note that this, and the other *-win32.c files, still really are
14387         the old ones, the win32 subdirectory is not ready for compilation
14388         yet after the reorg.)
14389
14390 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14391
14392         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14393         check.
14394
14395 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14396
14397         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14398         on results of XQueryDeviceState().
14399
14400 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14401
14402         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14403         we need to accesss only ->children. We need an accessor
14404         for the children.
14405
14406         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14407         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14408         to get rid of gdkx.h include.
14409         
14410         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14411         and random references to 'None'.
14412
14413         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14414         Get rid of unused #include <gdk/gdkx.h>
14415
14416         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14417         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14418         gdkconfig.h.
14419
14420 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14421
14422         * gdk/win32/gdkdraw.c
14423         * gdk/win32/gdkfont.c
14424         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14425         following yesterday's changes. (Unrelated to Owen's reorg.)
14426
14427 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14428
14429         * gdk/x11/gdkinput-gxi.c: Add missing include,
14430           fix GdkWindowPrivate => GdkDrawablePrivate.
14431
14432         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14433
14434         * gdk/x11/Makefile.am (xinput_sources): Add missing
14435         backslash to fix building with --with-xinput=none
14436
14437 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14438
14439         Move all X specific code into the x11/ directory.
14440         Aside from shuffling things around, did the following:
14441
14442        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14443          gdk_arg_context_* - a simple argument parsing system
14444          in the style of popt.
14445
14446        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14447          gdk/x11/gdkprivate-x11.h:
14448          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14449          add ->klass and ->klass_data fields. The klass_data
14450          field points to an auxilliary structure that is
14451          windowing system dependent.
14452
14453        * gdk/gdkfont.c: Make most of the measurement functions
14454          simply wrappers around gdk_text_extents().
14455
14456        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14457          _gdk_font_strlen() function that hides the weird
14458          behavior in gtk+-1.[02] where a string is interpreted
14459          differently for 8-bit and 16-bit fonts.
14460
14461        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14462          to store common code for synthesizing double/triple
14463          press events.
14464         
14465        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14466          Make all the function that modify an existing GC
14467          simply wrappers around gdk_gc_set_values().
14468          
14469        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14470          for throwing out later.
14471
14472        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14473          GdkImagePrivate and GdkColormapPrivate to have a
14474          windowing system dependent part (GdkFontPrivateX etc.)
14475          that "derives" from the system-independent part.
14476
14477        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14478          Got rid of the included-source-files for XInput in
14479          favor of automake conditionals. (Which didn't exist
14480          when XInput support was originally added.)
14481
14482        * gdk/gdkrgb.c: Remove the visual id from the debugging
14483          statements since that is X11 specific; print out
14484          type/depth info instead.
14485          
14486
14487 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14488
14489         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14490         loading duplicates of hashed fonts.
14491
14492         * gdk/gdk.c (gdk_keysym_convert_case): rename
14493         gdk_XConvertCase to gdk_keysym_convert_case, allow
14494         results to be NULL in the GTK+ style.
14495
14496         * gdk/gdkcompat.h: Started compatibility header
14497         for renames.
14498
14499 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14500
14501         * gdk/win32/gdkprivate.h: New font private structures, related to
14502         fontsets.
14503
14504         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14505         gdk_font_list_free(). On X11, will just be wrappers to
14506         XListFonts() and XFreeFontNames(). On Win32, the code previously
14507         in gtkfontsel.c is now here.
14508
14509         New function gdk_font_xlfd_create(). On X11 will get the FONT
14510         property of the font (for GDK_FONT_FONTs), or call
14511         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14512         builds a XLFD style name from the font information in the LOGFONT
14513         struct(s).
14514
14515         New function gdk_font_xlfd_free(), which correspondingly frees the
14516         string returned by gdk_font_xlfd_create().
14517
14518         Implement fontsets on Win32. Add a function that iterates over a
14519         wide char string and calls a callback function for each substring
14520         of wide chars from the same Unicode subrange (and thus probably
14521         available in the same real font).
14522
14523         Improve the XLFD emulation a bit.
14524
14525         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14526
14527         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14528         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14529         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14530         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14531         ImmGetCompositionStringW() to get the composed Unicode chars.
14532
14533         * gdk/win32/gdkgc.c
14534         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14535         struct changes.
14536
14537         * gdk/win32/gdk.def: Add the new functions.
14538
14539 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14540
14541         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14542         get the Platform SDK to get <dimm.h>.
14543
14544         * gdk/win32/gdkevents.c: More event handling fixes and
14545         simplification. Never generate motion events with is_hint true. We
14546         used to do that on bogus grounds earlier. Windows sends
14547         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14548         moved, ignore these.
14549
14550         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14551
14552         * gdk/win32/gdkglobals.c
14553         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14554         the TrackMouseEvent function, and use it.
14555
14556         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14557         char before calling WideCharToMultiByte in order to get a string
14558         for the window title.
14559
14560         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14561
14562         * gdk/win32/gdk.def: Remove obsolete functions.
14563
14564         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14565         /nodefaultlib and /defaultlib switches.
14566
14567         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14568
14569 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14570
14571         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14572         EuroSign).
14573
14574         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14575         same type as GdkWChar, especially on Win32.
14576
14577         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14578
14579         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14580         before passing to Windows GDI for drawing etc. Convert to the
14581         system default codepage before passing to Windows as window
14582         titles.
14583
14584         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14585         support changing input locale on the fly.
14586
14587         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14588         on-the-fly changes. Convert incoming characters from the current
14589         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14590         on the current input language. Use keysym<->Unicode mapping tables
14591         and functions borrowed from xterm sources.
14592
14593         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14594         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14595         Manager) if available. IMEs and the Active IMM are available under
14596         the disguise of Chinese, Korean and Japanese support for IE and
14597         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14598         support is present in all editions (as long as you install it).
14599
14600         Call DispatchMessage from gdk_events_queue() (and thus
14601         gdk_WindowProc()), instead of duplicating the code in
14602         gdk_WindowProc().
14603
14604         Reworked the grab handling and propagation code, factored out
14605         duplicated code snippets into separate functions. Other cleanups,
14606         too.
14607
14608         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14609         the <dimm.h> header describing the Active IMM.
14610
14611         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14612         just do the same as for "single" fonts.
14613
14614         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14615         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14616         the new keysyms from gdkkeysyms.h.
14617
14618         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14619         fontset, so that gtkentry uses wide characters.
14620
14621         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14622         GTk+'s system directory "gtk+", not "gtk".
14623
14624 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14625
14626         * docs/gtkfaq.sgml: FAQ update
14627
14628 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14629
14630         * gdk/win32/gdkprivate.h: Add more font private data.
14631
14632         * gdk/win32/gdkfont.c
14633         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14634         fonts and strings. Now works much better. You still have to
14635         have a correct font selected, though. No fontset emulation yet.
14636
14637 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14638
14639         * gtk/maketypes.awk: Use G_OS_WIN32.
14640
14641         * gtk/gtk.def: Add some missing entry points. Also some non-public
14642         ones, but PyGTK porter claims to need them.
14643
14644         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14645         built-in type generation.
14646
14647 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14648
14649         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14650         GDK_FONT_FONT fonts (which is all we have for now, we don't
14651         emulate fontsets). The X11 version uses plain XDrawString in that
14652         case, too. The string passed to gdk_draw_text_wc seems to be in
14653         fact (at least, when used by gtkentry and gtktext) either in a
14654         single-byte charset, or a DBCS. Not Unicode.
14655
14656         This fixes the problem in gtkfontsel, where even if you had
14657         selected a font with a non-Latin1 charset (windows-greek, for
14658         instance), the preview still used Latin-1 glyphs.
14659
14660         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14661         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14662         (gdk_font_load): Recognize the demibold etc weights, even if we
14663         don't have the corresponding constants in the headers.
14664         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14665         version. Should save font resources a bit, when we don't have
14666         multiple HFONTs for the same font.
14667
14668         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14669         version.
14670
14671 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14672
14673         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14674         X values
14675
14676 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14677
14678         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14679         layout support (as mentioned on
14680         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14681
14682 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14683
14684         * gtk/fnmatch.c
14685         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14686
14687 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14688
14689         * configure.in (ALL_LINGUAS): Added Galician (gl)
14690
14691 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14692
14693         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14694
14695         * gdk/win32/gdkcompat.c: New file, actually provide an
14696         implementation for the deprecated functions. (Just temporarily.)
14697
14698         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14699
14700         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14701
14702         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14703
14704 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14705
14706         * configure.in: Added "uk" to ALL_LINGUAS.
14707         
14708 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14709
14710         * configure.in: correct checking for BeOS check
14711
14712         * gdk/gdktypes.h
14713         * gtk/fnmatch.c
14714         * gtk/gtkfilesel.c
14715         * gtk/gtkitemfactory.c
14716         * gtk/gtkmain.[ch]
14717         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14718
14719 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14720
14721         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14722         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14723         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14724         by Bulgarian). 
14725
14726 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14727
14728         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14729         Fix a reference to window_private->destroyed.   
14730
14731         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14732         (ugly) setting of an internal GdkWindow member to use
14733         a _slightly_ cleaner macro.
14734
14735         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14736         GdkDrawablePrivate and GdkWindowPrivate.
14737         Add extra macros for accessing GDK_DRAWABLE_ components.
14738
14739         * *.[ch]: Massive adjustments for the above, use the
14740         new macros in a lot of places.
14741
14742 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14743
14744         * gdk/gdktypes.h: Make GdkDrawable the base type,
14745         not GdkWindow.
14746
14747 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14748
14749         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14750
14751 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14752
14753         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14754
14755 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14756
14757         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14758         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14759
14760         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14761
14762         * docs/gtk-config.1: Now autogenerated.
14763         * docs/Changes-1.4.txt: started
14764         
14765 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14766
14767         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14768         to #ifdef also here.
14769
14770         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14771         Owen did to the X11 backend.
14772
14773         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14774         ScrollWindowEx when blitting inside a window, it can't be correct
14775         in the general case.
14776
14777         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14778         WM_GETMINMAXINFO is easier.
14779
14780         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14781         depth equal to the bitspixel value, not the visual's depth.
14782
14783         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14784         to 24 even if the bitspixel value is 32.
14785
14786         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14787         need to check for depth==32 when bpp==32, depth will always be 24.
14788
14789 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14790
14791         * docs/Changes-1.4.txt: Started
14792         
14793         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14794
14795         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14796         
14797         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14798         into C file.
14799         
14800         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14801         header to gdkinputprivate.h.
14802
14803         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14804         unused since before 1.2.
14805
14806 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14807
14808         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14809         expand possible hex escapes in the font family (put there by
14810         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14811         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14812         On Win32, add hex escapes here, too.
14813
14814 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14815
14816         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14817         to #ifdef GDK_WINDOWING_X11.
14818
14819 [ Merges from gtk-1-2 ]
14820
14821 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14822
14823         * configure.in: fixed "GNU Make" check to pass with new make version
14824         3.77.95.
14825
14826 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14827
14828         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14829         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14830         AM_PATH_GTK() macros don't get confused by the -pre1.
14831
14832 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14833
14834         * configure.in (REBUILD): Change check for perl5
14835           to check explicitely for v >= 5.002. (5.001
14836           does not work with our scripts.)
14837
14838 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14839
14840         * configure.in: evaluate $PERL for the perl version check. added
14841         --disable-rebuilds to give the user an option to completely disable
14842         any source autogeneration rules.
14843
14844 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14845
14846         * configure.in: evaluate $ac_make when checking for GNU Make.
14847
14848 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14849
14850         * docs/Makefile.am: added generation.txt.
14851
14852         * Makefile.am: require automake 1.4, build README from README.in and
14853         INSTALL from INSTALL.in in dist-hook.
14854         
14855         * README.in:
14856         * INSTALL.in: new files to autogenerate README and INSTALL from.
14857
14858         * configure.in: figure whether we have GNU Make
14859
14860         * docs/generation.txt: minor additions/corrections.
14861
14862 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14863
14864         * docs/gtkfaq.sgml: FAQ Update
14865
14866 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14867         
14868         * configure.in: Fix autoconf warnings about cross compilation by
14869         trying to provide sane defaults for AC_TRY_RUN.
14870
14871 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14872
14873         * ltconfig
14874         * ltmain.sh: upgrade to libtool 1.3.3
14875
14876 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14877
14878         * INSTALL: Indicate that the --with-glib= configure
14879         time flag is unsupported.
14880
14881 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14882
14883         * docs/generation.txt: Added a file that gives
14884         documenation about the autogeneration process for
14885         various autogenerated files.
14886         
14887 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14888
14889         * configure.in (LIBS): Look for libgmodule in the
14890         right location.
14891
14892 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14893
14894         * docs/gtk_tut.sgml: Removed references to
14895         code examples in my directory on gtk.org as
14896         they should all be in the tutorial now.
14897
14898         * docs/gtk_tut.sgml: Added sources for dial-test
14899         and scribble-xinput programs that were previously
14900         missing.
14901
14902 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14903
14904         * TODO: Added entry about menu keyboard navigation, removed
14905         some finished items.
14906
14907 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14908
14909         * acinclude.m4: Standardize on func_dgettext
14910         not func_gettext, so that the checks for dgettext
14911         actually are paid attention to.
14912
14913 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14914
14915         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14916         directly, rather than repeating the checks for
14917         gettext.
14918
14919         * INSTALL: Added information about gettext and
14920         NLS support.
14921
14922         * acinclude.m4 (LIBM): Check for dgettext, not
14923         just gettext. This should hopefully fix things wrt
14924         systems with old versions of GNU gettext installed.
14925
14926 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14927
14928         * configure.in (LIBS): Look for libgmodule in the
14929         right location.
14930
14931 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14932
14933         * autogen.sh: add --enable-maintainer-mode
14934
14935         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14936
14937 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14938
14939         * docs/gtk-config.1.in:
14940           docs/Makefile.am:
14941           configure.in: gtk-config is now generated.
14942
14943         * docs/gtk-config.1: Removed, now generated.
14944
14945 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14946
14947         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14948         handle CreateNotify itself, still put out a debuging message for
14949         --gdk-debug=events. made the ReparentNotify debugging message more
14950         verbose.
14951         wrap xcoords translation for ConfigureEvents into an error trap,
14952         a destroy event may already be pending, and in that case, the
14953         actuall coordinate values are not at all critical.
14954
14955 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14956
14957         * gdk/gdkcc.c: Stop leaking the color_hash all over
14958         the place. Simplify and improve the logic.
14959
14960 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14961
14962         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14963         for prototypes and function implementations consistent (reported
14964         by Tomas Ogren).
14965
14966 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14967
14968         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14969         send_event set in debugging output.
14970         (gdk_compress_exposures): default initialize the event so we don't
14971         operate on bogus values (namely send_event).
14972
14973 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14974
14975         * gdk/gdkwindow.c: When we receive an unexpected
14976         destroy notify on one of our windows, don't just
14977         warn about it, also mark our windows as destroyed.
14978
14979 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14980
14981         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14982           name => font and name => fontset hashes. The 
14983           name => fontset hash is a _big_ win since we
14984           weren't previously caching fontsets at all and loading
14985           fontsets is expensive. The name => font hash
14986           is less of a win, but it does save us from doing
14987           repeated XQueryFont calls on the same font.
14988
14989         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14990           list so we can remove font/fontset from hash.
14991
14992 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14993
14994         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14995           and slightly confusing test. [ XInternAtom (,,TRUE)
14996           will never return None ].
14997
14998 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14999
15000         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15001           gdk/gdkwindow.c (gdk_window_set_hints):
15002
15003         Don't omit setting the properties if flags == 0 -
15004         there may be an existing set of properties there
15005         already. (Very old bug. Would it be better to
15006         delete the property instead?)
15007
15008         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15009           spelling error in comment.
15010
15011 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15014           to avoid stomping over gdk_error_warnings.
15015
15016         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15017           as (bits_per_pixel + 7) / 8. This gives the same
15018           result as before for multiples of 8, but actually
15019           a "reasonable" value for 1bit or 4bit displays.
15020
15021 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15022
15023         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15024         GNU Make.
15025
15026 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15027
15028         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15029         discarding configure events.
15030
15031 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15032
15033         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15034         refcount is greater than zero.
15035
15036         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15037
15038         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15039
15040         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15041
15042         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15043
15044 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15045
15046         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15047         that format 32 => sizeof(item) == 4. It really is
15048         sizeof(long).
15049
15050 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15051
15052         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15053         core dump at all on X IO errors, only core dump
15054         if --enable-debug for X errors.
15055
15056 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15057
15058         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15059         unknown window:" message. disabled ConfigureNotify discarding code,
15060         because it led to events being processed out of order.
15061
15062 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15063
15064         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15065
15066         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15067         we export this function, supress error warnings and don't reset the
15068         error code in the first half of this function.
15069
15070         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15071         code (instead of just -1) so gdk_error_trap_pop() reveals something
15072         actually informative about the error that happened.
15073
15074         * gdk/*.c:
15075         don't rely on gdk_error_code being -1 if an error occoured, but just
15076         gdk_error_code != 0.
15077
15078 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15079
15080         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15081         pointer *before* invoking the filter function, so we at least don't
15082         crash if a filter is removed that is currently executed. window filters
15083         *really* need to be made truely reentrant at some point.
15084
15085 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15086
15087         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15088         PropertyNotify debug messages.
15089
15090 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15091         
15092         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15093         
15094         * gdk/gdkim.c: Fix cut-and-paste errors for 
15095         x/y and PreeditAttributes/StatusAttributes.
15096
15097 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15098
15099         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15100         G_MAXINT to 2^16 to alleviate overflow problems in
15101         various window managers.
15102
15103 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15104
15105         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15106         for fontsets.
15107
15108 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15109
15110         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15111         Initialize size_hints.x and size_hints.y because kwm
15112         brokenly pays attention to them.
15113         (Bug #1181 -  Lars Heete <hel@admin.de>)
15114
15115 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15116
15117         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15118         return value of gdk_list_visuals(). 
15119         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15120
15121 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15122
15123         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15124         XSetIMValues to (void *) when comparing to NULL, to workaround
15125         the problem of some compilers barfing since older X headers don't
15126         have the prototype for it.
15127
15128 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15129
15130         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15131         for pseudocolor where colormap->colors was double
15132         allocated.
15133
15134         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15135         color value in the hash table with the pixel filled
15136         in so when we do later hash table lookups, the color
15137         value is correct.
15138         
15139 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15140
15141         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15142         making the call
15143
15144 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15145
15146         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15147         pointed out by Morten Welinder <terra@diku.dk>.
15148
15149 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15150
15151         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15152           default filter from the list
15153
15154 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15155
15156         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15157           default filter from the list
15158
15159 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15160
15161         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15162
15163         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15164         g_strdup_printf instead of calcing the length separately
15165
15166 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15169         that we don't do in many other places. (Fixing duplicate 
15170         #include of config.h)
15171
15172         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15173         Otherwise, #ifndef XINPUT_NONE check in the latter
15174         doesn't work. (Bug #546)
15175
15176 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15177
15178         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15179         "None" case insensitive.
15180
15181 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15182
15183         * gdk/gdkselection.c: 
15184         Add error traps so if the other end of the connection
15185         dies, we survive.
15186
15187 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15188
15189         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15190         dest_xid field into two fields - one for the window
15191         to send in messages, one to indicate the last looked
15192         up window for caching purposes. This is needed, so
15193         that Leave messages get the correct window.
15194
15195 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15196
15197         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15198         Fix warning created by people mucking around
15199         with the gsource API.
15200
15201         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15202         Change mapping between GIOCondition and GdkInputCondition
15203         to match the way the Linux kernel does it. This should
15204         fix problems where closed pipes were no longer signalling
15205         GDK_INPUT_READ on systems with a native poll().
15206
15207 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15208
15209         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15210         explicitly for the string "None" - it is in the XPM
15211         spec and some servers treat unknown colors in odd ways
15212         (like asking the user!)
15213
15214 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15215
15216         * gdk/gdkevents.c: made "->" into a "." of previous change so
15217         it compiles
15218
15219 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15220
15221         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15222         window field of the event structure before calling
15223         user filters.
15224
15225 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15226
15227         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15228         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15229
15230 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15231
15232         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15233         intermediate text property - prevents major memory
15234         leak when gdk_use_mb.
15235         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15236
15237 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15238
15239         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15240         gtk-a-higuti-990322-[0-3]
15241
15242         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15243         sizeof(wchar_t) != sizeof (GdkWChar)
15244
15245         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15246         that was causing -DX_LOCALE not to work.
15247
15248         * gtk/gtkrc.c (gtk_rc_init):
15249         X_LOCALE will never have LC_MESSAGES defined
15250
15251         * gdk/gdk.c (gdk_init_check):
15252         Remove --xim-preedit and --xim-status from argv properly.
15253
15254         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15255         that the client window is present on the X server
15256         before we pass it to the input method.
15257
15258 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15259
15260         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15261         if --display is specified on the command line, than
15262         the drag window will not be created on that display.
15263         
15264 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15265
15266         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15267         lookups with only_if_exists == TRUE were inserting
15268         bogus values into the atom cache.
15269
15270 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15271
15272         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15273         then reset it to NULL.
15274
15275         * gdk/gdkcolor.c:
15276         (gdk_colors_free): 
15277         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15278         key for g_hash_table_remove() in both functions, this prevents us
15279         from accessing possibly uninitialized portions of a GdkColor structure
15280         where we are only interested in its pixel value.
15281
15282 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15283
15284         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15285         font hash table, if we have a GdkFontPrivate entry for this font
15286         already, simply increment its reference count, provided by Olaf Dietsche
15287         <olaf.dietsche+list.gtk@netcologne.de>.
15288
15289 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15290
15291         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15292         just to be sure.
15293
15294         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15295         unused variables, leftovers from the X11 version.
15296
15297         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15298
15299         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15300         downcase fields on X11.
15301
15302 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15303         
15304         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15305         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15306
15307 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15308
15309         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15310
15311         * gtk/makefile.msc: Correct path to libintl.
15312
15313         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15314         use of gint vs. int, and gint vs. gboolean in headers and
15315         definitions. Use GtkType for the *_get_type functions. Note that
15316         these changes preserve binary compatibility.
15317
15318         * gdk/gdk.c
15319         * gdk/win32/gdk.c
15320         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15321
15322         * gtk/gtkmain.c
15323         * gtk/gtkclist.c
15324         * gtk/gtkmenufactory.c
15325         * gtk/gtknotebook.c
15326         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15327         vs. gboolean.
15328
15329         * gtk/gtkcolorsel.[ch]
15330         * gtk/gtkcombo.[ch]
15331         * gtk/gtkdrawingarea.[ch]
15332         * gtk/gtkgamma.[ch]
15333         * gtk/gtkhandlebox.[ch]
15334         * gtk/gtkhpaned.[ch]
15335         * gtk/gtkhruler.[ch]
15336         * gtk/gtkplug.[ch]
15337         * gtk/gtkpreview.[ch]
15338         * gtk/gtkruler.[ch]
15339         * gtk/gtksocket.[ch]
15340         * gtk/gtkstatusbar.[ch]
15341         * gtk/gtktoolbar.[ch]
15342         * gtk/gtkvbbox.[ch]
15343         * gtk/gtkvpaned.[ch]
15344         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15345         functions.
15346
15347         * gtk/gtkgamma.h: Fix bug, missing () in call of
15348         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15349
15350 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15351
15352         * gdk/gdkcolor.c (gdk_colormap_new)
15353         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15354         colormap->colors was allocated twice.
15355
15356         * gdk/win32/gdk.c: Remove some unused stuff.
15357
15358         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15359         colormap.
15360
15361         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15362         * gtk/gtklabel.h (gtk_label_get_type)
15363         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15364         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15365         in a couple of places, not guint.
15366
15367 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15368
15369         * configure.in,po/et.po: added Estonian language file
15370
15371 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15372
15373         * configure.in,po/da.po: added Danish file
15374
15375 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15376
15377         * docs/gtkfaq.sgml: Minor FAQ Update
15378
15379 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15380
15381         * docs/gtkfaq.sgml: FAQ update
15382
15383 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15384
15385         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15386         way to get window contents continually refreshed while resizing. I
15387         didn't like the effects myself, so it's not on by default.
15388
15389         * gdk/win32/gdkprivate.h: New flag variable
15390         gdk_event_func_from_window_proc, FALSE by default.
15391
15392         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15393         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15394         are passed --gdk-event-func-from-window-proc.
15395
15396         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15397         and we have am event_func, call it instead of enqueing the event.
15398
15399 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15400
15401         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15402         Kelley: Set expose_count in GdkEventExposes correctly.
15403
15404         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15405         MULTIPLE_WINDOW_CLASSES).
15406
15407         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15408         for bug in NT, apparently NT *does* draw the end pixel, too, in
15409         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15410
15411 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15412
15413         Improvements by Hans Breuer: 
15414
15415         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15416
15417         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15418         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15419         window contents while dragging" is turned on. Allocate at least
15420         one unique class for every GdkWindowType. If support for single
15421         window-specific icons is ever needed (eg. Dialog specific), every
15422         such window should get its own class.
15423
15424 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15425
15426         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15427         error that caused crashes.
15428
15429 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15430
15431         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15432         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15433         bugs when for instance part of the window was outside the
15434         display. Thanks to Philippe Colantoni for finding and fixing this.
15435
15436 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15437
15438         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15439         endpoint calculations which were totally wrong. (A little RTFMing
15440         helps a lot ;-)
15441
15442         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15443         from a separate directory, not from gettext, because of licensing
15444         issues (we want to use the LGPL version).
15445
15446         * README.win32: Mention the intl from glibc vs from gettext issue.
15447
15448 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15449
15450         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15451         in the key event handling: Now AltGr chars work again. Also,
15452         now Alt-digits are passed up as well as Control-digits.
15453         Pass keypad plus and minus as normal plus and minus.
15454
15455 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15456
15457         * docs/gtkfaq.sgml: FAQ Update
15458
15459 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15460
15461         * README.win32
15462         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15463         the Wintab SDK.
15464
15465         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15466         OK, but getting closer. Guard against bogus tilt data from Wacom
15467         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15468         enable easier building without Wintab.
15469
15470         * gdk/win32/gdkinput.h
15471         * gdk/win32/gdkevents.c 
15472         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15473         
15474         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15475         code. As we have just one visual on Win32, no sense to have it in a
15476         table, and no need for the hash table.
15477
15478         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15479         better on white background.
15480
15481 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15482
15483         * README.win32: Update gcc build instructions. Mention gettext is
15484         GPL.
15485
15486         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15487         supported cursor size with GetSystemMetrics.
15488
15489         * gdk/win32/gdkfont.c
15490         * gtk/gtkfontsel.c: Guard against some font weight and charset
15491         symbols being undefined (in mingw32 headers).
15492
15493         * gdk/win32/makefile.cygwin
15494         * gtk/makefile.cygwin
15495         * gtk/gtkthemes.c: No longer need to have differently named
15496         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15497
15498 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15499
15500         * docs/gtkfaq.sgml: Long awaited FAQ update.
15501
15502 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15503
15504         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15505         it. Obscure bit manipulation needed.
15506
15507         * gdk/win32/gdkevents.c: Logging.
15508         
15509         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15510         style (file name include compiler name) for theme engines.
15511
15512 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15513
15514         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15515
15516         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15517         events. The key.string wasn't zero-terminated, still we strdup'ed
15518         it in gdk_event_copy(). Synthesize crossing events for button
15519         events before possible propagation.
15520
15521         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15522
15523         * gdk/win32/makefile.cygwin
15524         * gtk/makefile.cygwin: Use new DLL naming style for the
15525         GCC-compiled ones.
15526
15527         * gdk/win32/makefile.msc
15528         * gtk/makefile.msc: Cosmetics mostly.
15529
15530         * gtk/gtk.def: Add missing entry points.
15531
15532         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15533
15534 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15535
15536         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15537         or height is zero. Don't print a warning if Pie or Arc fails, they
15538         always fail (?) for very narrow ellipses.
15539
15540         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15541         the part or the destination window corresponding to source area
15542         outside of the source drawable's boundary.
15543
15544         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15545         anything if less than two points.
15546
15547         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15548         return NULL. Gtk cut-and-paste inside a single program works
15549         better this way. (It always gets the clipboard contents from
15550         Windows, not from its own copy, which is cleared anyway. I can't
15551         say I fully understand what happens... Emulating the X selection
15552         and property stuff is a bit of a mess.)
15553
15554         * gdk/win32/gdkevents.c
15555         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15556
15557         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15558         that never got deleted). Revamp gdk_region_shrink.
15559
15560         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15561         after use.
15562
15563         * gtk/gtk.def: Add some missing entry points.
15564
15565         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15566         component.
15567
15568 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15569
15570         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15571         Control-digits specially.
15572
15573 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15574
15575         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15576
15577 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15578
15579         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15580         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15581         finding this.)
15582
15583 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15584
15585         * gtk+.spec.in: Corrected some typos in files section.
15586         
15587 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15588
15589         * README.win32: Mention using GNU gettext.
15590         * config.h.win32: Enable NLS stuff.
15591         * gtk/makefile.msc: Use GNU gettext.
15592         * gdk/win32/gdkdnd.c: Minor header reorg.
15593         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15594         cosmetics.
15595         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15596         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15597
15598 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15599
15600         * acinclude.m4
15601         * config.guess
15602         * config.status
15603         * ltconfig
15604         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15605
15606 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15607
15608         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15609         SafeAdjustWindowRectEx. Don't override all calls to
15610         AdjustWindowRectEx by it, but use it only in two places: When
15611         creating a new top-level window and when moving a top-level
15612         window.
15613
15614         Use screen coordinate rectangle, not client rectangle, in
15615         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15616         when we try to place a window so that the decoration (mainly,
15617         title bar) isn't visible.
15618
15619         These changes fix the bug that showed up for instance as the
15620         GIMP's saved top-level windows moving right and down (by an amount
15621         equal to the window decoration) for each session. This bug showed
15622         up also in testgtk's "Saved Position".
15623
15624         gdk_window_resize also redone a bit.
15625
15626 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15627
15628         * gtk/testgtkrc: Add (commented out) Windows-style theme
15629         include line.
15630
15631         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15632
15633 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15634
15635         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15636         gdkx.h to a gdk subdirectory, so that applications can include
15637         these with <gdk/*.h> without trouble.
15638
15639         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15640         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15641         have their bitmap destroyed.
15642
15643         * gdk/win32/gdk.def: Add gdk_root_parent.
15644
15645 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15646
15647         * configure.in
15648           gtk-config.in
15649           ltconfig
15650           ltmain.sh     
15651           gtk/Makefile.am: changes to compile nicely (with xlib) 
15652           on BeOS
15653
15654 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15655
15656         * acinclude.m4
15657         * config.guess
15658         * config.sub
15659         * ltconfig
15660         * ltmain.sh: upgrade to libtool 1.3
15661
15662 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15663
15664         * gtk/gtkclist.c:
15665         * gtk/gtkctree.c: merges from gtk-1-2
15666
15667 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15668
15669         Support added for building using a GNU toolchain on Win32,
15670         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15671
15672         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15673         * config.h.win32: Changes for gcc.
15674         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15675         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15676         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15677         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15678         Protect shl stuff unavaiilable with mingw32 headers.
15679         * gdk/win32/gdkevents.c: Fix typo.
15680         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15681         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15682         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15683         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15684         the mingw32 headers.
15685         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15686         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15687         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15688         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15689         Test for NATIVE_WIN32, not _MSC_VER.
15690         * gtk/gtkmain.c: No use warning about developer version on Win32,
15691         there aren't any non-developer versions anyhow.
15692         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15693         * gtk/makefile.msc: Use pthread from another directory. Minor other
15694         changes. 
15695
15696 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15697
15698         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15699           default filter from the list
15700
15701 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15702
15703         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15704          when gtk_widget_grab_default() is called for a widget that
15705          is not within a GtkWindow.
15706
15707 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15708
15709         * docs/gtk_tut.sgml, examples/clist.c: use a
15710           scrolled window in the clist example. Minor
15711           tutorial fixes.
15712
15713 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15714
15715         * docs/gtk_tut.sgml: Style check from David King
15716           <dking@youvegotmail.net>
15717
15718 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15719
15720         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15721         compile with unknown value of GDK_WINDOWING
15722
15723 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15724
15725         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15726         after the rule is fired.
15727         (install-exec-local): Install gdkconfig.h only if the contents are
15728         different from the currently installed gdkconfig.h.
15729
15730 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15731
15732         * gdk/Makefile.am (configexecincludedir): Rename from 
15733         configincludedir so that gdkconfig.h will be installed 
15734         as part of `make install-exec'. 
15735
15736 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15737
15738         * acinclude.m4
15739         * config.guess
15740         * config.sub
15741         * ltconfig
15742         * ltmain.sh: upgrade to libtool 1.2f
15743
15744         * autogen.sh: libtool is not required to autogen gtk+
15745
15746         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15747         needed)
15748
15749 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15750
15751         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15752         declaring gdk variables exported/imported from the DLL. New image
15753         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15754         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15755         GDK_DRAG_PROTO_OLE2.
15756
15757         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15758         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15759         declared only for the Win32 version, but could be in the X11
15760         version as well. (Needed for a Xlib-less gdk_imlib.)
15761         gdk_color_hash should have only one parameter. Declare
15762         gdk_threads_mutex with GDKVAR.
15763         
15764         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15765         just one parameter.
15766
15767         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15768         per pixel, not bits.
15769
15770         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15771         Fetch bpp (which means bits-per-pixel here) from another place on
15772         Win32. Accept also depth==32 (which we might get on Win32) with
15773         bpp==32.
15774
15775         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15776         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15777         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15778         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15779         in the backend-dependent directory, not in the common gdk
15780         directory.
15781
15782         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15783         headers.
15784
15785 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15786
15787         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15788         want to use the Gtk+ devel version (which is true, and yes - even i am
15789         currently working with the 1.2.x branch). so everyone reading this, you
15790         probably want to issue
15791         cvs checkout -r glib-1-2 glib
15792         and
15793         cvs checkout -r gtk-1-2 gtk+
15794         as your next two comands.
15795
15796 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15797
15798         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15799         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15800
15801         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15802         file. strongly deprecated the GTK_HAVE_* macros, we provide
15803         GTK_CHECK_VERSION() for people that need to check for certain
15804         Gtk+ versions.
15805
15806         * gtk/gtkcompat.h: removed this from CVS.
15807         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15808         idea right from the start, it just didn't seem like that back then.
15809
15810 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15811
15812         * merges from gtk-1-2:
15813
15814 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15815
15816         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15817         item factory class has been created.
15818         (gtk_item_factory_parse_rc): likewise.
15819
15820         * gtk/gtkmenu.c:
15821         keep proper references for old_active_menu_item.
15822         (gtk_menu_reparent): unset the usize of the new parent,
15823         so the menu can sanely be size requested and we don't get nasty screen
15824         artefacts upon next reparentation.
15825         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15826         enter notify. only synthesize enter notifies if the pointer really is
15827         inside the event window.
15828         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15829         (gtk_menu_popup): move the background setting stuff into
15830         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15831
15832         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15833         gtk_menu_shell_select_item() to select the new item.
15834         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15835         do the right thing for deselection as well.
15836
15837 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15838
15839         * gtk/gtkwidget.[hc]:
15840         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15841         are locked.
15842
15843         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15844         existing accelerators if the widget's accelerators are locked.
15845
15846 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15847
15848         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15849
15850         * gtk/gtkmenu.c: truely forward key press and key release events to
15851         the menu widget from the toplevel or tearoff window. we can't simply
15852         connect to that, we need to stop further processing of the events as
15853         well.
15854
15855 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15856
15857         * gtk/gtkmenu.c:
15858         (gtk_menu_key_press): pass event->keyval, event->state to
15859         gtk_accelerator_valid, instead of event->keyval twice.
15860         refuse to install single letter accelerators for menus that use
15861         single letter shortcuts.
15862
15863         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15864         gtk_menu_ensure_uline_accel_group().
15865
15866         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15867         which will always return an uline accel group, made
15868         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15869         yet created.
15870
15871 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15872
15873         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15874
15875         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15876         Leave button sensitive, trap  button_press, button_release,
15877         motion_notify, enter_notify and leave_notify events instead.
15878         (gtk_clist_column_title_active): disconnect event handler.
15879         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15880         Guillaume Laurent <glaurent@worldnet.fr>
15881
15882 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15883
15884         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15885         width/height mixups.
15886
15887         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15888         if needed.
15889
15890 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15891
15892         * gtk/testgtk.c (create_item_factory): unref the item factory after
15893         window's destruction.
15894
15895         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15896         count on the menu shell around the menu item's activation, since the
15897         signal emission may cause menu shell destruction.
15898
15899         * gtk/gtkitemfactory.c:
15900         the previous code leaked one accel group per menu. we use
15901         gtk_menu_get_uline_accel_group() now to fix that, and with that
15902         also create the underline accelerator group of the menus only if
15903         required (i.e. an underline accelerator has been specified).
15904         (gtk_item_factory_construct):
15905         (gtk_item_factory_create_item): removed code that would create an
15906         extra accel group for the menu (and leak references).
15907         (gtk_item_factory_create_item): adapted the underline accelerator
15908         installation code to properly feature gtk_menu_get_uline_accel_group().
15909
15910         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15911         menu->accel_group, this may return NULL if the accelerator group
15912         hasn't been set yet.
15913         added gtk_menu_get_uline_accel_group() to retrive the underline
15914         accelerator group of the menu, this will be created on demand
15915         and proper care is taken about its reference count.
15916
15917         * gtk/gtkitemfactory.h:
15918         * gtk/gtkitemfactory.c:
15919         dumped the approach of keeping a widgets by action list on the
15920         factory since the factory<->widget destroy negotiation didn't work
15921         and would be hard to get going at all. instead we keep a list of
15922         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15923         persistant throughout a program's life time).
15924         also, i removed the static const gchar *key_* variables, and made
15925         them inline strings (they weren't actually used anyways).
15926         (gtk_item_factory_add_item): update ifactory->items.
15927         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15928         the item factory pointer from the remaining ifactory widgets).
15929         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15930         list to find the widget.
15931         (gtk_item_factory_get_item): new function that works around
15932         gtk_item_factory_get_widget() limitations, this function will only
15933         return menu items, even for <Branch> entries.
15934
15935 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15936
15937         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15938         font hash table, if we have a GdkFontPrivate entry for this font
15939         already, simply increment its reference count, provided by Olaf Dietsche
15940         <olaf.dietsche+list.gtk@netcologne.de>.
15941
15942         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15943         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15944
15945 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15946
15947         * gtk/gtkcontainer.c:
15948         (gtk_container_add_with_args):
15949         (gtk_container_addv):
15950         (gtk_container_add): before adding a child to a conatiner, make sure
15951         it is (default) constructed, this is neccessary because under certain
15952         circumstances the child will get relized and mapped immediatedly, in
15953         which case it has to be constructed already.
15954
15955 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15956
15957         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15958         values > 1 as TRUE also.
15959
15960 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15961
15962         * README.win32: New file.
15963                 
15964         * configure.in: Check for lstat.
15965
15966         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15967         completeness.
15968
15969         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15970
15971         * gtk/gtk.def: Removed CRs.
15972
15973         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15974         ..\gdk\win32).
15975
15976         * gdk/win32/makefile.msc: Correct upwards relative paths.
15977         
15978 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15979
15980         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15981           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15982           it was connecting a void function to expose_event and the int
15983           returning function to the draw signal
15984
15985 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15986
15987         * configure.in:
15988         Use correct path to libgmodule.la when ref'ing uninstalled copy
15989         of glib.  (Already in stable branch, Bug #417)
15990
15991 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15992
15993         Win32 merge and general portability stuff:
15994                 
15995         * acconfig.h,configure.in: Check for <sys/time.h>.
15996
15997         * gdk/win32: New directory (actually, been there for a while).
15998         
15999         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16000         NATIVE_WIN32, and use these. Always case fold on Win32. No
16001         backslashed escapes on native Win32.
16002
16003         * gtk/{gtk.def,makefile.msc}: New files.
16004
16005         * gtk/Makefile.am: Add above new files.
16006         
16007         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16008         instead of <strings.h>.
16009
16010         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16011         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16012         <unistd.h> appropriately.
16013
16014         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16015         Use ABS() (from <glib.h>) instead of abs().
16016         
16017         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16018         of gtk (and thus glib) headers, so that WIN32 will be
16019         defined. With MS C, include <direct.h> for mkdir prototype.
16020
16021         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16022         some casts, needed by MS C.
16023
16024         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16025         implemented).
16026
16027         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16028         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16029         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16030
16031         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16032                 
16033         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16034         the event is not a hint, or its window is not the slider. Needed
16035         on Win32, at least.
16036
16037         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16038         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16039         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16040         a subdirectory of the Windows directory as gtk system
16041         configuration directory.
16042
16043         * gtk/gtkselection.c: No chunks on Win32.
16044
16045         * gtk/gtksocket.c: Not implemented on Win32.
16046
16047         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16048
16049         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16050
16051         * gtk/maketypes.awk: Declare variables with a macro that expands to
16052         necessary export/import magic in the case of Win32.
16053                 
16054         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16055
16056 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16057
16058         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16059         since those were meant only for gdki18n.h.  
16060         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16061         for widechar tests.
16062         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16063
16064 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16065
16066         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16067         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16068
16069         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16070         installed) to CFLAGS.
16071
16072         * gdk/Makefile.am: Add rules for gdkconfig.h.
16073
16074         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16075         APIs.
16076
16077         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16078         gdkx.h anyway when compiling for X11.
16079         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16080         general): Merge in Win32 version.
16081         
16082         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16083         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16084         expansion (if we don't have HAVE_PWD_H), allow for drive
16085         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16086         included code from Craig Setera's port to Win32 (the one that uses
16087         X11, and the cygwin dll), even if it probably will be abandoned.
16088
16089         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16090         the user entered one herself.  This way one can complete *.h and
16091         don't get matches on any .help files, for instance.
16092         
16093 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16094
16095         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16096         font hash table, if we have a GdkFontPrivate entry for this font
16097         already, simply increment its reference count, provided by Olaf Dietsche
16098         <olaf.dietsche+list.gtk@netcologne.de>.
16099
16100         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16101         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16102
16103 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16104
16105         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16106         the number of calls to gdk_draw_point() (and thus to X) by
16107         clipping the points by hand.
16108
16109         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16110         the clip parameter.
16111         (gtk_handle_box_paint): Only paint the handle if the expose area
16112         intersects it.
16113
16114 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16115
16116         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16117
16118 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16119
16120         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16121         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16122
16123 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16124
16125         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16126          textmode (O_TEXT) for OS/2 version.
16127
16128 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16129
16130         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16131         GtkSpinButton, "input" and "output", to make the output more flexible.
16132         The user has to provide a mapping between adjustment->value and the
16133         output string (and vice versa, if the spin button is editable). 
16134         See testgtk for examples.
16135
16136 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16137
16138         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16139         new one.
16140         
16141         * configure.in: set gtk+ version to 1.3.0.