]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
only draw the sort column as different if there are 3 or more visible
[~andy/gtk] / ChangeLog.pre-2-4
1 Tue Feb 24 14:43:07 2004  Jonathan Blandford  <jrb@gnome.org>
2
3         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): only draw the sort
4         column as different if there are 3 or more visible columns.
5
6 2004-02-24  Anders Carlsson  <andersca@gnome.org>
7
8         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_separator):
9         Fix compilation (#135278, Padraig O'Briain).
10         
11 2004-02-24  Anders Carlsson  <andersca@gnome.org>
12
13         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
14         Translate the desktop label.
15         
16         (shortcuts_get_index), (shortcuts_add_bookmarks),
17         (shortcuts_insert_separator), (create_shortcuts_model):
18         Don't show the bookmark separator if there are no bookmarks.
19         
20 Tue Feb 24 01:41:30 2004  Jonathan Blandford  <jrb@gnome.org>
21
22         * gtk/gtkfilechooserdefault.c (location_popup_handler): Make the
23         dialog look like the nautilus dialog.
24         (expander_activate_cb): get the order correct.
25
26 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
27
28         * gtk/gtkfilechooserdefault.c (list_selection_changed): Call
29         bookmarks_check_add_sensitivity().
30         (shortcut_exists): New helper function; moved the testing code
31         over from bookmarks_check_add_sensitivity().
32         (bookmarks_check_add_sensitivity): Check the contents of the
33         selection in the file/folder list.  Use shortcut_exists().
34         (shortcuts_add_bookmark_from_path): Don't insert the bookmark if
35         the path is already in the shortcuts list.
36         (add_bookmark_button_clicked_cb): Add the bookmarks from the list
37         selection or from the current folder, as appropriate.
38
39 Mon Feb 23 21:09:06 2004  Jonathan Blandford  <jrb@gnome.org>
40
41         * gtk/gtkfilechooserdefault.c (shortcuts_pane_create): Add
42         mnemonics.  Sorry translators.
43
44 Tue Feb 24 02:24:58 2004  Matthias Clasen  <maclas@gmx.de>
45
46         * NEWS: Additions. This should be complete for the main ChangeLog
47         now, still need to sift through gdk-pixbuf, docs, and translations.
48
49 Mon Feb 23 19:57:45 2004  Jonathan Blandford  <jrb@gnome.org>
50
51         * gtk/gtkcellrendererseptext.c (gtk_cell_renderer_sep_get_size):
52         Add a get_size implementation so that we are no longer the same
53         height as text.
54
55 2004-02-24  Anders Carlsson  <andersca@gnome.org>
56
57         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
58         (shortcuts_remove_rows), (shortcuts_append_bookmarks),
59         (create_shortcuts_model), (shortcuts_tree_create),
60         (gtk_file_chooser_default_remove_shortcut_folder):
61         Improve bookmark list rendering by controlling the visibility
62         of the pixbuf cell so that it will be invisible for the separator
63         row, also use a list store instead of a tree store for the model
64         so we won't get unnecessary space for an expander.
65         
66 Tue Feb 24 01:08:27 2004  Matthias Clasen  <maclas@gmx.de>
67
68         * gtk/gtkcombobox.c: Add a destroy implementation in order to
69         set priv->cell_view to NULL before finalize stumbles over the 
70         dangling pointer. This big array of pointers into the widget 
71         tree in GtkComboBoxPrivate is really fragile and should be
72         cleaned up.
73
74 Mon Feb 23 17:52:43 2004  Jonathan Blandford  <jrb@gnome.org>
75
76         * gtk/gtkfilechooserdefault.c (main_paned_create): use a size
77         group when allocating space for the buttons at the bottom just in
78         case.  Also, move the filter to below the file list.
79
80 Mon Feb 23 16:52:12 2004  Jonathan Blandford  <jrb@gnome.org>
81
82         * gtk/gtkfilechooserdefault.c
83         (gtk_file_chooser_default_class_init): Seth was confused by
84         keybindings.  They should be Alt, not Ctl.  Also, A-Home should go
85         home, not up.
86
87 Mon Feb 23 15:23:23 2004  Jonathan Blandford  <jrb@gnome.org>
88
89         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Display the root a bit
90         more cleanly.
91
92         * gtk/gtkpathbar.h (struct _GtkPathBarClass): fix the signal.
93
94 2004-02-23  Federico Mena Quintero  <federico@ximian.com>
95
96         Rework the user interface of the file chooser, as per 
97         Seth Nickell's design.
98
99         * gtk/gtkfilechooserdefault.c
100         (gtk_file_chooser_default_class_init): Add binding signals and bindings:
101                 "location-popup" - C-l
102                 "up-folder"      - C-Up
103                 "home-folder"    - C-Home
104         (up_folder_handler): New function; moved the code from up_button_clicked().
105         (up_button_clicked_cb): Call up_folder_handler().
106         (home_folder_handler): New function.
107         (location_popup_handler): New function.
108         (struct _GtkFileChooserDefault): Add an hpaned field.
109         (gtk_file_chooser_default_set_current_name): Check that we are in
110         Save mode.
111         (save_widgets_create): New function, create the widgets specific
112         to Save mode.
113         (main_paned_create): New function, create the hpaned's widgets here.
114         (gtk_file_chooser_default_constructor): Create the open and save
115         widgets, and show only one set.
116         (gtk_file_chooser_default_set_property): Show/hide the save widgets.
117         (gtk_file_chooser_default_get_paths): Only pay attention to the
118         entry in Save mode.
119         (update_chooser_entry): Update the entry only in Save mode.
120         (entry_activate): Removed.
121
122 Mon Feb 23 11:20:34 2004  Owen Taylor  <otaylor@redhat.com>
123
124         * configure.in: Remove the configure.in check for fontconfig 
125         entirely; it's not needed, since PangoXft implies that sufficiently
126         new fontconfig is present.
127
128 Mon Feb 23 02:26:53 2004  Jonathan Blandford  <jrb@gnome.org>
129
130         * gtk/gtkpathbar.c (gtk_path_bar_finalize):
131         for (i = 0; i < 10; i++)
132           g_print ("I will compile before committing.\n");
133
134 Mon Feb 23 02:08:42 2004  Jonathan Blandford  <jrb@gnome.org>
135
136         * gtk/gtkfilechooserdefault.c (file_pane_create): Use the
137         GtkPathBar by default now.
138
139         * gtk/gtkpathbar.c (gtk_path_bar_set_path): Correctly set the
140         current path from the path.
141         (gtk_path_bar_class_init): new signal
142         (button_clicked_cb): emit the signal when we're selected.
143         (gtk_path_bar_clear_buttons): Fix a crasher when we weren't
144         clearing thr first_scrolled_button.
145
146 Mon Feb 23 02:26:15 2004  Matthias Clasen  <maclas@gmx.de>
147
148         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): Fix the 
149         allocation for the toggle button so that it actually shows up 
150         in LTR list mode.
151
152         * gtk/gtkcombobox.c (gtk_combo_box_set_column_span_column): 
153         * gtk/gtkcombobox.c (gtk_combo_box_set_row_span_column): 
154         * gtk/gtkcombobox.c (gtk_combo_box_set_wrap_width): Add
155         notification, and avoid excessive relayouting. 
156
157 Mon Feb 23 00:38:21 2004  Matthias Clasen  <maclas@gmx.de>
158
159         Fix bug 134982, reported by Morten Welinder:
160         
161         * gtk/gtkpathbar.c (gtk_path_bar_destroy): 
162         * gtk/gtktooltips.c (gtk_tooltips_destroy): 
163         * gtk/gtkinvisible.c (gtk_invisible_destroy): Chain up to the 
164         parent's ::destroy handler.
165         
166         * gdk/gdkdisplay.c (gdk_display_dispose): Chain up to the 
167         parent's ::dispose handler.
168
169 Sat Feb 21 19:09:55 2004  Manish Singh  <yosh@gimp.org>
170
171         * gtk/gtksettings.c (gtk_default_substitute): Guard the FC_HINT_STYLE
172         stuff with an #ifdef, so we still build with most fontconfig versions.
173
174 Sun Feb 22 03:03:29 2004  Matthias Clasen  <maclas@gmx.de>
175
176         * gtk/gtkaction.c: (gtk_action_finalize):
177         * gtk/gtkclipboard.c: (gtk_clipboard_finalize):
178         * gtk/gtkentrycompletion.c: (gtk_entry_completion_class_init),
179         (gtk_entry_completion_finalize):
180         * gtk/gtkfilechooserwidget.c: (gtk_file_chooser_widget_finalize):
181         * gtk/gtkfilesystemmodel.c: (gtk_file_system_model_class_init),
182         (gtk_file_system_model_finalize):
183         * gtk/gtkicontheme.c: (gtk_icon_theme_class_init),
184         (gtk_icon_theme_finalize):
185         * gtk/gtktextchild.c: (gtk_text_child_anchor_finalize):
186         * gtk/gtkuimanager.c: (gtk_ui_manager_class_init),
187         (gtk_ui_manager_finalize):
188         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_finalize):
189         Add chains to the parent's ::finalize() handler  (#134901, Morten Welinder,
190         patch by Jan Arne Petersen)
191
192 Sun Feb 22 02:10:34 2004  Matthias Clasen  <maclas@gmx.de>
193
194         * gtk/gtkentrycompletion.c (gtk_entry_completion_default_completion_func): 
195         Don't crash if item is NULL.  (#131542, Dan Damian)
196
197 Sun Feb 22 02:04:03 2004  Matthias Clasen  <maclas@gmx.de>
198
199         * configure.in: Add a check for a new enough fontconfig, since
200         we picked up a direct dependency on it with the Xft settings.
201
202 Sun Feb 22 00:23:40 2004  Matthias Clasen  <maclas@gmx.de>
203
204         Bug 112647 (Bill Haneman, patch by Narayana Pattipati):
205         
206         * gtk/gtkcheckmenuitem.c: Introduce a new style property 
207         indicator_size and use it instead of the hardcoded value.
208         
209         * gtk/gtkmenu.c (gtk_menu_size_request): Make sure each menu 
210         item gets enough vertical space for the label and the indicator.
211
212 Sat Feb 21 20:20:11 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
213
214         * gtk/gtksettings.c (gtk_settings_class_init): Use P_ instead of
215         _ for the new Xft settings.
216
217 Sat Feb 21 20:09:53 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
218
219         Bug 130790 (Federico Mena Quintero, Owen Taylor)
220         
221         * gdk/x11/gdkevents-x11.c: Add Xft XSETTINGS
222
223         * gtk/gtksettings.c: Add new GtkSettings corresponding to the Xft
224         XSETTINGS
225         
226 Sat Feb 21 19:18:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
227
228         Bug 132502
229         
230         * gtk/gtkmenu.c (gtk_menu_motion_notify): Make sure we pop down
231         if we enter a non-selectable menu item.
232
233         * gtk/gtkmenu.c (gtk_menu_leave_notify): Don't pop a submenu
234         when the user has left the item.
235
236 Sat Feb 21 17:57:35 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
237
238         * gtk/docs: Commit auto-generated changes
239
240 Fri Feb 20 18:20:22 2004  Jonathan Blandford  <jrb@gnome.org>
241
242         * gtk/gtkfilechooserdefault.c: conditional compile for GtkPathBar
243
244         * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Clean up
245         allocation code.  Works fully in RTL languages, I think.
246         (gtk_path_bar_scroll_up): Scroll up.
247         (gtk_path_bar_scroll_down): Scroll down.
248
249 2004-02-20  Christian Rose  <menthos@menthos.com>
250
251         * configure.in: Added "en_CA" to ALL_LINGUAS.
252
253 2004-02-20  Michael Meeks  <michael@ximian.com>
254
255         * gtk/gtktoolitem.c (gtk_tool_item_property_notify): impl.
256         (gtk_tool_item_class_init): hook it up.
257         (gtk_tool_item_set_proxy_menu_item): synchronize sensitivity.
258
259         * gtk/gtktoolbutton.c (gtk_tool_button_property_notify):
260         chain to parent, fix strcmp bug.
261
262         * tests/testtoolbar.c (main): re-arrange widgets to allow
263         more overflowing toolbar goodness.
264
265 2004-02-20  Alexander Larsson  <alexl@redhat.com>
266
267         * gtk/gtkfilechooserdefault.c: (shortcuts_append_desktop):
268         Desktop directory is not translated.
269         (set_tree_model):
270         There might not be volumes for all paths.
271         * gtk/gtkfilechooserwidget.c:
272         (gtk_file_chooser_widget_constructor):
273         Use gtk_file_chooser_set_current_folder to set cwd.
274
275 Thu Feb 19 19:58:53 2004  Jonathan Blandford  <jrb@gnome.org>
276
277         * gtk/gtkpathbar.[ch]: New widget to handle the path in the
278         fileselector implementation.  Not hooked up to anything yet.
279
280         * gtk/Makefile.am: support the path bar.
281
282 Fri Feb 20 00:21:38 2004  Matthias Clasen  <maclas@gmx.de>
283
284         * gtk/gtkstyle.c (gtk_default_draw_handle): 
285         (gtk_default_draw_box): Make the paned handles gray when the the 
286         widget is_focus() but not HAS_FOCUS().  (#122751, Soeren Sandmann)
287
288 Thu Feb 19 23:41:06 2004  Matthias Clasen  <maclas@gmx.de>
289
290         Fixes for #82099:
291         
292         * gdk/x11/gdkevents-x11.c: Introduce new XSettings "Gtk/ButtonImages"
293         and "Gtk/MenuImages" and map them to "gtk-button-images" and 
294         "gtk-menu-images".
295
296         * gtk/gtkimagemenuitem.c: Add a boolean setting "gtk-menu-images" and 
297         use it to set the visibility of the embedded image.
298
299         * gtk/gtkbutton.c: Add a boolean setting "gtk-button-images" and use
300         it to set the visibility of an embedded image.
301
302 Thu Feb 19 21:26:10 2004  Matthias Clasen  <maclas@gmx.de>
303
304         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
305         Give each radio action its own value.  (#134889, Paolo Borelli)
306
307 2004-02-19  Federico Mena Quintero  <federico@ximian.com>
308
309         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_finalize):
310         Chain to the parent's ::finalize() handler.  Fixes #134885; caught
311         by Jan Arne Petersen.
312
313 2004-02-19  Mark McLoughlin  <mark@skynet.ie>
314
315         Make the entire expander widget width prelight as suggested
316         by Seth in bug #134263.
317
318         * gtk/gtkexpander.c:
319         (gtk_expander_paint_prelight): impl.
320         (gtk_expander_paint): use it.
321         (gtk_expander_redraw_expander): don't only redraw the
322         arrow when prelit.
323
324 2004-02-19  Alexander Larsson  <alexl@redhat.com>
325
326         * gtk/gtkfilechooser.c: (gtk_file_chooser_class_init):
327         * gtk/gtkfilechooserutils.c:
328         * gtk/gtkfilechooserutils.h:
329         * gtk/gtkfilechooserwidget.c:
330         Remove old file-system property.
331         Add new file-system-backend string property
332         
333         * gtk/gtkfilechooserdefault.[ch]:
334         Handle the file-system-backend property
335         
336         * gtk/gtkfilechooserdialog.[ch]:
337         (gtk_file_chooser_dialog_new_with_backend):
338         Remove old file-system property.
339         Add new file-system-backend string property
340         Add new function gtk_file_chooser_dialog_new_with_backend
341         
342         * gtk/gtkfilesystem.c: 
343         * gtk/gtkfilesystem.h:
344         Add filesystem module support.  
345
346 2004-02-18  Federico Mena Quintero  <federico@ximian.com>
347
348         * gtk/gtkfilechooserdefault.c (shortcuts_tree_create): Renamed
349         from create_shortcuts_tree().
350         (shortcuts_pane_create): New function.
351         (button_new): Renamed from toolbar_button_new().
352         (shortcuts_pane_create): New function, create the whole shortcuts
353         pane here.
354         (current_folder_create): Renamed from toolbar_create().  Don't
355         create the bookmarks buttons here.
356         (file_pane_create): New function.
357         (gtk_file_chooser_default_constructor): Use the new helper
358         functions, and don't use an extra vbox as GtkFileChooserDefault is
359         already a vbox.
360
361 Thu Feb 19 01:39:30 2004  Matthias Clasen  <maclas@gmx.de>
362
363         * gtk/gtkuimanager.h: 
364         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Add
365         default handlers for all signals; for consistency and for the
366         benefit of language bindings which still rely on header parsing
367         to find the signals.  (#134269, Jeroen Zwartepoorte)
368         
369 Thu Feb 19 00:45:02 2004  Matthias Clasen  <maclas@gmx.de>
370
371         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows): 
372         Improve the efficiency here by prepending on the list and reverting
373         it after the loop.  (#134435, Christian Biere)
374
375 Thu Feb 19 00:32:21 2004  Matthias Clasen  <maclas@gmx.de>
376
377         * gtk/gtkplug.c (_gtk_plug_remove_from_socket): Avoid errors when
378         removing the plug from the socket.  (#128546, Christopher Blizzard)
379
380 Thu Feb 19 00:09:35 2004  Matthias Clasen  <maclas@gmx.de>
381
382         * gtk/gtkradiomenuitem.h:
383         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_from_widget): 
384         (gtk_radio_menu_item_new_with_label_from_widget): 
385         (gtk_radio_menu_item_new_with_mnemonic_from_widget): New
386         convenience functions analogous to similar API on GtkRadioButton.
387         (#51700, Vitaly Tishkov, patch by Soeren Sandmann)
388
389 Wed Feb 18 17:53:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
390
391         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Use a scratch GC in the
392         case where the background is a solid color.
393         (gdk_window_clear_backing_rect): Reset the clip region after use.
394
395         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Go
396         back to using a scratch GC. Pointed out by Owen Taylor
397         
398         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Only use a
399         scratch GC if the passed-in one is NULL
400
401 Wed Feb 18 14:27:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
402
403         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): Reset clip
404         region back to NULL on cached GC (rest of #134728)
405
406 Wed Feb 18 13:28:57 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
407
408         Fix bug reported by Nam SungHyun (#134728)
409         
410         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha):
411         Don't use a cached GC here since the function needs to modify the
412         foreground color.
413
414         * gdk/gdkwindow.c (gdk_window_end_paint): Reset clip region back
415         to NULL on the cached GC.
416
417 2004-02-17  Federico Mena Quintero  <federico@ximian.com>
418
419         * gtk/gtkfilechooserdialog.c
420         (gtk_file_chooser_dialog_style_set): Use HIG-compliant spacings.
421         This sucks a lot.
422
423 Wed Feb 18 02:03:47 2004  Matthias Clasen  <maclas@gmx.de>
424
425         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Document some
426         peculiarities of the ::delete_range signal.  (#132135, Grant Gayed)
427
428 Wed Feb 18 01:44:59 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
429
430         GC caching, bug #125645 (based on patch by Brian Cameron)
431         
432         * gdk/gdkscreen.h (struct _GdkScreen): Add GC cache
433         * gdk/gdkscreen.c (gdk_screen_dispose): New function. Unref the
434         cached GC's here.
435         * gdk/gdkdraw.c (_gdk_drawable_get_scratch_gc): New function to
436         get a scratch gc.
437         * gdk/gdkinternals.h: Declare the function here
438
439         * gdk/gdkdraw.c (gdk_drawable_real_draw_pixbuf): Use
440         _gdk_drawable_get_scratch_gc() instead of creating a new GC.
441         * gdk/x11/gdkgeometry-x11.c (gdk_window_copy_area_scroll): same
442         * gdk/x11/gdkdrawable-x11.c (draw_with_images): same
443         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): same
444         * gdk/gdkwindow.c (gdk_window_end_paint): same
445         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): same
446         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_threshold_alpha): same
447         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_pixmap_and_mask_for_colormap): same
448
449 Tue Feb 17 23:28:33 2004  Matthias Clasen  <maclas@gmx.de>
450
451         * gtk/gtkmenu.c (gtk_menu_init): ...and don't forget to initalize
452         priv->columns to 1.
453
454 Tue Feb 17 23:11:21 2004  Matthias Clasen  <maclas@gmx.de>
455
456         * gtk/gtkmenu.c (gtk_menu_do_remove): Make sure that we keep
457         priv->columns >= 1 even for empty menus, since we divide by it
458         somewhere else.  (#133428, Vincent Noel)
459
460 Tue Feb 17 23:02:58 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
461
462         Fix for #119722, reported by Olexiy Avramchenko, patch by Owen
463         Taylor.
464
465         * gdk/x11/gdkprivate-x11.h (struct _GdkGCX11): Add a depth field
466
467         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Keep track of the GC's
468         depth.
469
470         * gdk/x11/gdkgc-x11.c (_gdk_gc_x11_get_fg_xft_color): First query
471         the colormap, if no colormap, special case depth 1, 
472
473         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_get_fg_picture): Use
474         _gdk_gc_x11_get_fg_xft_color() to get the foreground color.
475
476         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_xft_draw):
477         Special-case bitmaps without a colormap.
478
479         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_pixbuf): Use inherited
480         draw_pixbuf() implementation in the bitmap case.
481
482 2004-02-17  Mark McLoughlin  <mark@skynet.ie>
483
484         * modules/input/Makefile.am: only reference input method
485         modules we've actually built. Fixes re-build failure with
486         stale hangul module lying aroung. Bug #134518.
487
488 Mon Feb 16 19:13:21 2004  Owen Taylor  <otaylor@redhat.com>
489
490         * gdk/gdkdraw.c: Revert last commit, please don't commit patches
491         without approval, this isn't the right way to do it.
492
493 2004-02-16  DindinX  <david@dindinx.org>
494
495         * gdk/gdkdraw.c (gdk_draw_segments): don't try to draw more than 32767
496         segments at a time, since XDrawSegments cannot handle more than this.
497
498         fixes bug #122026.
499         
500 Mon Feb 16 18:26:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
501
502         * gtk/gtktoolbar.c (gtk_toolbar_set_child_property): Call
503         gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous()
504         in the CHILD_PROP_EXPAND branch. (#134543, Damon Chaplin)
505
506 Mon Feb 16 00:04:46 2004  Matthias Clasen  <maclas@gmx.de>
507
508         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_*): 
509         Split declaration and assignment of combo_box.
510         
511         * gtk/gtkcombobox.c (gtk_combo_box_list_setup): Remove a 
512         pointless cast
513
514 Sun Feb 15 22:08:53 2004  Matthias Clasen  <maclas@gmx.de>
515
516         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Add 
517         deprecation note pointing people to GtkComboBox.
518
519 Sun Feb 15 02:49:45 2004  Matthias Clasen  <maclas@gmx.de>
520
521         * gtk/gtktreednd.c: 
522         * gtk/gtktreeview.c: Document the tree DND API.
523
524         * gtk/gtktreeview.c (gtk_tree_view_unset_rows_drag_source): 
525         Call gtk_drag_source_unset().  
526         
527 Sun Feb 15 00:49:59 2004  Matthias Clasen  <maclas@gmx.de>
528
529         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): 
530         Make stock_size an uint property, to allow custom icon 
531         sizes. Also clarify the blurb.  (#130047, Erik Grinaker)
532
533 Sat Feb 14 11:05:26 2004  Manish Singh  <yosh@gimp.org>
534
535         * configure.in: Remove unnecessary STRIP_* definitions, and GNU
536         make check.
537
538 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
539
540         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_add_bookmark):
541         Duh, duh, duh!  Don't bail out if the bookmarks file doesn't exist
542         the very first time you try to save one.
543
544 2004-02-13  Federico Mena Quintero  <federico@ximian.com>
545
546         Fix #129020.
547
548         * gtk/gtkfilechooserdialog.c
549         (set_default_size): New function, sets a reasonable default size
550         for the window.
551         (gtk_file_chooser_dialog_realize): New function, call
552         set_default_size().
553         (gtk_file_chooser_dialog_style_set): Likewise.
554         (gtk_file_chooser_dialog_screen_changed): Likewise.
555
556         * tests/testfilechooser.c (main): Don't set a default size for the
557         dialog.
558
559 Sat Feb 14 00:05:18 2004  Matthias Clasen  <maclas@gmx.de>
560
561         * gtk/gtktreemodelfilter.c (bsearch_elt_with_offset): 
562         Use do instead of while.  (#134031, Morten Welinder);
563
564 Sat Feb 14 00:00:52 2004  Matthias Clasen  <maclas@gmx.de>
565
566         * configure.in: Suppress xsltproc and xmlcatalog checks
567         if enable_man=no.  (#134162, Julio M. Merino Vidal)
568
569 Fri Feb 13 23:54:48 2004  Matthias Clasen  <maclas@gmx.de>
570
571         * configure.in: Remove checks for sgml2html. It was once
572         used for building the linuxdoc version of the tutorial.
573         Nowadays, we use db2html.  (#134164, Julio M. Merino Vidal)
574
575 Fri Feb 13 08:17:43 2004  Owen Taylor  <otaylor@redhat.com>
576
577         Fix various compilation problems (#134312, David
578         Hawthorne)
579
580         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Use 
581         g_return_if_fail(), not g_return_val_if_fail().
582
583         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): 
584         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Use 
585         g_return_if_reached(), not g_return_val_if_reached().
586         
587         * gtk/gtkvscale.c (gtk_vscale_expose): Fix the types
588         of some parameters.
589
590         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets): Remove
591         extra 'scale' parameter.
592
593 Thu Feb 12 21:58:20 2004  Owen Taylor  <otaylor@redhat.com>
594
595         Various reentrancy fixes for widgets being destroyed
596         out of focus-out-event. (#128821, Grant Gayed)
597
598         * gtk/gtkwindow.c (_gtk_window_unset_focus_and_default): 
599         Ref window and widget over callbacks.
600
601         * gtk/gtkwidget.c (gtk_widget_hide)
602           gtk/gtkwidget.c (gtk_widget_set_child_visible):
603         Ref the widget before calling _gtk_window_unset_focus_and_default(),
604         since that can call user callbacks.
605
606         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
607         Do nothing if the widget isn't realized.
608
609 Fri Feb 13 01:31:44 2004  Matthias Clasen  <maclas@gmx.de>
610
611         * gtk/gtkbutton.c (_gtk_button_paint): Don't draw bevels around
612         active, RELIEF_NONE buttons that aren't depressed. This improves
613         the appearance of buttons in notebook tabs.  (#109213, reported
614         by Benjamin Otte, patch by Rodney Dawes)
615
616 Fri Feb 13 01:06:08 2004  Matthias Clasen  <maclas@gmx.de>
617
618         * demos/gtk-demo/main.c (read_line): Protect getc_unlocked() by 
619         HAVE_FLOCKFILE in all cases.  (#134205, Julio M. Merino Vidal)
620
621 Fri Feb 13 00:54:59 2004  Matthias Clasen  <maclas@gmx.de>
622
623         Fix for #104811, Padraig O'Briain:
624
625         * gtk/gtkscale.h:
626         * gtk/gtkscale.c (_gtk_scale_clear_layout): 
627         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): 
628         * gtk/gtkscale.c (gtk_scale_get_layout): New functions to determine the
629         text and its position from a GtkScale, to make it more accessible. 
630         * gtk/gtkhscale.c (gtk_hscale_get_layout_offsets):
631         * gtk/gtkvscale.c (gtk_vscale_get_layout_offsets): Implementations of the 
632         new GtkScale vfunc.
633
634 Thu Feb 12 17:59:52 2004  Owen Taylor  <otaylor@redhat.com>
635
636         * gtk/gtkicontheme.c (gtk_icon_theme_get_search_path): 
637         Remove an extraneous + 1 (#134015, Torsten Schoenfeld)
638
639 Thu Feb 12 23:55:08 2004  Matthias Clasen  <maclas@gmx.de>
640
641         * gtk/gtktooltips.h:
642         * gtk/gtktooltips.c (gtk_tooltips_get_info_from_tip_window): New 
643         function to improve the accessibility of tooltips.  (#114851, 
644         Padraig O'Briain)
645
646 Thu Feb 12 23:16:04 2004  Matthias Clasen  <maclas@gmx.de>
647
648         * gtk/gtkcombobox.c (gtk_combo_box_popup): 
649         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Make these public and
650         add docs.  (#132847)
651
652 Thu Feb 12 11:05:16 2004  Manish Singh  <yosh@gimp.org>
653
654         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Assign xtype using
655         gdk_x11_atom_to_xatom_for_display () when type != GDK_NONE.
656
657         * gtk/gtkselection.c (_gtk_selection_request): Use GDK_NONE in
658         gdk_property_get call instead of 0.
659
660         * docs/reference/gdk/tmpl/properties.sgml: Document the above
661         as GDK_NONE instead of simply 0.
662
663 Thu Feb 12 15:46:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
664
665         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Fix up item_area
666         correctly in RTL mode. (#133984, patch from Semion Chichelnitsky).
667
668 Thu Feb 12 02:22:02 2004  Matthias Clasen  <maclas@gmx.de>
669
670         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_modify_func): 
671         Correct the docs.
672
673 Thu Feb 12 01:17:01 2004  Matthias Clasen  <maclas@gmx.de>
674
675         * gtk/gtktreeview.c (gtk_tree_view_enable_model_drag_source): Call
676         gtk_drag_source_set(), so that things like gtk_drag_set_icon_*() work
677         for automatic DND.  (#133485, Tommi Komulainen)
678
679 Thu Feb 12 00:37:00 2004  Matthias Clasen  <maclas@gmx.de>
680
681         * gdk/x11/gdkproperty-x11.c (gdk_property_change): Fix misleading
682         debug output.
683
684 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
685
686         * gtk/gtkmessagedialog.c (gtk_message_dialog_map): New ::map()
687         handler.  If no widget has the focus, try to give it to the
688         default widget.  If there is no default widget, give it to the
689         first button.  Fixes the cause for which #59707 was reopened.
690
691 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
692
693         Fixes #134051.
694
695         * gtk/gtkicontheme.c (struct _GtkIconInfo): Remove the ref_count field.
696         (icon_info_new): Don't initialize the ref_count field.
697
698 2004-02-11  Federico Mena Quintero  <federico@ximian.com>
699
700         * gtk/gtkicontheme.c (gtk_icon_theme_prepend_search_path): Shift
701         the array correctly.  Fixes #134055, patch by Tosten Schoenfeld
702         <kaffeetisch@gmx.de>.
703
704 Wed Feb 11 02:23:39 2004  Matthias Clasen  <maclas@gmx.de>
705
706         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child): Handle
707         focus [hv]adjustment correctly when the focus is located deeper
708         down in the hierarchy.  (#133489)
709
710 Wed Feb 11 02:06:38 2004  Matthias Clasen  <maclas@gmx.de>
711
712         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Remove 
713         arbitrary low upper limits on the xpad, ypad, width and height
714         properties.  (#129696, John Ellis)
715
716 Wed Feb 11 01:24:20 2004  Matthias Clasen  <maclas@gmx.de>
717
718         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
719         Ugh. Don't try to free ints, even if they're stored in pointers.
720         (#133997, Morten Welinder)
721
722 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
723
724         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
725         Free the filters.  Fixes #133547, patch by Morten Welinder
726         <mortenw@gnome.org>.
727
728 Tue Feb 10 12:02:14 2004  Owen Taylor  <otaylor@redhat.com>
729
730         * gdk/x11/xsettings-client.c (read_settings): Avoid
731         triggering an X error when the client->manager_window
732         is None...makes logs look cleaner.
733
734         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Handle
735         GDK_NONE to mean AnyPropertyType as documented. (Reported 
736         by Yu Shao)
737
738         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window,
739         gdk_x11_screen_get_window_manager_name): Fix error trap
740         we've been leaking since 2002... (#129538)
741
742 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
743
744         Fixes the entry-related part of #133852.
745
746         * gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't change
747         the file part of the entry if the selected item is a folder.
748
749 2004-02-10  Federico Mena Quintero  <federico@ximian.com>
750
751         Fixes #133995, patch by Morten Welinder <mortenw@gnome.org>.
752
753         * tests/prop-editor.c (create_prop_editor): Free the title.
754         (object_changed): Free the children list.
755
756 Tue Feb 10 01:58:55 2004  Matthias Clasen  <maclas@gmx.de>
757
758         * gtk/gtkcontainer.c (gtk_container_set_focus_hadjustment): 
759         * gtk/gtkcontainer.c (gtk_container_set_focus_vadjustment): Document 
760         these functions.
761
762 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
763
764         * gtk/gtkfilechooserdefault.c (set_list_model): Request
765         GTK_FILE_INFO_ALL from the file system model, so that arbitrary
766         filtering will work.  Perhaps we should have a way of aggregating
767         info types to the model as filters get installed.
768
769 Mon Feb  9 22:22:19 2004  Matthias Clasen  <maclas@gmx.de>
770
771         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
772         Ugh. Don't try to free ints, even if they're stored in pointers.
773
774 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
775
776         Fix #132256.
777
778         * gtk/gtkfilechooserdefault.c
779         (gtk_file_chooser_default_get_paths): Read the contents of the
780         filename entry in both OPEN and SAVE mode.  In multiple-selection
781         mode, add this to the selection from the file/folder list.
782         (struct get_paths_closure): Add a path_from_entry field.
783         (get_paths_foreach): Only add the iterated path if it is not the
784         same as the path from the entry.
785
786 2004-02-09  Federico Mena Quintero  <federico@ximian.com>
787
788         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): If
789         the folder is already open, add the requested info types to it.
790
791 Sun Feb  8 01:28:02 2004  Manish Singh  <yosh@gimp.org>
792
793         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Add appropriate
794         type casts for the gtk_window_set_screen() call.
795
796 Sun Feb  8 01:44:06 2004  Matthias Clasen  <maclas@gmx.de>
797
798         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Make popups 
799         come up on the same screen as the combo box.  (#133544, 
800         Morten Welinder)
801
802 Fri Feb  6 23:40:24 2004  Jonathan Blandford  <jrb@gnome.org>
803
804         * gtk/gtkfilechooserdefault.c (create_file_list): clean up the
805         packing of the file selector.
806
807 Sat Feb  7 01:21:09 2004  Matthias Clasen  <maclas@gmx.de>
808
809         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Don't use function 
810         calls in array initializers, as some compilers seem to hate this.
811         (#133216, Jonas Jonsson)
812
813 Sat Feb  7 00:06:44 2004  Matthias Clasen  <maclas@gmx.de>
814
815         * gtk/gtkaccelmap.[hc]: Add change notification for GtkAccelMap,
816         by on-demand instantiating a singleton object with a "changed" 
817         signal. 
818
819         * gtk/gtkmarshalers.list (VOID:STRING,UINT,FLAGS): Add marshaller
820         for GtkAccelMap::changed.
821
822 Fri Feb  6 23:08:29 2004  Matthias Clasen  <maclas@gmx.de>
823
824         * gtk/gtktextbtree.c (_gtk_text_btree_check): 
825         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_clear_attributes): 
826         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_clear_attributes): 
827         Actually free the lists. Pointed out by Morten Welinder.
828         
829 Fri Feb  6 22:38:54 2004  Matthias Clasen  <maclas@gmx.de>
830
831         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Handle character 
832         positions in UTF-8 strings correctly.  (#133315, Theppitak 
833         Karoonboonyanan)
834
835 2004-02-06  Morten Welinder  <terra@gnome.org>
836
837         * gtk/gtktoolbar.c (show_menu): Cleanup using
838         gtk_menu_attach_to_widget.  Also fixes leak, see #133411.
839
840 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
841
842         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Free the
843         list.  Fixes #133546.
844
845 2004-02-06  Federico Mena Quintero  <federico@ximian.com>
846
847         Fix #132327.
848
849         * gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add a
850         folder_hash field to keep a list of live folder objects.
851         (gtk_file_system_unix_init): Create the folder_hash.
852         (gtk_file_system_unix_finalize): Destroy the folder_hash.
853         (gtk_file_system_unix_get_folder): Ref and return an existing
854         folder if we have it around, otherwise return a new folder object.
855         (struct _GtkFileFolderUnix): Add a field for the parent file system.
856         (gtk_file_folder_unix_finalize): Remove the folder from the file
857         system's hash table.
858         (gtk_file_system_unix_create_folder):  Emit "files-added" on the
859         newly-created folder's parent.  Fixes #132327.
860
861 Fri Feb  6 00:51:57 2004  Matthias Clasen  <maclas@gmx.de>
862
863         * gtk/gtkstock.c (builtin_items): Change the labels of the 
864         ZOOM_100 and ZOOM_FIT stock items to "_Normal Size" and
865         "Best _Fit", to be HIG compliant.  (#124080, Mariano 
866         Suárez-Alvarez)
867
868 Fri Feb  6 00:45:16 2004  Matthias Clasen  <maclas@gmx.de>
869
870         * gtk/gtkcombobox.c (gtk_combo_box_finalize): Add a finalize 
871         function to plug a few memory leaks.  (#133544, Morten Welinder)
872
873 Fri Feb  6 00:15:38 2004  Matthias Clasen  <maclas@gmx.de>
874
875         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_mnemonic_activate): 
876         Support mnemonic_activate here as well.
877         
878         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Focus
879         the button, not the tree_view.
880
881 Thu Feb  5 23:48:19 2004  Matthias Clasen  <maclas@gmx.de>
882
883         * gtk/gtkcombobox.c (gtk_combo_box_mnemonic_activate): Add this
884         function, to make mnemonic_activate work for combo boxes.
885         (#133443, Paolo Borelli)
886
887 Thu Feb  5 22:05:52 2004  Matthias Clasen  <maclas@gmx.de>
888
889         * gtk/gtkfilesystemunix.c (bookmark_list_read): Initialize result
890         to FALSE.  (#133539, Morten Welinder)
891
892 Thu Feb  5 21:36:43 2004  Matthias Clasen  <maclas@gmx.de>
893
894         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): Fix the logic
895         of the depth one check.  (#133488, Christian Persch)
896
897 Thu Feb  5 01:50:19 2004  Matthias Clasen  <maclas@gmx.de>
898
899         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_paint): Fix
900         the drawing of tearoff menu items which don't come first in their
901         menu.  (#33311)
902
903 Thu Feb  5 00:59:08 2004  Matthias Clasen  <maclas@gmx.de>
904
905         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Use 
906         g_completion_complete_utf8(). (#133313, Theppitak Karoonboonyanan)
907
908 2004-02-04  Federico Mena Quintero  <federico@ximian.com>
909
910         Fix #59707.
911
912         * gtk/gtklabel.c (gtk_label_focus): Removed, so we don't ignore
913         the focus chain.
914         (gtk_label_button_press): Fix prototype.
915         (gtk_label_button_release): Likewise.
916         (gtk_label_motion): Likewise.
917
918         * tests/testgtk.c (create_message_dialog): For the dialog with
919         only GTK_BUTTONS_CLOSE, make GTK_RESPONSE_CLOSE the default.
920
921 2004-02-04  Morten Welinder  <terra@gnome.org>
922
923         * gtk/gtktoolbar.c (show_menu): Show on the right screen.  (Fixes
924         bug 133411, apart from the leak.)
925
926 Tue Feb  3 13:39:27 2004  Manish Singh  <yosh@gimp.org>
927
928         * gtk/gtkadjustment.c (gtk_adjustment_new): pass value in last
929         in g_object_new, since it depends on lower and upper being set.
930
931 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
932
933         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): Make the
934         window not resizable.  Fixes #114032.
935
936 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
937
938         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add
939         documentation for the use_separator style property.
940
941 2004-02-03  Federico Mena Quintero  <federico@ximian.com>
942
943         Fix #68938.
944
945         * gtk/gtkdialog.c (GtkDialogPrivate): New private structure for
946         GtkDialog; right now it only contains an ignore_separator field.
947         (gtk_dialog_class_init): Register the private structure.
948         (gtk_dialog_init): Initialize the priv->ignore_separator field.
949         (_gtk_dialog_set_ignore_separator): New private function.
950         (gtk_dialog_set_has_separator): Ignore the setting if appropriate.
951
952         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): Add a
953         use_separator style property.
954         (gtk_message_dialog_style_set): Change the dialog's separator
955         based on the style property.
956         (gtk_message_dialog_init): Set the dialog box to ignore the
957         separator setting.
958
959 Tue Feb  3 02:35:09 2004  Matthias Clasen  <maclas@gmx.de>
960
961         * gtk/Makefile.am: Build filesystemwin32.c if OS_WIN32 and
962         also dist gtkfilesystemwin32.[hc].
963
964 Tue Feb  3 02:04:44 2004  Matthias Clasen  <maclas@gmx.de>
965
966         * gtk/gtklabel.c (gtk_label_ensure_layout): Right-justify labels
967         in rtl mode.  (#129071, chinen@jp.ibm.com)
968
969 Tue Feb  3 02:01:25 2004  Matthias Clasen  <maclas@gmx.de>
970
971         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Exchange the
972         meaning GTK_MENU_DIR_PARENT/CHILD and GTK_MENU_DIR_PREV/NEXT in rtl
973         mode.  (#107528)
974
975 Tue Feb  3 01:38:06 2004  Matthias Clasen  <maclas@gmx.de>
976
977         Clip narrow columns in rtl-oriented tree views (#128089,  
978         chinen@jp.ibm.com):
979         
980         * gtk/gtkstyle.c (gtk_default_draw_option): 
981         * gtk/gtkstyle.c (gtk_default_draw_check): Clip to the 
982         given area.
983
984         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action): 
985         Use the right clip area when calling gtk_cell_renderer_render().
986         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_draw_focus): 
987         Use the right clip area when calling gtk_paint_focus().
988         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render): 
989         Use the right clip area when calling gtk_paint_toggle() or
990         gtk_paint_check().
991         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
992         Clip to the expose_area when drawing the background rectangle.
993         
994 Tue Feb  3 00:14:36 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
995
996         * gdk/x11/gdkgeometry-x11.c (queue_item_free, gdk_window_queue):
997         Use a weak reference instead of ref()/unref(). (#60857, reported
998         by Joshua N Pritikin)
999
1000         * gdk/gdkimage.c (scratch_image_info_for_depth): Formatting fix.
1001
1002 Tue Feb  3 00:15:17 2004  Matthias Clasen  <maclas@gmx.de>
1003
1004         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add 
1005         init_hadjust_value and prev_width.
1006         * gtk/gtktreeview.c (gtk_tree_view_init): Initialize 
1007         them here.
1008         * gtk/gtktreeview.c (gtk_tree_view_update_size): ...and here.
1009         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): Use them
1010         here to properly handle the initial position of rtl-oriented
1011         tree views.  (#127581, chinen@jp.ibm.com)
1012
1013 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
1014
1015         Fix #130846, reported by R. McFarland <rwmcfa1@neces.com>.
1016
1017         * gtk/gtktreeview.c (gtk_tree_view_button_press): Return TRUE when
1018         we handle an event in the colums, and FALSE at the end if the
1019         event is not handled at all.
1020
1021 Mon Feb  2 23:41:48 2004  Matthias Clasen  <maclas@gmx.de>
1022
1023         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
1024         Don't access the level after removing the node, since that may
1025         kill the level.  (#132615, Crispin Flowerday)
1026
1027 2004-02-02  Tor Lillqvist  <tml@iki.fi>
1028
1029         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): Set the cursor
1030         in all cases. If no grab cursor specified, use the grabbing
1031         window's cursor. If the grabbing window has no cursor, use the
1032         default arrow cursor. (#118025)
1033
1034 Mon Feb  2 22:05:36 2004  Matthias Clasen  <maclas@gmx.de>
1035
1036         * gtk/gtkseparatormenuitem.c (gtk_separator_menu_item_init): The
1037         latest in menu separation technology.
1038
1039 Mon Feb  2 19:04:17 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1040
1041         * gdk/x11/gdkwindow-x11.c: Assume gravity works. (Anything else
1042         we have to take our chances with).
1043         
1044         (Bug 97510)
1045
1046 Mon Feb  2 18:45:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1047
1048         Fix bug 110224.
1049
1050         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
1051         Remove unused variable 'result'
1052
1053         * gdk/x11/xsettings-client.[ch]: Add new set_grab/ungrab_func() functions.
1054
1055         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_init_screen): Use them
1056         here.
1057
1058 Mon Feb  2 14:32:32 2004  Pablo Saratxaga  <pablo@mandrakesoft.com>
1059
1060         * configure.in po/uz*.po: changed default for Uzbek; now just "uz"
1061         is in cyrillic and "uz@Latn" for latin; "uz@Cyrl" has been removed
1062
1063 Sun Feb  1 16:34:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1064
1065         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
1066         sliding when using the new API.
1067
1068 Sun Feb  1 16:03:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1069
1070         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
1071         item_area is positioned correctly. Fix #133070, reported by Jeroen
1072         Zwartepoorte.
1073
1074 Sat Jan 31 23:13:43 2004  Matthias Clasen  <maclas@gmx.de>
1075
1076         * gtk/gtktextchild.c (gtk_text_child_anchor_finalize): Don't
1077         crash when finalizing an unused GtkTextChildAnchor.  (#132260,
1078         muppet)
1079
1080 Sat Jan 31 22:41:57 2004  Matthias Clasen  <maclas@gmx.de>
1081
1082         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Correct
1083         the documentation for new_order.  (#124790, Tim-Philipp Müller)
1084
1085 Sat Jan 31 22:38:07 2004  Matthias Clasen  <maclas@gmx.de>
1086
1087         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
1088         Reset use_resized_width when setting fixed_width.  (#108612, 
1089         Felipe Heidrich) 
1090
1091 Sat Jan 31 16:27:44 2004  Matthias Clasen  <maclas@gmx.de>
1092
1093         * gtk/gtkmain.c (gtk_key_snooper_remove): Don't leak the
1094         GtkKeySnooperData.  (#132038, R. McFarland)
1095
1096 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
1097
1098         Fixes #132975.
1099
1100         * gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
1101         not FALSE.
1102         (gtk_file_system_volume_render_icon): Likewise.
1103
1104         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
1105         Likewise.
1106
1107         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
1108         not FALSE.
1109
1110         * gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
1111         FALSE.
1112
1113         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
1114         not FALSE.
1115         (gtk_text_iter_get_bytes_in_line): Likewise.
1116
1117         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
1118         Likewise.
1119
1120         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
1121         0.
1122
1123 2004-01-30  Not Zed  <NotZed@Ximian.com>
1124
1125         Fixes #132929.
1126
1127         * gtk/gtktreeview.c (cancel_arrow_animation): remove the timeout
1128         handler when we clear the timeout id.
1129
1130 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
1131
1132         Fix #129872, based on a patch by Jan Arne Petersen
1133         <jpetersen@uni-bonn.de>
1134
1135         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_list_bookmarks):
1136         Implement.
1137         (gtk_file_system_unix_add_bookmark): Implement.
1138         (gtk_file_system_unix_remove_bookmark): Implement.
1139
1140 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
1141
1142         Fixes #132693.
1143
1144         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_parent): Don't
1145         use filename_from_path().  Also, check that the filename is
1146         absolute.
1147         (gtk_file_system_unix_get_folder): Likewise.
1148         (gtk_file_system_unix_create_folder): Likewise.
1149         (gtk_file_system_unix_make_path): Likewise.
1150         (gtk_file_system_unix_parse): Likewise.
1151         (gtk_file_folder_unix_get_info): Likewise.
1152         (filename_from_path): Removed.
1153
1154 2004-01-30  Federico Mena Quintero  <federico@ximian.com>
1155
1156         * gtk/gtkcalendar.c (arrow_action): Remove C++ comment; reported
1157         by Damien Carbery <damien.carbery@sun.com>.  Fixes #132956.
1158
1159 Fri Jan 30 11:37:37 2004  Owen Taylor  <otaylor@redhat.com>
1160
1161         * gdk/x11/gdkdrawable-x11.c: Revert changes from
1162         #113476 and go back to using XftDrawSetClip, because
1163         XftDrawSetClipRectangles is buggy in XFree86-4.3.
1164
1165 Thu Jan 29 18:08:06 2004  Owen Taylor  <otaylor@redhat.com>
1166
1167         * gtk/gtktextlayout.c (line_display_iter_to_index)
1168         * gtk/gtktextlayout.c (line_display_index_to_iter): Only
1169         adjust the preedit position for lines that include the
1170         preedit string. (#132353, Yao Zhang). How the heck
1171         did this work as well as it did?!?!
1172
1173         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): 
1174         Reverse change to change of XNFilterEvents event mask from
1175         #110493 -- it's documented and in the Xlib code an
1176         unsigned long. 
1177         
1178         * modules/input/gtkimcontextxim.c (preedit_start_callback): 
1179         Return -1 rather than void to indicate no length limit.
1180         (#129548)
1181
1182 Fri Jan 30 00:45:46 2004  Matthias Clasen  <maclas@gmx.de>
1183
1184         * gtk/gtkadjustment.c: Add properties to GtkAdjustment.
1185         (#64601, Murray Cumming)
1186
1187 Fri Jan 30 00:13:46 2004  Matthias Clasen  <maclas@gmx.de>
1188
1189         * gtk/gtkcombo.c (gtk_combo_set_popdown_strings): Allow NULL
1190         for strings to clear the list.  (#105386, Marco Pesenti Gritti)
1191         
1192 2004-01-28  Richard Hult  <richard@imendio.com>
1193
1194         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size):
1195         Free font_desc.  Fixes #132805.
1196
1197 2004-01-29  Federico Mena Quintero  <federico@ximian.com>
1198
1199         * gtk/gtkiconfactory.c (render_icon_name_pixbuf): Free the GError.
1200         Patch provided by Christian Persch <chpe@stud.uni-saarland.de>
1201         Fixes #132574.
1202
1203 Thu Jan 29 11:00:18 2004  Owen Taylor  <otaylor@redhat.com>
1204
1205         * gtk/gtkselection.c (gtk_selection_default_handler): 
1206         nul-terminate the target atoms. (#132656, Christian Persch)
1207
1208 Thu Jan 29 00:59:03 2004  Matthias Clasen  <maclas@gmx.de>
1209
1210         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
1211         Don't leak path if we bail out early.  (#132505, Christian Persch)
1212
1213 Thu Jan 29 00:48:47 2004  Matthias Clasen  <maclas@gmx.de>
1214
1215         * gtk/gtkactiongroup.c (gtk_action_group_add_toggle_actions_full):
1216         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Do
1217         reference counting on the user_data that is shared between
1218         multiple signal handlers, to avoid calling the destroy notify
1219         multiple times.  (#132447, Adam Hooper)
1220
1221 2004-01-28  Hans Breuer  <hans@breuer.org>
1222
1223         * gtk/stock-icons/stock_network_(16|24).png : new GTK_STOCK_NETWORK ...
1224           gtk/gtkstock.[hc] : ... define ...
1225           gtk/gtkiconfactory.c : ... register ...
1226           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc : ... compile ...
1227         * gtk/gtkfilesystemwin32.c : ... and use. Also adapt to recent 
1228         IFace changes.
1229
1230         * gtk/gtk.def : added a bunch of new exported symbols
1231
1232         * tests/testfilechooser.c (no_backup_files_filter) : don't crash
1233         on filter_info->display_name being NULL
1234
1235         * tests/testgtk.c : make testgtk --bench=all work again
1236
1237 Wed Jan 28 21:40:47 2004  Matthias Clasen  <maclas@gmx.de>
1238
1239         * gtk/gtkentrycompletion.c (gtk_entry_completion_action_data_func):
1240         Don't leak string.  (#132482, Christian Persch)
1241
1242 Tue Jan 27 18:45:47 2004  Manish Singh  <yosh@gimp.org>
1243
1244         * m4macros/gtk-2.0.m4: quote AC_DEFUN macro names so automake
1245         1.8 won't whine at us.
1246
1247 2004-01-28  Tor Lillqvist  <tml@iki.fi>
1248
1249         * gdk/win32/gdkevents-win32.c (synthesize_leave_event,
1250         synthesize_enter_event): Don' generate enter or leave events if
1251         the pointer is grabbed with owner_events off, and the grab event
1252         mask doesn't ask for them. (#129242)
1253
1254         (gdk_event_translate): Ditto for focus change events.
1255
1256 2004-01-27  Federico Mena Quintero  <federico@ximian.com>
1257
1258         Fix #132314.
1259
1260         * gtk/gtkfilesystem.h: Removed the #ifdef-ed out, old icon API.
1261
1262         * gtk/gtkfilesystem.c: Likewise.
1263
1264         * gtk/gtkfilesystemunix.c (filename_get_info): Removed the old
1265         icon-type code.
1266         (gtk_file_system_unix_render_icon): Moved the icon-rendering code
1267         from GtkFileInfo to here.
1268         (gtk_file_system_unix_volume_render_icon): Implement.
1269
1270 2004-01-28  Changwoo Ryu  <cwryu@debian.org>
1271
1272         * modules/input/imhangul-defs.h: 
1273         * modules/input/imhangul.c:
1274         * modules/input/Makefile.am: Remove broken hangul input module.
1275         
1276 Tue Jan 27 01:56:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1277
1278         * gtk/gtktoolbar.c: Remove obsolete comment.
1279
1280         * gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START, 
1281         SPACE_LINE_END): Make separators wider and taller, so they are
1282         easier to pick up when editing the toolbar.
1283
1284         * gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
1285         a bit, 
1286
1287         * gtk/gtktoolbar.c (rect_within): Formatting fix
1288
1289         * gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
1290         sliding feel more responsive by only restarting sliding when the
1291         placeholder actually changes its goal allocation.
1292
1293 Tue Jan 27 02:00:37 2004  Matthias Clasen  <maclas@gmx.de>
1294
1295         * gtk/gtktreeitem.c (gtk_tree_item_add_pixmaps): Avoid a 
1296         compiler warning.  (#122725, Kjartan Maraas)
1297         
1298 Tue Jan 27 01:46:54 2004  Matthias Clasen  <maclas@gmx.de>
1299
1300         Make menus work better on Xinerama (#126150):
1301         
1302         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Calculate the 
1303         monitor_num on the screen of the menu, not of the attach widget.
1304
1305         * gtk/gtkmenu.c (menu_change_screen): Forget the stored monitor_num. 
1306         (gtk_menu_window_size_request): Remember the monitor_num.
1307
1308 2004-01-26  Federico Mena Quintero  <federico@ximian.com>
1309
1310         Fix #105497; constify uses of GdkColor.
1311
1312         * gdk/gdkgc.c (gdk_gc_set_rgb_fg_color): Constify.
1313         (gdk_gc_set_rgb_bg_color): Constify.
1314         (gdk_gc_set_foreground): Constify.
1315
1316         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): Constify.
1317         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Constify.
1318         * gdk/linux-fb/gdkcursor-fb.c (gdk_cursor_new_from_pixmap): Constify.
1319
1320         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_create_from_data): Constify.
1321         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data): Constify.
1322         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_create_from_data): Constify.
1323
1324         * gdk/x11/gdkwindow-x11.c (gdk_window_set_background): Constify.
1325         * gdk/win32/gdkwindow-win32.c (gdk_window_set_background): Constify.
1326         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_background): Constify.
1327
1328         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors): Constify.
1329         (gdk_draw_layout_with_colors): Constify.
1330
1331         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf): Constify.
1332         (gdk_pixmap_colormap_create_from_xpm): Constify.
1333         (gdk_pixmap_create_from_xpm): Constify.
1334         (gdk_pixmap_colormap_create_from_xpm_d): Constify.
1335         (gdk_pixmap_create_from_xpm_d): Constify.
1336
1337         * gtk/gtkcellview.c (gtk_cell_view_set_background_color): Constify.
1338
1339         * gtk/gtkclist.c (gtk_clist_set_foreground): Constify.
1340         (gtk_clist_set_background): Constify.
1341
1342         * gtk/gtkcolorbutton.c (gtk_color_button_new_with_color): Constify.
1343         (gtk_color_button_set_color): Constify.
1344
1345         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_color):
1346         Constify and add a check for color != NULL.
1347         (gtk_color_selection_get_current_color): Add a check for color != NULL.
1348         (gtk_color_selection_set_previous_color): Constify and add a check
1349         for color != NULL.
1350         (gtk_color_selection_get_previous_color): Add a check for color != NULL.
1351
1352         * gtk/gtkctree.c (gtk_ctree_node_set_foreground): Constify.
1353         (gtk_ctree_node_set_background): Constify.
1354
1355         * gtk/gtktext.c (gtk_text_insert): Constify.
1356         (insert_text_property): Constify.
1357         (text_properties_equal): Constify.
1358         (new_text_property): Constify.
1359
1360         * gtk/gtkwidget.c (gtk_widget_modify_color_component): Constify.
1361         (gtk_widget_modify_fg): Constify.
1362         (gtk_widget_modify_bg): Constify.
1363         (gtk_widget_modify_text): Constify.
1364         (gtk_widget_modify_base): Constify.
1365
1366 2004-01-26  Christian Rose  <menthos@menthos.com>
1367
1368         * configure.in: Added "mi" to ALL_LINGUAS.
1369
1370 2004-01-25  Tor Lillqvist  <tml@iki.fi>
1371
1372         * gdk/win32/gdkproperty-win32.c (gdk_property_delete): If the
1373         WM_TRANSIENT_FOR property is being deleted, set the owner of the
1374         window to the root window (i.e., effectively unset it). (#132411)
1375
1376         * gdk/win32/gdkprivate-win32.h
1377         * gdk/win32/gdkglobals-win32.c
1378         * gdk/win32/gdkmain-win32.c: Declare, define and initialize
1379         _wm_transient_for, a GdkAtom for WM_TRANSIENT_FOR.
1380
1381         * acconfig.h: Remove HAVE_WINSOCK_H, not used any longer.
1382
1383 Sun Jan 25 15:14:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1384
1385         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
1386         to map/unmap items on whether they are actually allocated outside
1387         the toolbar, not on whether that will eventually happen. Improves
1388         animation in the presence of overflown items.
1389
1390         * gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
1391         queue_resize() to so that the items will get their new goal
1392         values and the idle handler will not immediately return FALSE.
1393
1394         * gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
1395         make sure that a placeholder becoming invisible doesn't cause a
1396         return TRUE.
1397
1398         * gtk/gtktoolbar.c (get_item_size): Don't special case
1399         placeholders here.
1400
1401 Sat Jan 24 23:17:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1402
1403         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
1404         try to pack icon if there actually is one.
1405
1406         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
1407         OVERFLOWN items get an allocation even when they are
1408         unmapped. This ensures they will slide in properly.
1409
1410         * gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
1411         when there are overflown items that need to slide in. Also add
1412         comments and make formatting more readable.
1413
1414 Sat Jan 24 17:38:48 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1415
1416         * gtk/gtkradiotoolbutton.c (gtk_radio_tool_button_class_init):
1417         Add a write-only property ::group to be consistent with
1418         GtkRadioAction and GtkRadioButton. (#132159, Patch from Olivier
1419         Andrieu)
1420
1421 Fri Jan 23 23:46:12 2004  Matthias Clasen  <maclas@gmx.de>
1422
1423         * gtk/gtkfontbutton.c (gtk_font_button_label_use_font): Don't leak the 
1424         font description.  (#132168)
1425
1426 2004-01-23  Federico Mena Quintero  <federico@ximian.com>
1427
1428         Fix #132247.
1429
1430         * gtk/gtkfilechooserdefault.c (set_select_multiple): Handle folder
1431         mode.
1432         (set_select_multiple): Optionally notify about changes to the
1433         select-multiple property.
1434         (list_selection_changed): Change the condition for the editable row to
1435         test for save mode; this is more clear than testing for not being
1436         in multiple selection mode.
1437         (gtk_file_chooser_default_get_paths): Get impl->action directly
1438         rather than calling gtk_file_chooser_get_action().
1439         (entry_activate): Likewise.
1440         (set_select_multiple): Annotate about #133255.
1441         (update_chooser_entry): Likewise.
1442         (check_preview_change): Likewise.
1443         (tree_selection_changed): Likewise.
1444
1445 Fri Jan 23 14:56:18 2004  Jonathan Blandford  <jrb@gnome.org>
1446
1447         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Don't crash
1448         when there are no columns, or all columns are hidden, #131402
1449
1450 Fri Jan 23 16:58:28 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1451
1452         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): Changing to 200 was a
1453         mistake. Change back to 225.
1454
1455 Thu Jan 22 18:46:05 2004  Owen Taylor  <otaylor@redhat.com>
1456
1457         * === Released 2.3.2 ===
1458
1459 Thu Jan 22 18:45:26 2004  Owen Taylor  <otaylor@redhat.com>
1460
1461         * gtk/gtkicontheme.c: Patch from Christian Neumair
1462         to make warning string more translator friendly.
1463
1464         * gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
1465         gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
1466         happy.
1467
1468         * configure.in: Require GLib-2.3.2, version 2.3.2,
1469         interface age 0, binary age 302.
1470
1471         * NEWS: Organized, added some names.
1472
1473 Thu Jan 22 16:59:36 2004  Jonathan Blandford  <jrb@gnome.org>
1474
1475         * gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
1476
1477 2004-01-22  Federico Mena Quintero  <federico@ximian.com>
1478
1479         * gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
1480         GtkWidget::popup_menu.
1481
1482 Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>
1483
1484         * gtk/gtkmenu.c (gtk_menu_remove): Remove the attach 
1485         info after calling gtk_menu_do_remove(), since that function
1486         uses the attach info. Doh!
1487
1488         * gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns 
1489         for being 1 directly after setting it to 0.
1490
1491 Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1492
1493         * NEWS: Updates
1494
1495 2004-01-22  Alexander Larsson  <alexl@redhat.com>
1496
1497         * gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
1498         Fix typo
1499
1500 2004-01-21  Federico Mena Quintero  <federico@ximian.com>
1501
1502         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
1503         Free the path fields.
1504
1505         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
1506         the root_path, reported by <scott@asofyet.org>
1507         (gtk_file_system_model_finalize): Unref the file system.
1508
1509         * gtk/gtkfilefilter.c (filter_rule_free): default:
1510         g_assert_not_reached().
1511         (gtk_file_filter_finalize): Free the filter->name, reported by
1512         <scott@asofyet.org>
1513         (gtk_file_filter_finalize): Free the rules list.
1514
1515 Wed Jan 21 18:10:40 2004  Jonathan Blandford  <jrb@gnome.org>
1516
1517         * gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
1518         color button when an alpha is set.
1519         (gtk_color_button_set_alpha): redraw the color button when an
1520         alpha is set.
1521
1522 Wed Jan 21 23:27:14 2004  Matthias Clasen  <maclas@gmx.de>
1523
1524         Fix #131869: 
1525         
1526         * gtk/gtkaction.c (_gtk_action_emit_activate): Hold
1527         a reference to the group while emitting the signals.
1528
1529         * gtk/gtkactiongroup.c (gtk_action_group_init): Use a 
1530         destroy notify which does not only unref, but also resets
1531         the action_group property of the action.
1532
1533 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
1534
1535         * NEWS: Added details about GtkFileChooser changes.
1536
1537 2004-01-20  Federico Mena Quintero  <federico@ximian.com>
1538
1539         Fix #99425, add accessor functions for GtkPaned's children.
1540
1541         * gtk/gtkpaned.c (gtk_paned_get_child1): New function.
1542         (gtk_paned_get_child2): New function.
1543
1544 Tue Jan 20 23:49:52 2004  Matthias Clasen  <maclas@gmx.de>
1545
1546         * NEWS: Start of 2.3.2 section.
1547
1548 Tue Jan 20 22:11:31 2004  Matthias Clasen  <maclas@gmx.de>
1549
1550         Fixes for #130370, based on a patch by Michael Meeks:
1551         
1552         * gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
1553         adjust cell positions and recalculate row and column counts after
1554         removing an item.
1555
1556         * gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.
1557
1558         * gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
1559         appending items.
1560
1561         * gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
1562         to avoid an unintended recursion.
1563
1564 2004-01-19  Federico Mena Quintero  <federico@ximian.com>
1565
1566         Fix #131418.
1567
1568         * gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
1569         function.
1570         (gtk_file_chooser_default_set_property): Use
1571         set_select_multiple().  Also, re-set this mode to single if the
1572         file chooser is set to Save mode.
1573         (entry_activate): Handle the case where the entry is completely
1574         empty *and* its current folder does exist.  Also, there is need to
1575         test for select_multiple here now that we ensure that it won't
1576         happen during Save mode.
1577
1578 Sun Jan 18 15:25:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1579
1580         * gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
1581         _gtk_toolbar_get_default_space_size ();
1582
1583         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
1584         get_space_size): Use them here.
1585
1586 Sun Jan 18 13:16:34 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1587
1588         * tests/testgtk.c (create_toolbar): Set a small size request and
1589         make the window resizable, to test mapping/unmapping of buttons.
1590
1591         * gtk/gtktoolbar.c (gtk_toolbar_remove_content,
1592         gtk_toolbar_insert_tool_item): remove these functions.
1593
1594         * gtk/gtktoolbar.c (gtk_toolbar_show_all,
1595         toolbar_content_show_all, gtk_toolbar_hide_all,
1596         toolbar_content_hide_all): New functions. 
1597
1598         Ignore show_all/hide_all for buttons created in compatibility mode.
1599
1600         * gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
1601         gtk_toolbar_hide_all): Make sure buttons are ignored by
1602         gtk_toolbar_show_all() and gtk_toolbar_hide_all().
1603         
1604         * gtk/gtktoolbar.c: s/regular_widget/compatibility/g
1605
1606         * gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
1607         GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.
1608
1609         * gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
1610         could become NULL.
1611
1612         * gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
1613         instead of prepending them.
1614
1615         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
1616         'elapsed' for all items.
1617
1618         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
1619         into bitfields.
1620
1621         * gtk/gtktoolbar.c: Many formatting fixes
1622         
1623 Sun Jan 18 01:51:12 2004  Matthias Clasen  <maclas@gmx.de>
1624
1625         * configure.in: Add the necessary magic to create
1626         po-properties/Makefile.
1627
1628 Sat Jan 17 23:05:52 2004  Matthias Clasen  <maclas@gmx.de>
1629
1630         The second part of the fix for #114351 (see also 
1631         gdk-pixbuf/ChangeLog and po/ChangeLog):
1632
1633         * Makefile.am (SUBDIRS): Add po-properties.
1634
1635         * configure.in (AC_CONFIG_FILES): Add po-properties/Makefile.in 
1636
1637         * gdk/gdkintl.h (P_): 
1638         * gtk/gtkintl.h (P_): Use translation domain gtk20-properties. 
1639
1640         * gtk/gtkmain.c (gtk_parse_args): Call bindtextdomain and
1641         bind_textdomain_codeset for gtk20-properties as well.
1642
1643 Sat Jan 17 22:00:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1644
1645         * gtk/gtktoolbar.c: 
1646
1647         Fix rest of #128678: Implement all the toolbar_content()
1648         methods for the old API case.
1649
1650 Sat Jan 17 16:53:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1651
1652         * gtk/gtktoolbar.c: 
1653
1654         Phase 1 of fixing #128678: Only access ToolbarContent through a
1655         set of new functions:
1656
1657         toolbar_content_expose, toolbar_content_visible,
1658         toolbar_content_size_request, toolbar_content_is_homogeneous,
1659         toolbar_content_get_child_requisition,
1660         toolbar_content_is_placeholder, toolbar_content_disappearing,
1661         toolbar_content_get_state, toolbar_content_child_visible,
1662         toolbar_content_get_goal_allocation,
1663         toolbar_content_get_allocation,
1664         toolbar_content_set_start_allocation,
1665         toolbar_content_get_start_allocation, toolbar_content_get_expand,
1666         toolbar_content_set_goal_allocation,
1667         toolbar_content_set_child_visible, toolbar_content_size_allocate,
1668         toolbar_content_set_state, toolbar_content_get_widget,
1669         toolbar_content_set_disappearing,
1670         toolbar_content_set_size_request,
1671         toolbar_content_toolbar_reconfigured,
1672         toolbar_content_retrieve_menu_item, 
1673         toolbar_content_new_tool_item, toolbar_content_destroy,
1674         toolbar_content_is_separator
1675
1676         Also fix #127092.
1677         
1678 Sat Jan 17 12:55:13 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1679
1680         * gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
1681         item ID.
1682
1683 Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1684
1685         * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
1686         overflow menu.
1687         
1688         * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
1689         [#127726]
1690
1691 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1692
1693         * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
1694         has_editable field.
1695         (_gtk_file_system_model_add_editable): New function.
1696         (_gtk_file_system_model_remove_editable): New function.
1697         (gtk_file_system_model_get_value): Return appropriate values for
1698         the temporary editable row.
1699         (_gtk_file_system_model_get_info): Handle the editable row.
1700         (_gtk_file_system_model_get_path): Likewise.
1701
1702         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
1703         Removed an unused variable.
1704         (toolbar_button_new): Optionally show the button.
1705         (up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
1706         (toolbar_create): Add a "New Folder" button for Save mode.
1707         (error_building_filename_dialog): New helper function.
1708         (gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
1709         (create_file_list): Connect to the "edited" signal of the text
1710         cell renderer.  Store the name column and text renderer in the
1711         impl structure.
1712         (renderer_edited_cb): New callback.
1713         (gtk_file_chooser_default_set_property): Show/hide the "New
1714         folder" button when the save action changes.
1715         (COMPARE_DIRECTORIES): Allow the info values to be NULL.
1716         (COMPARE_DIRECTORIES): Duh, use the list_model, not the
1717         tree_model.
1718         (get_list_file_info): Likewise!
1719         (list_icon_data_func): Handle the path being NULL.
1720         (new_folder_button_clicked): New callback.
1721         (list_name_data_func): If we are on the editable row, set the text
1722         to "Type name of new folder".
1723         (list_selection_changed): Handle the editable row.
1724         (list_mtime_data_func): Likewise.
1725
1726         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
1727         NULL, not FALSE.
1728         (gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
1729
1730 Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>
1731
1732         The first part of the fix for #114351 (see also 
1733         gdk-pixbuf/ChangeLog and po/ChangeLog):
1734         
1735         * gtk/gtkintl.h: 
1736         * gdk/gdkintl.h: Define P_() for property blurbs and nicks.
1737
1738         * gdk/gdkdisplaymanager.c:
1739         * modules/input/gtkimcontextxim.c:
1740         * gtk/*.c:  Mark property blurbs and nicks with P_().
1741         
1742 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1743
1744         Fix #130969.
1745
1746         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
1747         editing_canceled signal.
1748
1749         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
1750         "editing-canceled" signal.
1751         (gtk_cell_renderer_editing_canceled): New function.
1752
1753         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
1754         Call gtk_cell_renderer_editing_canceled().
1755
1756 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1757
1758         * gtk/gtkfilechooserdefault.c
1759         (gtk_file_chooser_default_set_property): Do not allow setting
1760         select_multiple when in Save mode.
1761         (set_list_model): No need to nullify the list_model and
1762         sort_model.
1763         (gtk_file_chooser_default_get_paths): Handle folder mode as well.
1764         (get_paths_foreach): Likewise.
1765
1766         * gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
1767         documentation about folder mode.
1768         (gtk_file_chooser_get_uri): Likewise.
1769
1770 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
1771
1772         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
1773         get_volume_for_path() method.
1774         (struct _GtkFileSystemIface): Finally removed the list_roots() and
1775         get_root_info() methods, and the "roots-changed" signal.
1776
1777         * gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
1778         function.
1779         (gtk_file_system_list_roots): Removed.
1780         (gtk_file_system_get_root_info): Removed.
1781
1782         * gtk/gtkfilesystemunix.c
1783         (gtk_file_system_unix_get_volume_for_path): Implement.
1784         (get_root_volume): New helper function.
1785         (gtk_file_system_unix_list_volumes): Use get_root_volume().
1786         (gtk_file_system_unix_list_roots): Removed.
1787         (gtk_file_system_unix_get_root_info): Removed.
1788
1789         * gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
1790         accept a NULL root_path.
1791         (struct _GtkFileSystemModel): Add a field to remember the
1792         root_path.
1793         (_gtk_file_system_model_new): Store the root_path in the model
1794         structure.
1795         (find_and_ref_path): Stop going up the hierarchy at the root_path
1796         of the model.  Also, don't return prematurely when walking up the
1797         hierarchy.
1798
1799         * gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
1800         the rules_hint.
1801         (struct _GtkFileChooserDefault): Added a current_volume_path field.
1802         (set_tree_model): New function; create the folder tree model here.
1803         (create_folder_tree): Don't create the model here.
1804         (set_list_model): Set the show_hidden flag on the list model.
1805
1806 Fri Jan 16 00:04:43 2004  Matthias Clasen  <maclas@gmx.de>
1807
1808         * gtk/gtknotebook.h:
1809         * gtk/gtknotebook.c (gtk_notebook_append_page): 
1810         * gtk/gtknotebook.c (gtk_notebook_append_page_menu): 
1811         * gtk/gtknotebook.c (gtk_notebook_prepend_page): 
1812         * gtk/gtknotebook.c (gtk_notebook_prepend_page_menu): 
1813         * gtk/gtknotebook.c (gtk_notebook_insert_page): 
1814         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
1815         index of the newly inserted page.  (#130986, Olexiy Avramchenko) 
1816
1817 Thu Jan 15 23:17:14 2004  Matthias Clasen  <maclas@gmx.de>
1818
1819         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
1820         a 'newly-allocated' to hint that the list should be freed after
1821         use.
1822
1823 Wed Jan 14 18:01:52 2004  Jonathan Blandford  <jrb@gnome.org>
1824
1825         * gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
1826         to after handling the button presses in the TreeView to avoid
1827         getting multiple selection_changes()
1828
1829 Wed Jan 14 21:16:20 2004  Matthias Clasen  <maclas@gmx.de>
1830
1831         * gtk/gtkimcontext.c: Documentation fix.  (#131335, Theppitak 
1832         Karoonboonyanan)
1833
1834 Wed Jan 14 21:00:49 2004  Matthias Clasen  <maclas@gmx.de>
1835
1836         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
1837         Don't leak name and stock_id.  (#131358, Morten Welinder)
1838
1839 Wed Jan 14 13:07:30 GMT 2004  Tony Gale <gale@gtk.org>
1840
1841         * docs/faq/gtk-faq.sgml: Updates to Section 5
1842
1843 Wed Jan 14 02:34:57 2004  Matthias Clasen  <maclas@gmx.de>
1844
1845         * gtk/gtkradioaction.c: Add a writable group property to align
1846         with the GtkRadioButton API.  (#129166, Olivier Andrieu) 
1847
1848 Tue Jan 13 14:48:27 GMT 2004  Tony Gale <gale@gtk.org>
1849
1850         * docs/faq/gtk-faq.sgml: Update info on using autoconf
1851
1852 Mon Jan 12 23:40:34 2004  Matthias Clasen  <maclas@gmx.de>
1853
1854         * tests/testmerge.c: Adjust to the new connect_proxy signals.
1855
1856         * gtk/gtkuimanager.c
1857         * gtk/gtkactiongroup.c
1858         * gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
1859         from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
1860         removes the confusion between the disconnect_/connect_proxy signals 
1861         and the (unrelated) virtual functions of the same name and aligns
1862         the setup with the pre_/post_activate signals.
1863
1864 2004-01-12  Jody Goldberg <jody@gnome.org>
1865
1866         * gtk/gtkaction.c (connect_proxy) : only connect activate for menus
1867           with no submenus otherwise it looks like we activate every time a
1868           submenu opens.
1869
1870 2004-01-12  Jody Goldberg <jody@gnome.org>
1871
1872         * gtk/gtkuimanager.c: Remove accidentially committed debug spew.
1873
1874 Sun Jan 11 01:55:07 2004  Matthias Clasen  <maclas@gmx.de>
1875
1876         * gtk/gtkaccelmap.c: Remove accidentally committed notification stuff. 
1877         (gtk_accel_map_lock_path): 
1878         (gtk_accel_map_unlock_path): Path locking can now be nested, a missing
1879         entry is silently created during lock_path(), and treated as an error 
1880         during unlock_path(). These changes have been requested by Tim Janik.
1881
1882 2004-01-10  Jody Goldberg <jody@gnome.org>
1883
1884         * gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
1885         s/merge_signals/ui_manager_signals/ for readability.
1886         (gtk_ui_manager_class_init) : add pre_activate and post_activate
1887           signals.
1888         (cb_proxy_pre_activate) : new.
1889         (cb_proxy_post_activate) : new.
1890         (gtk_ui_manager_insert_action_group) : connect the proxies for
1891           GtkActionGroup::pre/post_activate
1892         (gtk_ui_manager_remove_action_group) : disconnect them.
1893
1894         * gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
1895           'sensitive', and 'visible' properties.  Also add pre_activate and
1896           post_activate signals to help deal with activations at a higher
1897           level (eg GtkUIManager)
1898         (gtk_action_group_init) : init sensitive and visible
1899         (gtk_action_group_set_property) : add sensitive and visible
1900         (gtk_action_group_get_property) : add sensitive and visible
1901         (gtk_action_group_get_sensitive) : new.
1902         (gtk_action_group_get_visible) : new.
1903         (cb_set_action_sensitivity) : new with minor optimization that only
1904           signals sensitivity changes if the action could possibly change.
1905         (cb_set_action_visiblility) : ditto.
1906         (gtk_action_group_set_sensitive) : new.  walk the actions directly
1907           rather than using notify::sensitive because that is simpler, easier
1908           to read, and more efficient.
1909         (gtk_action_group_set_visible) : ditto.
1910         (gtk_action_group_add_action) : Each action can only be in 1 group,
1911           set GtkAction::action_group.
1912         (gtk_action_group_remove_action) : clear it.
1913         (gtk_action_group_add_toggle_actions_full) : warning suppression.
1914         (gtk_action_group_add_radio_actions_full) : warning suppression.
1915         (_gtk_action_group_emit_pre_activate) : new protected routine for use
1916           by GtkAction.
1917         (_gtk_action_group_emit_post_activate) : ditto.
1918
1919         * gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
1920         (gtk_action_init) : initialize it.
1921         (gtk_action_get_property) : get.
1922         (gtk_action_set_property) : set it via
1923         (gtk_action_set_action_group) : new function.
1924         (gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
1925           with the logical sensitivity (action & group) rather than the simple
1926           action::sensitivity.
1927         (gtk_action_sync_visible) : use gtk_action_is_visible to handle
1928           logical visibility (action & group) rather than the simple
1929           action::visible.  Use widget show/hide directly.
1930         (connect_proxy) : handle the custom sensitivity handler.
1931           Make the TOOL_BUTTON signals more general and support TOOL_ITEM
1932           directly, with special cases for TOOL_BUTTON.  Still not especially
1933           good it might be useful to handle label/use_underline by parmspec
1934           lookup.  Those are likely to be implemented by custom types, and are
1935           assumed to exist in GtkToolItem.
1936         (disconnect_proxy) : disconnect the new sensitivity handler.
1937         (_gtk_action_emit_activate) : add pre/post signals.
1938         (gtk_action_activate) : use logical sensitivity.
1939         (gtk_action_is_sensitive) : logical sensitivity.
1940         (gtk_action_get_sensitive) : actual sensitivity.
1941         (closure_accel_activate) : use logical sensitivity.
1942
1943 Fri Jan  9 22:23:45 2004  Matthias Clasen  <maclas@gmx.de>
1944
1945         * gtk/gtkuimanager.c: Introduce a new parser state for 
1946         accelerator elements to avoid misparsing files containing 
1947         such elements.  (#131035, Morten Welinder)
1948
1949 Fri Jan  9 11:58:47 2004  Manish Singh  <yosh@gimp.org>
1950
1951         * gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
1952
1953 Fri Jan  9 15:28:21 GMT 2004  Tony Gale <gale@gtk.org>
1954
1955         * docs/faq/gtk-faq.sgml: update GtkEntry filter code example
1956
1957 Fri Jan  9 00:34:57 2004  Matthias Clasen  <maclas@gmx.de>
1958
1959         * gtk/gtkuimanager.h:
1960         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
1961         obtain a list of toplevel widgets constructed by the ui manager.
1962
1963         * gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that 
1964         the values can be combined for gtk_ui_manager_get_toplevels().
1965
1966         * tests/testmerge.c: Add a "Dump toplevels" button to test 
1967         gtk_ui_manager_get_toplevels().
1968
1969 Wed Jan  7 23:20:06 2004  Matthias Clasen  <maclas@gmx.de>
1970
1971         * demos/gtk-demo/Makefile.am (demos): Add entry_completion.c
1972         
1973         * demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion 
1974         by Anders Carlsson  (#130464).
1975
1976 Wed Jan  7 23:07:28 2004  Matthias Clasen  <maclas@gmx.de>
1977
1978         * gtk/gtkmain.h: 
1979         * gtk/gtkmain.c (gtk_events_pending): Change the return value from 
1980         gint to gboolean.  (#130718, reported by Johannes Weißl)
1981
1982 Wed Jan  7 23:03:32 2004  Matthias Clasen  <maclas@gmx.de>
1983
1984         * gtk/gtkactiongroup.h: 
1985         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
1986         Remove the redundant name and stock_id parameters, adjust all callers.
1987
1988 Wed Jan  7 22:20:20 2004  Matthias Clasen  <maclas@gmx.de>
1989
1990         * gtk/gtkaction.h: 
1991         * gtk/gtkaction.c (gtk_action_new):  
1992         * gtk/gtktoggleaction.h: 
1993         * gtk/gtktoggleaction.c (gtk_toggle_action_new): 
1994         * gtk/gtkradioaction.h: 
1995         * gtk/gtkradioaction.c (gtk_radio_action_new): Add creation 
1996         functions for actions.
1997
1998         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
1999         (gtk_action_group_add_toggle_actions_full): 
2000         (gtk_action_group_add_radio_actions_full): and use the
2001         new functions here.  (#125322, Patch by Jeff Frank)
2002
2003 Wed Jan  7 21:42:49 2004  Matthias Clasen  <maclas@gmx.de>
2004
2005         * gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of 
2006         docs.
2007
2008 2004-01-07  Jan Arne Petersen  <jpetersen@uni-bonn.de>
2009
2010         * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
2011         (shortcuts_append_home), (shortcuts_append_desktop),
2012         (shortcuts_append_paths), (shortcuts_add_volumes),
2013         (shortcuts_append_bookmarks), (create_shortcuts_model),
2014         (gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
2015         to the shortcuts_model.
2016
2017         (remove_bookmark_button_clicked_cb),
2018         (bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
2019         bookmarks can be removed. Fixes #129873
2020
2021 Wed Jan  7 02:50:55 2004  Matthias Clasen  <maclas@gmx.de>
2022
2023         * demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
2024         i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
2025         and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats, 
2026         respectively. Tests #82203.
2027
2028 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
2029
2030         * gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
2031         0777 as the mode for mkdir() and let the umask do the right
2032         thing.  Fixes #121819.
2033
2034         * gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
2035         can return NULL; handle this.  Fixes #129565.
2036
2037 2004-01-06  Alexander Winston  <alexander.winston@comcast.net>
2038
2039         * gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
2040         that proceeded the end-of-sentence punctuation. Fixes: #130353.
2041
2042 2004-01-06  Jody Goldberg <jody@gnome.org>
2043
2044         * gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call 
2045           gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
2046
2047 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
2048
2049         * gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
2050         call shortcuts_add_bookmarks() here.
2051         (remove_bookmark_button_clicked_cb): Ahem, fetch the selected
2052         iter.
2053         (shortcuts_append_paths): Don't display error dialogs here.
2054         (create_file_list): Remove the @#$% rules hint.
2055
2056 2004-01-05  Federico Mena Quintero  <federico@ximian.com>
2057
2058         * gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
2059         function.
2060         (toolbar_create): Do not use a toolbar widget, just an hbox
2061         instead.  Add the bookmarks buttons and the current folder label
2062         here.
2063         (create_filename_entry_and_filter_combo): Create the filter combo
2064         here.
2065         (filter_create): Don't show the filter combo initially.
2066         (up_button_cb): Renamed from toolbar_up_cb().
2067         (create_shortcuts_buttons): Removed.
2068
2069 2004-01-05  Murray Cumming  <murrayc@usa.net>
2070
2071         * gdk/gdkimage.h: Added <public> documentation to the struct, as
2072         suggested by Owen Taylor.
2073
2074 2004-01-05  Jody Goldberg <jody@gnome.org>
2075
2076         * gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
2077           I would have prefered outdent, but compatibility seems more
2078           important.
2079         * gtk/gtkstock.c (builtin_items) : ditto.
2080         * gtk/gtkstock.h : ditto.
2081         * gtk/stock-icons/Makefile.am : ditto.
2082         * gtk/stock-icons/stock_text_indent_16.png :
2083         * gtk/stock-icons/stock_text_indent_24.png :
2084         * gtk/stock-icons/stock_text_unindent_16.png :
2085         * gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme
2086
2087 Sun Jan  4 15:29:04 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
2088
2089         * gtk/gtkradiotoolbutton.[ch]
2090         (gtk_radio_tool_button_new_with_stock_from_widget): Change API so
2091         group is a GtkRadioButton, not a GtkWidget.
2092
2093 2004-01-04  Hans Breuer  <hans@breuer.org>
2094
2095         * gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in 
2096         gdk_window_set_keep_(above|below) to make DND work again.
2097         Thanks to Alif Wahid for noticing.
2098
2099         * gdk/gdk.def : update externals
2100
2101         * gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes
2102
2103         * gtk/gtk-stock.[hc] gtk/gtkiconfactory.c 
2104           gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
2105           gtk/stock-icons/stock_harddisk_16.png 
2106           gtk/stock-icons/stock_harddisk_24.png 
2107         Harddisk stock icons for file system implementations. Beside
2108         FLOPPY and CDROM there is now HARDDISK, probably some 
2109         GTK_STOCK_NETWORK would be useful, but I could not find one.
2110
2111 Sat Jan  3 11:39:42 2004  Manish Singh  <yosh@gimp.org>
2112
2113         * gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
2114         Patch from Andrew Moise (#130462).
2115
2116 2004-01-01  Jody Goldberg <jody@gnome.org>
2117
2118         * gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
2119           visible_vertical.
2120         (gtk_action_class_init) : here.
2121         (gtk_action_init) : here.
2122         (gtk_action_set_property) : here.
2123         (gtk_action_get_property) : here.
2124         (connect_proxy) : and here.
2125
2126 2003-12-30  Jody Goldberg <jody@gnome.org>
2127
2128         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) :  new
2129           utility routine for use in derived GtkActions with the replicated code
2130           from.
2131         (gtk_action_group_add_actions_full) : here.
2132         (gtk_action_group_add_toggle_actions_full) : here.
2133         (gtk_action_group_add_radio_actions_full) : and here.
2134
2135 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
2136
2137         * configure.in: Added "bn" to ALL_LINGUAS.
2138
2139 2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>
2140
2141         * bn.po: Added Bangla translation by 
2142         of Ankur group <gnome-translation@bengalinux.org>.
2143
2144 Fri Jan  2 02:50:11 2004  Matthias Clasen  <maclas@gmx.de>
2145
2146         * gtk/gtkcalendar.c (gtk_calendar_compute_days): 
2147         * gtk/gtkcalendar.c (gtk_calendar_paint_day_names): 
2148         * gtk/gtkcalendar.c (gtk_calendar_init): Changes to support 
2149         week_start values other than 0 and 1, e.g. 6 will let weeks start
2150         on Saturday.  (#130349, Roozbeh Pournader) 
2151
2152 2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>
2153
2154         * gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)
2155         
2156         Fix to allow reasonable pointer behavior in window mode when an
2157         extended input device reports an incorrect resolution of 0.  Fixes
2158         bug #123546
2159         
2160 2003-12-31  Christian Neumair  <chris@gnome-de.org>
2161
2162         * gdk-pixbuf/gdk-pixdata.c: (gdk_pixbuf_from_pixdata):
2163         * gtk/gtkfilechooserdefault.c: (list_size_data_func): Use ngettext for
2164         plurals (#123847).
2165
2166 Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>
2167
2168         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): 
2169         (gtk_action_group_add_toggle_actions_full):
2170         (gtk_action_group_add_radio_actions_full): Pull accelerator key
2171         from the stock item if stock_id is given, but accelerator 
2172         not.  (Noticed by Jeff Franks and Jody Goldberg)
2173
2174         * tests/testmerge.c: Remove the accelerator from the "Open" entry
2175         to test the above change.
2176         
2177 2003-12-29  Federico Mena Quintero  <federico@ximian.com>
2178
2179         Make show_all() work for the extra and preview widgets; reported
2180         by Paolo Maggi.
2181
2182         * gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
2183         preview widget.
2184         (set_extra_widget): show_all() the extra widget.
2185
2186 Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2187
2188         * gtk/gtkuimanager.c (do_updates): 
2189         * gtk/gtktoolbar.c (slide_idle_handler): 
2190         * gtk/gtkdnd.c (gtk_drag_update_idle): 
2191
2192         Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
2193         functions. (#130157, patch from Olexiy Avramchenko).
2194         
2195 2003-12-29  Anders Carlsson  <andersca@gnome.org>
2196
2197         * gtk/gtkradiotoolbutton.c:
2198         * gtk/gtkradiotoolbutton.h:
2199         * gtk/gtkseparatortoolitem.c:
2200         * gtk/gtkseparatortoolitem.h:
2201         * gtk/gtktoggletoolbutton.c:
2202         * gtk/gtktoggletoolbutton.h:
2203         * gtk/gtktoolbar.c:
2204         * gtk/gtktoolbar.h:
2205         * gtk/gtktoolbutton.c:
2206         * gtk/gtktoolbutton.h:
2207         * gtk/gtktoolitem.c:
2208         * gtk/gtktoolitem.h:
2209         Update my e-mail address.
2210         
2211 Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>
2212
2213         * gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path, 
2214         gtk_accel_map_unlock_path): Add a way to lock individual accelerator
2215         paths.  (#73207, reported by Havoc Pennington)
2216
2217 Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2218
2219         * gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
2220         instead of VISIBLE to determine whether we should stop
2221         sliding. (#130018, reported by Christian Persch).
2222
2223 Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>
2224
2225         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
2226         Don't use first_action without initializing it if n_entries is 0.
2227
2228 Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>
2229
2230         * gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
2231         Add the missing _get_ to the name of the non-Xcursor version of
2232         this function.  (noticed by Torsten Schoenfeld)
2233
2234 Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>
2235
2236         * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
2237         muppet.
2238
2239 2003-12-24  Jody Goldberg <jody@gnome.org>
2240
2241         * gtk/gtkactiongroup.h : Add some const to the char * in
2242           GtkActionEntry*.  We're reccomending people pass static strings to
2243           them, and not freeing them.  This stems to flood of warnings that
2244           result.
2245         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
2246           temp vars to const to match above.
2247         (gtk_action_group_add_toggle_actions_full) : ditto.
2248         (gtk_action_group_add_radio_actions_full) : ditto.
2249
2250 Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>
2251
2252         * gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
2253         gtk_clipboard_request_targets() and 
2254         gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
2255
2256 Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>
2257
2258         * gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use 
2259         gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
2260         * gtk/gtkcalendar.c (draw_arrow_left):
2261         (draw_arrow_right): Removed. 
2262         * gtk/gtkcalendar.c (gtk_calendar_realize_arrows): 
2263         * gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
2264         arrow_state to GTK_STATE_INSENSITIVE if the calendar is 
2265         insensitive.  (#97376)
2266
2267 Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>
2268
2269         * gtk/gtkuimanager.c (update_node): 
2270         (update_smart_separators): 
2271         (_gtk_menu_is_empty): 
2272         (find_menu_position): 
2273         * gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy): 
2274         * gtk/gtkcombobox.c (gtk_combo_box_relayout_item): 
2275         (gtk_combo_box_relayout): Fix memory leaks caused by the
2276         failure to free the result of gtk_container_get_children().
2277
2278 Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2279
2280         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
2281         properties when the window becomes a toplevel. When a window that
2282         was previously a toplevel becomes a toplevel again, restore its
2283         window type. Also make sure the focus window is removed from the
2284         XID hash when it is destroyed. (#117579, reported by Morten
2285         Welinder, patch reviewed by Owen Taylor).
2286
2287 Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>
2288
2289         * gtk/gtkmenushell.h: 
2290         * gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function 
2291         to emit the "cancel" signal on a menu shell.
2292
2293         * gtk/gtkmenu.c (gtk_menu_key_press): 
2294         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu): 
2295         * gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the 
2296         new function instead of directly emitting the 
2297         signal.  (#81803, Owen Taylor)
2298
2299 Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>
2300
2301         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
2302         Fix the "language_set" blurb.  
2303         
2304 Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>
2305
2306         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
2307         all of treeview when resizing (#110074, patch from Soeren Sandmann).
2308
2309 Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>
2310
2311         Fixes #108458.
2312
2313         * gtk/gtkcelllayout.[ch]: added a reorder method.
2314
2315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
2316         (gtk_tree_view_column_cell_layout_reorder): implement reorder.
2317
2318         * gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
2319         (gtk_cell_view_cell_layout_reorder): ditto.
2320
2321         * gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
2322         (gtk_combo_box_cell_layout_reorder): ditto.
2323
2324         * gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
2325         (gtk_entry_completion_reorder): ditto.
2326
2327 Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>
2328
2329         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
2330         instead of strcmp (#117127, suggestion from Soeren Sandmann).
2331
2332 Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>
2333
2334         * gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
2335         here from gtk_menu_real_insert(),
2336         (gtk_menu_real_insert): just call gtk_menu_do_insert(),
2337         (gtk_menu_reorder_child): run _do_insert after inserting the child
2338         (unbreaks _reorder_child, reported by Tim Janik).
2339
2340 2003-12-19  Federico Mena Quintero  <federico@ximian.com>
2341
2342         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
2343         g_date_strftime() for UTF-8 correctness; use Julian dates to
2344         simplify the function.
2345
2346 Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>
2347
2348         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): 
2349         Test extra_width, not extra_height, when determining whether to
2350         set extra_width.  (#129647, Jan Arne Petersen)
2351
2352 Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>
2353
2354         Fix the behaviour of insensitive actions, which was broken
2355         when gtk_action_activate() was changed to pay attention to 
2356         sensitivity  (#129557, Christian Persch)
2357         
2358         * gtk/gtkaction.h: 
2359         * gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
2360         function to emit an activate signal without regard to sensitivity.
2361
2362         * gtk/gtkradioaction.c: 
2363         * gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
2364         instead of gtk_action_activate().
2365
2366 2003-12-18  Jody Goldberg <jody@gnome.org>
2367
2368         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
2369           to ensure that the base hicolor theme is installed.  Silently
2370           failing to produce icons that apps assume exist in the theme seems
2371           like a bad idea.
2372
2373 Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>
2374
2375         Fixes #110249, reworked patch from Joshua N Pritikin.
2376
2377         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
2378         (gtk_tree_model_sort_tree_drag_source_init),
2379         (gtk_tree_model_sort_row_draggable),
2380         (gtk_tree_model_sort_drag_data_get),
2381         (gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.
2382
2383         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
2384         (gtk_tree_model_filter_tree_drag_source_init),
2385         (gtk_tree_model_filter_row_draggable),
2386         (gtk_tree_model_filter_drag_data_get),
2387         (gtk_tree_model_filter_drag_data_delete): ditto.
2388
2389 Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>
2390
2391         * gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
2392         for "*" and "/" (expand/collapse all). (#110195, reported by
2393         Calum Benson).
2394
2395 Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>
2396
2397         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2398         clear the extra_attrs list if we set "text" after "markup".
2399         (Fixes #121933, Federico Mena Quintero).
2400
2401 2003-12-18  Alexander Larsson  <alexl@redhat.com>
2402
2403         * gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
2404         Fix typo that used the wrong x/y values for the x1, y1 point
2405         (#129605)
2406
2407 Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>
2408
2409         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
2410         (gtk_cell_renderer_text_finalize),
2411         (gtk_cell_renderer_text_get_property),
2412         (gtk_cell_renderer_text_set_property), (get_layout): added language
2413         and language_set properties like GtkTextTag has. (#103800, reported
2414         by Owen Taylor).
2415
2416 Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>
2417
2418         * gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
2419         * gtk/gtkbutton.c (gtk_button_class_init): Add docs for the 
2420         "activate" signal.  (#129358, Ka-Hing Cheung)
2421
2422 Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>
2423
2424         * gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
2425         the logical flag backwards in the expand_collapse_cursor_row
2426         bindings, fixing.
2427         (gtk_tree_view_real_expand_collapse_cursor_row): invert expand
2428         flag when !logical and in RTL. (Fixes #107527, reported by
2429         Noah Levitt).
2430
2431 Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>
2432
2433         * gtk/gtktreeview.c (gtk_tree_view_button_press): only start
2434         editing when activated by the left mouse button. (#106869,
2435         patch from Evan Martin).
2436
2437 Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>
2438
2439         Migrating all cell renderers to use the new instance private data
2440         construction.
2441
2442         * gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
2443         longer being used.
2444
2445         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
2446         (gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
2447         (set_cell_bg_color), (gtk_cell_renderer_render): remove old
2448         GtkCellRendererInfo handling, migrate to instance private data.
2449
2450         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
2451         (gtk_cell_renderer_text_start_editing): moved focus_out_id
2452         from GtkCellRendererInfo to text renderer private data.
2453
2454         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
2455         (gtk_cell_renderer_pixbuf_class_init),
2456         (gtk_cell_renderer_pixbuf_finalize),
2457         (gtk_cell_renderer_pixbuf_get_property),
2458         (gtk_cell_renderer_pixbuf_set_property),
2459         (gtk_cell_renderer_pixbuf_create_stock_pixbuf),
2460         (gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
2461         migrate to instance private data.
2462
2463         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
2464         (gtk_cell_renderer_toggle_get_property),
2465         (gtk_cell_renderer_toggle_set_property),
2466         (gtk_cell_renderer_toggle_render): migrate to instance private data.
2467
2468 Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>
2469
2470         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
2471         (gtk_cell_renderer_text_get_property),
2472         (gtk_cell_renderer_text_set_property), (get_layout): add a
2473         single-paragraph-mode property, use private instance data.
2474         (Fixes #114943, reported by Morten Welinder).
2475
2476 Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>
2477
2478         * gtk/gtktreemodel.h (gtk_tree_path_new_root),
2479         (gtk_tree_model_get_iter_root): now deprecated (#106953, reported
2480         by Matthias Clasen).
2481
2482 Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>
2483
2484         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
2485         if we set a new stock_id and there was a previous stock_id, unref
2486         the pixbuf (since it was used to renderer the previous stock_id
2487         and stock_id might have been set to NULL now). (Fixes #122966).
2488
2489 2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>
2490
2491         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):
2492
2493         Check that index is not bigger than level array length
2494         also when depth is 1. Now get_iter_first correctly return
2495         FALSE when the model is empty (#129411).
2496
2497 Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>
2498
2499         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
2500         try to strcmp or strlen if we managed to normalize and casefold
2501         the string correctly. Fixes crashes with non-UTF8 strings.
2502         (#121617, Patch from Tim-Philipp Müller).
2503
2504 Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>
2505
2506         * gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
2507         GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
2508         * gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c, 
2509         gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c, 
2510         gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
2511         GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko) 
2512
2513 Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>
2514
2515         * gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
2516         (#122727, patch from Kjartan Maraas).
2517
2518 Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>
2519
2520         Yay! Fixed height mode! Hooray! (Part 2 of #80868).
2521
2522         * gtk/gtktreeview.c (gtk_tree_view_class_init),
2523         (gtk_tree_view_init), (gtk_tree_view_set_property),
2524         (gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
2525         fixed_height_mode property,
2526         (intialize_fixed_height_mode), (do_validate_rows),
2527         (column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
2528         (gtk_tree_view_style_set), (gtk_tree_view_row_changed),
2529         (gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
2530         (gtk_tree_view_insert_column): implement fixed height mode,
2531         (gtk_tree_view_append_column), (gtk_tree_view_insert_column),
2532         (gtk_tree_view_insert_column_with_attributes),
2533         (gtk_tree_view_insert_column_with_data_func): update docs.
2534
2535         * gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
2536
2537 2003-12-07  Murray Cumming  <murrayc@usa.net>
2538  
2539         * gtk/gtktreemodel.c:
2540         (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
2541         Actually call the default signal handlers instead of calling the
2542         marshallers themselves in an endless loop. These default signal handler
2543         callbacks are not actually set so this is only noticed by gtkmm at
2544         the moment. Bug 123923.
2545
2546 2003-12-16  Federico Mena Quintero  <federico@ximian.com>
2547
2548         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
2549         "volumes-changed" signal.  Added the following methods:
2550                 list_volumes
2551                 volume_free
2552                 volume_get_base_path
2553                 volume_get_is_mounted
2554                 volume_mount
2555                 volume_get_display_name
2556                 volume_render_icon
2557
2558         * gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
2559         "volumes-changed" signal.
2560         (gtk_file_system_list_volumes): New function.
2561         (gtk_file_system_volume_free): New function.
2562         (gtk_file_system_volume_get_base_path): New function.
2563         (gtk_file_system_volume_get_is_mounted): New function.
2564         (gtk_file_system_volume_mount): New function.
2565         (gtk_file_system_volume_get_display_name): New function.
2566         (gtk_file_system_volume_render_icon): New function.
2567
2568         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
2569         (gtk_file_system_unix_volume_get_base_path): Implement.
2570         (gtk_file_system_unix_volume_get_is_mounted): Implement.
2571         (gtk_file_system_unix_volume_mount): Implement.
2572         (gtk_file_system_unix_volume_get_display_name): Implement.
2573         (gtk_file_system_unix_volume_render_icon): Implement.
2574
2575         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
2576         Added a field for the "volumes-changed" signal connection.
2577         (gtk_file_chooser_default_set_property): Connect to
2578         "volumes-changed" on the file system.
2579         (gtk_file_chooser_default_finalize): Disconnect from
2580         "volumes-changed".
2581
2582         * gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
2583         function.
2584         (shortcuts_get_index): New helper function.
2585         (shortcuts_insert_path): Can now insert volumes as well as paths.
2586         (shortcuts_append_paths): Don't take is_file_system_root.
2587         (shortcuts_add_volumes): New function.
2588         (shortcuts_append_file_system_roots): Removed.
2589         (create_shortcuts_model): Use shortcuts_add_volumes().
2590         (remove_bookmark_button_clicked_cb): Check that the index is
2591         within range.
2592         (bookmarks_check_add_sensitivity): Take volumes into account.
2593         (shortcuts_get_selected_index): New helper function.
2594         (remove_bookmark_button_clicked_cb): Use
2595         shortcuts_get_selected_index().
2596         (bookmarks_check_remove_sensitivity): Likewise.
2597         (shortcuts_select_func): Likewise.
2598         (shortcuts_row_activated_cb): Handle volumes as well as normal
2599         paths.
2600         (shortcuts_activate_volume): New function.
2601         (struct _GtkFileChooserDefault): Removed the bookmarks_set and
2602         bookmarks_iter fields.
2603         (shortcuts_append_bookmarks): Use shortcuts_remove_rows().
2604         (bookmarks_changed_cb): Use shortcuts_add_bookmarks().
2605         (remove_bookmark_rows): Removed.
2606         (shortcuts_add_bookmarks): New function; moved most of the code
2607         over from shortcuts_append_bookmarks().
2608         (shortcuts_append_bookmarks): Add the separator node here, and
2609         then call shortcuts_add_bookmarks().
2610
2611 Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>
2612
2613         * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
2614         (G_OS_UNIX/G_OS_WIN32 stuff)
2615
2616 Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>
2617
2618         Do not interpret distant clicks as double-clicks  (#116541,
2619         Bernhard Walle):
2620         
2621         * gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
2622         double_click_distance, button_x and button_y.
2623         * gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.
2624
2625         * gdk/gdkdisplay.h: 
2626         * gdk/gdkevents.c (gdk_display_set_double_click_distance): 
2627         New function to set the double click distance on a display.
2628
2629         * gdk/gdkevents.c: Take double click distance into account
2630         when generating single, double or triple clicks.
2631
2632         * gtk/gtksettings.c: Add new setting "gtk-double-click-distance".
2633
2634         * gdk/x11/gdkevents-x11.c: Add the XSetting 
2635         "Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
2636
2637 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
2638
2639         * gtk/gtkdialog.c: Sigh, revert the change.
2640
2641 2003-12-15  Federico Mena Quintero  <federico@ximian.com>
2642
2643         * gtk/gtkdialog.c (dialog_has_cancel): Removed.
2644         (gtk_dialog_close): Don't call dialog_has_cancel().  At least
2645         allows sane behavior for #101293.
2646
2647 Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>
2648
2649         * gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
2650         getter and setter gtk_button_[sg]et_alignment(), to set the
2651         alignment of the child.  (#70961, Jody Goldberg)
2652
2653 2003-12-14  Hans Breuer  <hans@breuer.org>
2654
2655         * gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
2656         similar as the other filesystem placement 'constants' (dynamic
2657         resolving on win32)
2658
2659         * gtk/gtkfilechooserwidget.c : handle file system to win32
2660         renaming here as will
2661         * gtk/gtkfilesystemwin32.c : implement render_icon
2662
2663         * gtk/gtk.def gdk/gdk.def : updated externals
2664
2665         * gdk/win32/gdkdisplay-win32.c : make it compile without
2666         <multimon.h> - i.e. even older sdk
2667
2668         * gdk/win32/gdkevents-win32.c : match resize_timer_proc
2669         with TIMERPROC prototype
2670
2671         * gdk/win32/gdkwindow-win32.c : older msvc does not know
2672         BITMAPV5HEADER (from win xp) either
2673
2674         * gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
2675         not defined
2676
2677         * tests/testfilechooser.c : recent GLib crashes on 
2678         g_print ("%s", NULL) so avoid this
2679
2680 2003-12-14  Tor Lillqvist  <tml@iki.fi>
2681
2682         * gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
2683         followed by calls to CloseClipboard(). Add a missing call to
2684         CloseClipboard(). Found by Adam Wright, fixes #104944. Use
2685         API_CALL macro in more places.
2686
2687 2003-12-14  Tor Lillqvist  <tml@iki.fi>
2688
2689         Merge from stable:
2690
2691         * gdk/gdkdisplaymanager.c: Mark default_display static.
2692
2693         * gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.
2694
2695         * gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
2696         output.
2697
2698         * gdk/win32/gdkevents-win32.c: Clean up the debugging output from
2699         --gdk-debug=events. In general, output just one line of debugging
2700         output for each Windows message, plus one line for each GDK event
2701         generated. Indent all lines according to window procedure nesting
2702         level.
2703
2704         (inner_window_procedure): Rename from real_window_procedure.
2705
2706         (find_real_window_for_grabbed_mouse_event): Don't get misled when
2707         the point is in the non-client (decoration) area of the window
2708         returned by WindowFromPoint(). Return the root window in that
2709         case.
2710
2711         (build_pointer_event_state): Test also MK_XBUTTON1 and
2712         MK_XBUTTON2 (buttons 4 and 5).
2713
2714         (synthesize_enter_event): Track the mouse leaving the window in
2715         the event being generated, not the one mentioned in the Windows
2716         message.
2717
2718         (propagate): Test for NULL parent earlier. Improves event
2719         generation from a grabbed pointer. Part of fix for #107320.
2720
2721         (handle_stuff_while_moving_or_resizing): New function, to
2722         dispatch the main loop (once).
2723
2724         (resize_timer_proc): New function, set to be called by an inerval
2725         timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().
2726
2727         (gdk_event_translate): Drop unused return_exposes parameter.
2728
2729         Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).
2730
2731         On WM_SYSKEYUP, generate a key release event also for just the Alt
2732         key.
2733
2734         On WM_MOUSELEAVE, generate a leave event of type
2735         GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
2736         top-level window, and left the app completely.
2737
2738         On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
2739         calls resize_timer_proc() at regular intervals. On
2740         WM_EXITSIZEMOVE, kill the timer.
2741
2742         On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
2743         and dispatch the main loop (by calling
2744         handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
2745         Herman Bloggs.
2746
2747         * gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
2748         also wintab messages.
2749
2750         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
2751         Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
2752         the window's owner. Fixes #118093, reported by Maxime Romano.
2753
2754 Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>
2755
2756         * gdk/win32/gdkwindow-win32.[ch]: Implement
2757         gdk_window_set_icon_list() for Win32, with support for big and
2758         small icons and support for alpha-channel icons under Windows
2759         XP. Replaces the previous implementation of gdk_window_set_icon().
2760         (#128762)
2761         
2762 Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>
2763
2764         * gdk/x11/gdkprivate-x11.h: 
2765         * gdk/x11/gdkx.h: 
2766         * gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type): 
2767         Rename from _gdk_x11_register_event_type(), added API docs.
2768         * gdk/x11/gdkinput-x11.c (_gdk_input_common_init): 
2769         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
2770         all callers.  (#121471, Bill Haneman)
2771
2772 Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>
2773
2774         * gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
2775         of gc is ignored.  (#101983, Sebastian Rittau)
2776
2777 Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>
2778
2779         A trick for a faster treeview, step 1. Patch to short circuit
2780         _build_tree(), inspired by Jonathan (#80868).
2781
2782         * gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
2783         flags by default,
2784         (gtk_tree_view_build_tree): don't even try to recurse when the
2785         model says that it is a list, remove flag unsetter,
2786         (gtk_tree_view_set_model): change flag setting logic.
2787
2788         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
2789         propagate whether or not the child model has _IS_LIST set.
2790
2791         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
2792         ditto.
2793
2794 Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>
2795
2796         * gtk/gtkrange.c (gtk_range_scroll): Undo the last change, 
2797         since it broke logical keynav. 
2798         * gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
2799         direction in inverted scrollbars here instead.
2800
2801 Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>
2802
2803         * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
2804         "gravity" for RTL mode in a better way: Keep the distance from 
2805         the upper end of the page to the upper bound constant. This also 
2806         fixes problems with the initial position of the viewport in RTL 
2807         mode.  (#129063)
2808         
2809 Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>
2810
2811         Combo box flipping support.
2812
2813         * gtk/gtkcombobox.c (gtk_combo_box_menu_position),
2814         (gtk_combo_box_size_allocate): support RTL flipping (#126518,
2815         patch from Matthias Clasen),
2816         (gtk_combo_box_popup): fix popup window alignment if there's a
2817         cell view frame visible (#126518, patch from Semion Chichelnitsky).
2818
2819         * gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
2820         (#128348, patch from Semion Chichelnitsky).
2821
2822 Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>
2823
2824         * examples/gtkdial/gtkdial.c:
2825         * examples/menu/menu.c:
2826         * examples/scribble-xinput/scribble-xinput.c:
2827         * examples/progressbar/progressbar.c:
2828         * docs/tutorial/gtk-tut.sgml: Remove deprecated functions
2829         in examples. (#129074, Olexiy Avramchenko)
2830         * examples/calendar/Makefile:
2831         * examples/rangewidgets/Makefile:
2832         * examples/menu/Makefile: Allow deprecated functions in
2833         examples which use deprecated widgets.
2834
2835 Fri Dec 12 00:43:16 2003  Matthias Clasen  <maclas@gmx.de>
2836
2837         * gdk/gdk.c (gdk_threads_set_lock_functions): 
2838         * gdk/x11/gdkspawn-x11.c: Add "Since: 2.4" to doc comments.
2839
2840 Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>
2841
2842         * gtk/gtkrange.c (gtk_range_scroll): Fix direction of 
2843         steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
2844
2845 Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>
2846
2847         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't 
2848         unnecessarily reserve space for arrows in RTL mode.  (#129075,
2849         Semion Chichelnitsky)
2850
2851 Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>
2852
2853         Changes to allow "no input" windows (#64613):
2854         
2855         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
2856         field accept_focus.
2857         
2858         * gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
2859         set it.
2860
2861         * gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
2862         and gtk_window_get_focus() and gtk_window_set_focus().
2863
2864         * gdk/win32/gdkwindow-win32.c (gdk_window_new): 
2865         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new): 
2866         * gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
2867         Initialize the accept_focus field to TRUE.
2868
2869         * gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus): 
2870         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus): 
2871         * gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus): 
2872         Implementations for the various backends. The Win32 and linux-fb
2873         implementations set the accept_focus field, but don't use it yet 
2874         to actually implement noinput windows. The X implementation updates
2875         the WM_HINTS to select the globally active input model (see the
2876         ICCCM) if accept_focus is FALSE.
2877
2878         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
2879         WM_TAKE_FOCUS message if accept_focus is FALSE.
2880         
2881 2003-12-10  Federico Mena Quintero  <federico@ximian.com>
2882
2883         * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
2884         Added toolbar items for the filter separator and the filter item.
2885         (toolbar_create): Add the filter widgets here.
2886         (filter_create): Renamed from create_filter().  Don't store the
2887         alignment in the impl structure, just return it.
2888         (toolbar_show_filters): New function.
2889         (gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
2890         (gtk_file_chooser_default_remove_filter): Likewise.
2891         (gtk_file_chooser_default_constructor): Don't create the filter
2892         widget here.
2893         (struct _GtkFileChooserDefault): Added a field for a current
2894         folder label.
2895         (gtk_file_chooser_default_constructor): Create the folder label.
2896         (gtk_file_chooser_default_set_current_folder): Set the current
2897         folder label.
2898
2899         * tests/testfilechooser.c (main): Dramatically improved the
2900         usability of the extra widget through careful word choice.
2901
2902 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2903
2904         * gdk/gdk.h: include gdkspawn.h.
2905
2906 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2907
2908         * gdk/linux-fb/gdkspawn-fb.c,
2909           gdk/win32/gdkspawn-win32.c,
2910           gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
2911         s/gdk_spawn/gdk_spawn_on_screen/.
2912
2913 2003-12-10  Mark McLoughlin  <mark@skynet.ie>
2914
2915         Utility functions for multi-screen applications which need
2916         to ensure launched applications appear on a certain screen.
2917         See bug #95897.
2918         
2919         * gdk/gdkspawn.h: header for multi-screen launching
2920         support.
2921         
2922         * gdk/Makefile.am: install gdkspawn.h.
2923         
2924         * gdk/x11/Makefile.am:
2925         * gdk/x11/gdkspawn-x11.c:
2926         (gdk_spawn_make_environment_for_screen): private function
2927         to create an environment vector with DISPLAY set appropriately
2928         for the screen.
2929         (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
2930         (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
2931         (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().
2932         
2933         * gdk/linux-fb/Makefile.am,
2934           gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.
2935         
2936         * gdk/win32/Makefile.am,
2937           gdk/win32/gdkspawn-win32.c: win32 impl.
2938
2939 2003-12-09  Federico Mena Quintero  <federico@ximian.com>
2940
2941         * gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
2942         rather than "Username's Home" (#125964).
2943         (shortcuts_selection_changed_cb): New callback, check the
2944         sensitivity of the Remove Bookmark button at the right time.
2945         (shortcuts_row_activated_cb): It is not necessary to check the
2946         sensitivity here.
2947
2948 Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>
2949
2950         Improve the GDK API for dealing with group leaders (#119375):
2951         
2952         * gdk/gdkwindow.h: 
2953         * gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to 
2954         get the group leader of a toplevel window as a GdkWindow.
2955
2956         * gdk/gdkdisplay.h: 
2957         * gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New 
2958         function to get the default group leader as a GdkWindow.
2959
2960         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
2961         the GdkWindow of the default group leader.
2962         
2963         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
2964         for the default group leader.
2965
2966 2003-12-09  Noah Levitt  <nlevitt@columbia.edu>
2967
2968         * gdk/gdkkeysyms.h:
2969         * gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
2970         Ukrainian_GHE_WITH_UPTURN. (#128529)
2971
2972 2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>
2973
2974         * gtk/gtkfilechooserdefault.c:
2975         (gtk_file_chooser_default_get_paths), (entry_activate): Use the
2976         behavior of the GtkFileSelection to determine selected paths in
2977         single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.
2978
2979 2003-12-08  Federico Mena Quintero  <federico@ximian.com>
2980
2981         * gtk/gtkfilechooserdefault.c
2982         (gtk_file_chooser_default_get_paths): Don't declare the closure
2983         struct twice.
2984         (get_paths_foreach): Likewise.
2985
2986 Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>
2987
2988         * gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g. 
2989
2990 2003-12-08  Tor Lillqvist  <tml@iki.fi>
2991
2992         * gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
2993         with MSVC and old headers. (#126933, John Ehresman)
2994
2995 Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>
2996          
2997         * === Released 2.3.1 ===
2998
2999         * NEWS: Updates for 2.3.1
3000
3001         * configure.in: Version 2.3.1, interface age 0, binary age 301.
3002
3003         * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
3004         Rename from gtk_menu_item_real_can_activate_accel() to
3005         match GTK+ convention, improve comment.
3006
3007         * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
3008         can ::can-activate-accel signal.
3009
3010         * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
3011         in comment.
3012
3013         * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean 
3014         up comment.
3015         
3016         * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
3017         into the .c file.
3018
3019 Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>
3020
3021         * gtk/gtkicontheme.c (find_builtin_icon): Fix a
3022         missing 'else'. (#128816, Jorn Baayen)
3023
3024 2003-12-02  Michael Meeks  <michael@ximian.com>
3025
3026         Based on a patch by Martin Kretzschmar; #122448
3027         
3028         * gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
3029         implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
3030         (GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
3031         function pointers. Deprecate the global gdk_threads_mutex variable.
3032         
3033         * gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
3034         extracted from GTK_THREADS_ENTER/LEAVE macros.
3035         (gdk_threads_init): init gtk_threads_[un]lock if not set.
3036         (gdk_threads_set_lock_functions): impl.
3037
3038         * gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
3039
3040 Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>
3041
3042         * gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
3043         icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
3044         Gonzalez)
3045
3046 2003-12-07  Tor Lillqvist  <tml@iki.fi>
3047
3048         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
3049         return value from SendMessage(WM_SETICON). That is the old
3050         icon. Fixes GDI resource leak. (#128559, Tim Evans)
3051
3052         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
3053         have a pointer grab active with a grab cursor set, destroy that
3054         cursor to avoid a GDI resource leak. (#128410, Tim Evans)
3055
3056 2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>
3057
3058         * configure.in: Added Thai (th) to ALL_LINGUAS.
3059
3060 Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>
3061
3062         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
3063         RTL flipping for GtkAlignment.  (#127585)
3064
3065 Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>
3066
3067         * gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the 
3068         popup window when in RTL mode.  (#127578)
3069
3070 Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>
3071
3072         * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
3073         Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
3074         before doing anything to prevent garbage returns.
3075
3076 Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>
3077
3078         * gtk/gtkviewport.c: Implement RTL flipping for 
3079         GtkViewport: Adjust the "gravity" when resizing
3080         This is a bit flickery in RTL mode.  (#107526)
3081
3082 Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>
3083
3084         * gtk/gtkscrolledwindow.c: Implement RTL flipping for 
3085         GtkScrolledWindow: the vertical scrollbar shows up on the left
3086         side in RTL mode.  (#107526)
3087
3088 Fri Dec  5 01:58:33 2003  Matthias Clasen  <maclas@gmx.de>
3089
3090         * gtk/gtknotebook.c: Implement RTL flipping for GtkNotebook:
3091         tabs displayed at the top/bottom are rearranged, and tabs on
3092         the left/right are displayed at the opposite edge.  (#96630)
3093
3094 2003-12-04  Mark McLoughlin  <mark@skynet.ie>
3095
3096         * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
3097         gtk_label_set_attributes() take NULL. See bug #128517.
3098
3099 2003-12-03  Federico Mena Quintero  <federico@ximian.com>
3100
3101         * gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
3102         the in_change flag.
3103         (completion_idle_callback): Use a temporary list store and re-set
3104         it on the completion rather than modifying the old one.  We are
3105         re-reading the folder anyway, and this gets rid of non-atomicity
3106         problems.
3107
3108 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
3109
3110         Decouple impl->current_folder from the selection in the folder
3111         tree.  This is so that going to /home/federico/.foo (e.g. from a
3112         bookmark) will work even if show_hidden == FALSE.  The folder tree
3113         needs to be fixed in this case to show such folders explicitly.
3114
3115         * gtk/gtkfilechooserdefault.c
3116         (gtk_file_chooser_default_set_current_folder): When changing
3117         folders, do the entry and list model work here, instead of
3118         tree_selection_changed().
3119         (struct _GtkFileChooserDefault): Added a changing_folder flag
3120         again, dum de dum.
3121         (tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
3122
3123 Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>
3124
3125         * gtk/gtkiconfactory.h: Remove duplicate declaration of 
3126         gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
3127
3128 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
3129
3130         Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
3131         bookmarks buttons with the location entry.
3132
3133         * gtk/gtkfilechooserdefault.c
3134         (gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
3135         bookmarks buttons and the location entry.
3136
3137 2003-12-01  Federico Mena Quintero  <federico@ximian.com>
3138
3139         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
3140         shortcuts tree as a drag destination.
3141         (shortcuts_drag_data_received_cb): New callback.
3142         (get_file_info): Also fetch information on whether the file is a folder.
3143         (add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
3144         (error_could_not_add_bookmark_dialog): New function.
3145         (shortcuts_add_bookmark_from_path): New helper function.
3146         (add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
3147         (shortcuts_row_activated): We no longer need the changing_folder flag.
3148         (struct _GtkFileChooserDefault): Likewise.
3149
3150 Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3151
3152         * gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
3153         disappearing placeholders that are still visible.
3154
3155         * gtk/gtktoolbar.c: formatting fixes
3156
3157         * gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
3158         disappearing, for placeholders that are going to disappear.
3159
3160         * gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
3161
3162 Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>
3163
3164         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): 
3165         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
3166         Patch from <chinen@jp.ibm.com> to handle RTL support for column
3167         resizers, #127874
3168
3169 Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>
3170
3171         * gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): 
3172         Don't use freed memory.  (#127698, Taavi Talvik) 
3173
3174 Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>
3175
3176         * gtk/gtkfilechooserentry.c: Remove debug g_print()s. 
3177
3178 Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>
3179
3180         * gtk/gtkuimanager.c: Remove debug define.
3181
3182 Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>
3183
3184         * gtk/gtkmenu.c: allow accel activation depending on sensitivity
3185         and the attach widget.
3186
3187         * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
3188         sensitivity and the parent menu.
3189
3190         * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
3191         checks whether accelerators may activate a widget. the default handler
3192         demands the widget be sensitive and visible+viewable.
3193
3194         * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
3195
3196 Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>
3197
3198         * gtk/gtkuimanager.c (update_node): Don't show accelerators in
3199         popup menus.  (#127227)
3200
3201 Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>
3202
3203         * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
3204
3205 Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3206
3207         * gtk/gtkradiotoolbutton.[ch]
3208         (gtk_radio_tool_button_new_from_widget): Make this function take a
3209         GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
3210         Cumming)
3211
3212 Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3213
3214         * gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
3215
3216 Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3217
3218         * gtk/gtktoolbar.c: remove variable
3219         n_overflowed_menu_items_when_dnd_started
3220
3221 Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3222
3223         Rework sliding algorithm.
3224         - No more weird jumping when items are dragged off and added to
3225         the toolbar,
3226         - More natural item movement
3227
3228         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
3229         function is now responsible for calculating intermediate positions
3230         during item sliding. It is also responsible for starting sliding
3231         if items disappear.  Also turn off expanding when there is an
3232         overflow menu.
3233         (gtk_toolbar_begin_sliding, stop_sliding): New functions.
3234         (slide_idle_handler): New function. All the sliding is now done by
3235         gtk_toolbar_size_allocate(), so the idle handler now just checks
3236         if there is more sliding to be done.
3237         (compute_intermediate_allocation, position): new functions
3238         calculating intermediate steps in the slide animations. The new
3239         animation algorithm uses a constant speed instead of a constant
3240         must-be-finished-within time.
3241         (struct _ToolbarContent): use 
3242         GtkAllocation goal_allocation; and 
3243         GtkAllocation start_allocation; instead of 
3244         gint start/goal_width;
3245
3246         * gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
3247         documentation
3248
3249 Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>
3250
3251         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip 
3252         positioning Xinerama-aware.  (#127332)
3253
3254 Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>
3255
3256         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
3257         boundaries visible in fake Xinerama mode.
3258
3259 Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>
3260
3261         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
3262         for the gtk_widget_hide() call.
3263
3264 Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>
3265
3266         * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
3267         from David Hampton to fix sorting on booleans.
3268
3269 Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3270
3271         * gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
3272         instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
3273         by Frederic Crozat).
3274
3275 Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>
3276
3277         * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
3278
3279 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
3280
3281         Fixes to problems reported by Iain Holmes:
3282
3283         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
3284         throw up an error dialog if the desktop doesn't exist.
3285         (error_message): Handle the case where there is no real toplevel
3286
3287         yet.
3288         (list_model_filter_func): Always let folders pass through (patch
3289         by Dave Malcolm).
3290
3291 Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>
3292
3293         * gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
3294         to a somewhat more logical place,
3295         (gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
3296
3297 Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>
3298
3299         * gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
3300         the popup when it is visible, popdown when there are less chars
3301         than the minimum key length in the entry,
3302         (gtk_entry_completion_changed): popdown when the entry is empty.
3303
3304         * gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
3305         size request of the vscrollbar to (-1, 0), to get a nicely sized
3306         completion treeview (Fixes #126573, reported by Piers Cornwell),
3307         (_gtk_entry_completion_resize_popup): show/hide the action_view
3308         based on items.
3309
3310 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
3311
3312         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
3313         off the dialog's separator (thanks to Iain Holmes).
3314
3315 Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3316
3317         * gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
3318         * gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
3319         on items that have a submenu. (#120104).
3320
3321 Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3322
3323         * gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
3324         "ItemState" field indicating the overflowed-ness etc. of the item.
3325         (gtk_toolbar_size_allocate): update the field here.
3326
3327 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
3328
3329         * gtk/gtkfilechooserdefault.c (create_filter): Don't add padding
3330         to the alignment.  Use the HIG-specified spacing between the
3331         filter label and the combo.
3332         (create_filename_entry): Use HIG-specified spacing between the
3333         location label and the entry.
3334         (gtk_file_chooser_default_constructor): Don't use vertical padding
3335         around the filename entry.
3336
3337 2003-11-19  Federico Mena Quintero  <federico@ximian.com>
3338
3339         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
3340         render_icon virtual method.
3341
3342         * gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.
3343
3344         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
3345         Implement as a stub for now.
3346
3347         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
3348         gtk_file_system_render_icon().
3349         (list_icon_data_func): Likewise.
3350         (toolbar_create): Set the toolbar style to icons only.
3351
3352         * gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
3353         Fix doc comments.
3354
3355 Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>
3356
3357         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call 
3358         gtk_widget_hide(menu) when reattaching the menu.  (#126057) 
3359
3360 Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>
3361
3362         * gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
3363         only unselect all items if the treeview has focus. (Fixes bug
3364         reported by Marco Pesenti Gritti).
3365
3366 Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>
3367
3368         * gtk/gtkentry.c (gtk_entry_completion_key_press): the total
3369         number of actions is "matches + actions - 1". (Fixes #126572).
3370
3371 Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>
3372
3373         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
3374         mem leaks (#119435).
3375
3376 Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>
3377
3378         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
3379         try to fetch the child back, since we do know that it is already
3380         gone by now (#126493, Marco Pesenti Gritti).
3381
3382 Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>
3383
3384         Fixes based on comments from Owen Taylor, #125264.
3385
3386         * gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
3387         variable,
3388         (gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
3389         a resize,
3390         (gtk_cell_view_get_size_of_row): new function,
3391         (gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
3392         (gtk_cell_view_set_values), (gtk_cell_view_set_model),
3393         (gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
3394         s/cellview/cell_view/ in the function definitions, so they match
3395         with the header file.
3396
3397         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
3398         flag again (:, and use gtk_cell_view_get_size_of_row instead of
3399         the measurer, remove _set_size_request call,
3400         (gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
3401         instead of the measurer,
3402         (gtk_combo_box_style_set): queue a resize,
3403         (gtk_combo_box_size_request): update of _remeasure call,
3404         (gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
3405         (gtk_combo_box_cell_layout_pack_end),
3406         (gtk_combo_box_cell_layout_clear),
3407         (gtk_combo_box_set_model): get rid of the measurer,
3408         (gtk_combo_box_cell_layout_add_attribute),
3409         (gtk_combo_box_cell_layout_set_cell_data_func),
3410         (gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
3411         resize instead of calling _remeasure.
3412
3413 Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>
3414
3415         * gdk-pixbuf/Makefile.am
3416         * modules/input/Makefile.am: Use install-data-hook for
3417         gdk-pixbuf.loaders and gtk.immodules install generation targets.
3418         Fixes #112806.
3419
3420         * gtk/gtkexpander.h: Apply missing declarations from #124449.
3421
3422 Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>
3423
3424         Fix for #119555, Peter Zelezny:
3425         
3426         * gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
3427         * gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
3428         by removing the _ prefix. 
3429         * gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c, 
3430         gdk/gdkwindow.c: Adjust all callers.
3431
3432 Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>
3433
3434         * gtk/gtkaction.c (gtk_action_activate): Only activate if 
3435         the action is sensitive.  (#127187, Christian Persch)
3436
3437 Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>
3438
3439         * gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
3440
3441 Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>
3442
3443         * gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.
3444
3445         * gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
3446         mapped, else resize_popup.
3447
3448         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
3449         (_gtk_entry_completion_popup): moved all popup resizing code to
3450         _gtk_entry_completion_resize_popup, and show the window when there
3451         are more than zero items in the completion list again (sigh).
3452
3453 2003-11-17  Mark McLoughlin  <mark@skynet.ie>
3454
3455         Patch from Jaiserca <jaiserca@inf.upv.es> to add a
3456         "use_markup" property. See bug #124449.
3457
3458         * gtk/gtkexpander.c:
3459         (gtk_expander_class_init),
3460         (gtk_expander_init), (gtk_expander_set_property),
3461         (gtk_expander_get_property), (gtk_expander_set_label),
3462         (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
3463         Add a "use_markup" property and use it when creating the
3464         child label.
3465
3466 Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>
3467
3468         Temporary size requisition fix. Will fix it for real tonight.
3469
3470         * gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
3471         (gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
3472         a good width for the child,
3473         (gtk_combo_box_cell_layout_add_attribute),
3474         (gtk_combo_box_set_cell_data_func),
3475         (gtk_combo_box_cell_layout_clear_attributes): update.
3476
3477 Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>
3478
3479         Fixes #124373, Murray Cumming.
3480
3481         * gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
3482         is no longer construct only,
3483         (gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
3484         (gtk_combo_box_menu_fill): new functions,
3485         (gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
3486         (gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
3487         (gtk_combo_box_list_destroy): updated,
3488         (gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
3489         functions,
3490         (gtk_combo_box_set_model): is now public, updated,
3491         (gtk_combo_box_get_model): small update.
3492
3493         * gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
3494         text_column property is no longer construct only,
3495         (gtk_combo_box_entry_set_text_column): now public,
3496         (gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
3497         new/changed functions.
3498
3499         * tests/testcombo.c: updated.
3500
3501 Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>
3502
3503         Reinstate fixes for (#124212, Marco Pesenti Gritti):
3504         
3505         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
3506         warnings for popups.
3507         (_gtk_menu_is_empty): Return FALSE for non-menus.
3508
3509 Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>
3510
3511         * gtk/gtkcellview.c (gtk_cell_view_finalize): just call
3512         gtk_cell_view_cell_layout_clear instead of trying to free the
3513         structure ourselves here. (#125726, Morten Welinder).
3514
3515 Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>
3516
3517         * gtk/gtkfilechooser.[hc]: 
3518         * gtk/gtkentrycompletion.h: Fix parameter name mismatches which
3519         confuse gtk-doc.
3520
3521 2003-11-15  Hans Breuer  <hans@breuer.org>
3522
3523         * gdk/makefile.msc gdk/gdk.def 
3524             gtk/gtk.def gtk/makefile.msc.in : updated
3525         * tests/makefile.msc : added all the new tests
3526
3527         * gtk/gtkfilefilter.c(finalize) : initialize filter
3528         from object not from itself
3529
3530         * gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
3531         modified as less as posible to have aworking implementation
3532         on win32. There maybe the desire to merge the unchanged pats into
3533         a common base class.
3534         Also implemented a simple glib based bookmark handling, which
3535         is currently missing in gtkfilesystemunix.[hc] but can be copied
3536         over there.
3537         * gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h
3538
3539         * gdk/win32/gdkwindow-win32.c : implement 
3540         gdk_window_set_keep_above() and gdk_window_set_keep_below()
3541
3542         * tests/testmerge.c : don't include unistd.h unconditionally,
3543         #define STDOUT_FILENO if it isn't defined
3544
3545         * tests/testfilechooser.c : make it compile on win32
3546
3547 2003-11-15  Tor Lillqvist  <tml@iki.fi>
3548
3549         * gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
3550         maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
3551
3552 Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>
3553
3554         * docs/faq/gtk-faq.sgml: Update the rest of Section 2
3555
3556 Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>
3557
3558         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use 
3559         GTK_DATADIR/{icons,pixmaps} instead of 
3560         GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
3561
3562 Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>
3563
3564         Changes to improve menu positioning on Xinerama (#108328, #126150):
3565         
3566         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event 
3567         window of the menuitem to determine the monitor. This fixes some
3568
3569         * gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
3570         to store the monitor on which the menu is to be positioned.
3571
3572         * gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
3573         in the GtkMenuPrivate struct and fetch the monitor geometry after
3574         calling the position_func, in case it has been changed.
3575
3576         * gtk/gtkmenu.c (gtk_menu_set_monitor): New function 
3577         to be used in GtkMenuPositionFunc implementations for setting
3578         the monitor_num field in GtkMenuPrivate.
3579
3580         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call 
3581         gtk_menu_set_monitor.
3582
3583 Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>
3584
3585         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
3586         label for the empty list. String change.  (#95446, Tomas Ã–gren)
3587
3588 Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>
3589
3590         * gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
3591         the definition of the values.  (#123361, Marco Pesenti Gritti)
3592
3593 Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>
3594
3595         * gdk/gdkkeyuni.c: Map KP_Separator to ','.
3596         (#122941, Egmont Koblinger)
3597
3598 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
3599
3600         *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
3601         opacity entry widget. Change tooltip for opacity widgets. (#126426)
3602
3603 2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>
3604
3605         * gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
3606         affect window menu position when popped from keyboard. (#102660)
3607
3608 Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3609
3610         * gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
3611         are using the old API, make all items "is_important". That way
3612         BOTH_HORIZ will continue to show both icon and label in old API
3613         mode.
3614
3615 Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>
3616
3617         * gtk/gtkeventbox.c (gtk_event_box_set_above_child): 
3618         Remember the new value in all cases.  (#126276, Damon Chaplin)
3619
3620 Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>
3621
3622         * demos/gtk-demo/main.c (row_activated_cb): Call the do_
3623         functions with the toplevel as argument.
3624
3625         * demos/gtk-demo/geninclude.pl.in: Change the signature
3626         of GDoDemoFunc to take a widget argument
3627
3628         * demos/gtk-demo/ui_manager.c (do_ui_manager): 
3629         * demos/gtk-demo/tree_store.c (do_tree_store): 
3630         * demos/gtk-demo/textview.c (do_textview): 
3631         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
3632         * demos/gtk-demo/sizegroup.c (do_sizegroup): 
3633         * demos/gtk-demo/pixbufs.c (do_pixbufs): 
3634         * demos/gtk-demo/panes.c (do_panes): 
3635         * demos/gtk-demo/menus.c (do_menus): 
3636         * demos/gtk-demo/list_store.c (do_list_store): 
3637         * demos/gtk-demo/images.c (do_images): 
3638         * demos/gtk-demo/hypertext.c (do_hypertext): 
3639         * demos/gtk-demo/editable_cells.c (do_editable_cells): 
3640         * demos/gtk-demo/drawingarea.c (do_drawingarea): 
3641         * demos/gtk-demo/dialog.c (do_dialog): 
3642         * demos/gtk-demo/colorsel.c (do_colorsel): 
3643         * demos/gtk-demo/changedisplay.c (do_changedisplay): 
3644         * demos/gtk-demo/button_box.c (do_button_box): 
3645         * demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
3646         as argument, and make new windows or dialogs appear on the
3647         same screen.  (#80388)
3648
3649 Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>
3650
3651         * gtk/gtkeventbox.c (gtk_event_box_class_init): Let 
3652         visible-window default to TRUE, as documented and 
3653         implemented. (#126270 Damon Chaplin)
3654
3655 Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>
3656
3657         * gtk/gtkicontheme.c: 
3658         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): 
3659         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): 
3660         * gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
3661         2.4 additions.
3662
3663 2003-11-07  Federico Mena Quintero  <federico@ximian.com>
3664
3665         Changing GtkFileChooserEntry to use GtkEntryCompletion.
3666
3667         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
3668         a GtkListStore for the completion list.  Create a
3669         GtkEntryCompletion and attach it to the chooser entry.
3670         (gtk_file_chooser_entry_finalize): Unref the completion store.
3671         (completion_match_func): New callback for the GtkEntryCompletion.
3672         (completion_idle_callback): Fill the completion store with filenames.
3673
3674 Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>
3675
3676         * gtk/gtkwindow.c (gtk_window_set_role): 
3677         * gtk/gtkwindow.c (gtk_window_set_title): 
3678         * gtk/gtkwidget.c (gtk_widget_set_name): 
3679         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title): 
3680         * gtk/gtkbutton.c (gtk_button_set_label): Make string setters
3681         safe for self-assignment.  (#122745, Soeren Sandmann)
3682
3683 Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>
3684
3685         * gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
3686         (#126369, Olexiy Avramchenko)
3687
3688 Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>
3689
3690         * gtk/gtkcolorbutton.c (gtk_color_button_init): 
3691         * gtk/gtkfontbutton.c (gtk_font_button_init): Improve the 
3692         consistency of titles.  (#126193, Damon Chaplin)
3693
3694 Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>
3695
3696         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off 
3697         menus to be transient for the toplevel they were torn off from.
3698         (gtk_menu_get_toplevel): Auxiliary function to find the
3699         toplevel of a menu.  (#54775, Jon-Kare Hellan)
3700
3701 Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>
3702
3703         * gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
3704         min-position and max-position.  (#58431, Padraig O'Briain)
3705
3706 Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>
3707
3708         * gtk/gtkcolorsel.c (update_color): 
3709         (make_label_spinbutton): 
3710         (adjustment_changed): Change the ranges for Saturation and
3711         Value to be 0-100 instead of 0-255, since these axes of HSV
3712         are usually expressed in percent.  (#121519, Gregory Merchan)
3713
3714 Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>
3715
3716         * docs/faq/gtk-faq.sgml: More 2.x updates
3717
3718 Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>
3719
3720         * docs/faq/gtk-faq.sgml: More 2.x updates, fix
3721         pkg-config command error, update copyright.
3722
3723 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3724
3725         * gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
3726         well.  Use a helper function.
3727         (shortcuts_append_home): Display an error box if necessary.
3728         (shortcuts_append_desktop): Likewise.
3729         (add_bookmark_button_clicked_cb): Likewise.
3730         (gtk_file_chooser_default_select_path): Likewise.
3731         (entry_activate): Likewise.
3732         (shortcuts_append_paths): New helper function.
3733         (shortcuts_append_file_system_roots): Use
3734         shortcuts_append_paths().
3735         (shortcuts_append_bookmarks): Likewise.
3736
3737 Mon Nov  3 23:12:41 2003  Matthias Clasen  <maclas@gmx.de>
3738
3739         * gtk/gtkuimanager.c (_gtk_menu_is_empty): Return TRUE if 
3740         menu is NULL.
3741         (update_smart_separators): Remove some unneeded ifs.
3742
3743 Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>
3744
3745         * gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
3746         these usable in C++. Forgot this file in my Oct 11 commit.
3747
3748 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3749
3750         * gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
3751         icon to the "Add bookmark" button.
3752
3753         * gtk/gtkfilesystemunix.c: Mark missing strings for translation.
3754         * gtk/gtkfilesystemmodel.c: Likewise.
3755         * gtk/gtkfilechooser.c: Likewise.
3756         * gtk/gtkfilechooserdefault.c: Likewise.
3757
3758 Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
3759
3760         * gdk/gdk.c: 
3761         * gdk/gdkinternals.h: 
3762         * gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
3763         GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
3764         Xinerama mode when no actual Xinerama setup is found. 
3765
3766 2003-11-03  Federico Mena Quintero  <federico@ximian.com>
3767
3768         * gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
3769         (create_shortcuts_tree): Don't call the above.
3770         (bookmarks_changed_cb): Likewise.
3771         (tree_selection_changed): Unselect everything from the shortcuts
3772         list.  This is the behavior that Mac OS has.
3773         (toolbar_add_item): Return the item.
3774         (toolbar_create): Store the up_button in the impl structure.
3775         (toolbar_check_sensitivity): New function to set the sensitivity
3776         of the "Up" button in the toolbar.
3777         (tree_selection_changed): Call toolbar_check_sensitivity().
3778
3779 2003-11-02  Federico Mena Quintero  <federico@ximian.com>
3780
3781         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
3782         not set a border width for the toplevel container.
3783         (toolbar_create): New function; create a simple toolbar for the
3784         file chooser.
3785         (gtk_file_chooser_default_constructor): Use a spacing of 12 for
3786         the table, as per the HIG.
3787         (gtk_file_chooser_default_init): Likewise, for the default
3788         implementation's vbox.
3789
3790         * gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
3791         note that NULL is a valid return value for the parent path.
3792
3793 Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>
3794
3795         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated): 
3796         Change on activation, not selection change (temporary
3797         workaround for #125955, needed for keynav, likely
3798         the right UI anyways.)
3799
3800         * gtk/gtkfilechooserdefault.c (shortcuts_select_func): 
3801         Don't allow the separator node to be selected.
3802
3803         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
3804         Set the focus chain so that the entry gets focused first.
3805         (Not really right after initial focusing, maybe we
3806         should just have a gtk_file_chooser_focus_entry() that
3807         we call from gtk_file_chooser_dialog on creation.)
3808
3809 Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>
3810
3811         * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
3812         residual call to gtk_window_get_private().
3813
3814 Sat Nov  1 09:10:13 2003  Owen Taylor  <otaylor@redhat.com>
3815
3816         * gtk/gtkwindow.[ch]: Move above_initially, below_initially
3817         into GtkWindowPrivate structure, fixing ABI breakage
3818         on Win32. (Hans Breuer). Switch GtkWindowPrivate over
3819         to instance-private-data.
3820
3821 Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3822
3823         * gtk/gtktoolbar.c (get_item_requisition): delete this function
3824         (toolbar_item_is_homogeneous): cache max_homogeneous_pixels
3825         instead of re-calculating for each item.
3826         (gtk_toolbar_size_allocate): Update comments
3827
3828 Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3829
3830         * gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
3831         placeholders when include_internals is TRUE.
3832
3833 Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3834
3835         * gtk/gtktoolbar.c (logical_to_physical): Make it work even when
3836         item 0 is a placeholder. (#125826)
3837         * tests/testtoolbar.c: add an assertion that 
3838         gtk_toolbar_get_nth_item (0) != NULL
3839
3840 Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3841
3842         * gtk/gtktoolbar.c (logical_to_physical): Make it work for
3843         logical == 0.(#125826)
3844
3845 Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3846
3847         * gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
3848         return the index of a real item.
3849         (get_nth_item) assert that the returned items is not a
3850         placeholder.  (#125826, Marco Pesenti Gritti).
3851         
3852 2003-10-29  Federico Mena Quintero  <federico@ximian.com>
3853
3854         * gtk/gtkcellrendererseptext.c
3855         (gtk_cell_renderer_sep_text_render): Only paint a separator if the
3856         text is NULL, rather than also doing it if it is an empty string.
3857
3858 Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>
3859
3860         * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
3861         gtk_message_dialog_new_with_format): Allow NULL
3862         for message_format, as described in the docs and
3863         as worked previously. (#125759, Richard Hult)
3864
3865         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
3866         Use g_markup_vprintf_escaped() to escape arguments.
3867
3868         * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
3869         so there is some way to set literal markup.
3870
3871 Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>
3872  
3873         * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
3874         the call to gdk_error_trap_pop() to the right place,
3875         fixing a problem where we'd pop() too many times 
3876         when bailing out. (#123302, Thomas Leonard)
3877         
3878 Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>
3879
3880         * gtk/gtkfilechooserutils.c (delegate_set_current_folder): 
3881         Fix infinite recursion. (#125679, Christian Persch)
3882
3883 Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>
3884
3885         * docs/faq/gtk-faq.sgml: further 2.x updates:
3886         mirrors,compiling,g_main_context_iteration
3887
3888 Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3889
3890         * gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
3891         function; remove gtk_toolbar_highlight_drop_location() and
3892         gtk_toolbar_unhighlight_drop_location().
3893
3894         Also fix bug where the number of overflowed items were miscounted.
3895
3896 Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>
3897
3898         * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
3899         some accidentally committed duplicate code.
3900
3901 Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>
3902
3903         * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
3904
3905 Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>
3906
3907         * gtk/gtkwindow.[ch] (gtk_window_is_active, 
3908         gtk_has_toplevel_focus): Add getters corresponding to
3909         the is_active and has_toplevel_focus properties.
3910         (#122531)
3911
3912 2003-10-28  Mark McLoughlin  <mark@skynet.ie>
3913
3914         * gtk/gtkexpander.c:
3915         (gtk_expander_class_init): hook up the destroy handler.
3916         (gtk_expander_destroy), (gtk_expander_unrealize):
3917         remove the expand/collapse timeout on destroy instead
3918         of unrealize to avoid leaving the expander in a inconsistent
3919         state when unrealizing during animation.
3920         (gtk_expander_start_animation): remove realized check.
3921         (gtk_expander_set_expanded): if the widget isn't realized,
3922         expand immediately.
3923
3924 Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>
3925
3926         * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
3927         do nothing when recipient is NULL, as described in the
3928         doc comment. (#123107, Thomas Leonard)
3929
3930 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
3931
3932         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
3933         rewrite docs, mention memory management for the return
3934         value. (Partly addresses #125549, Michael Natterer)
3935
3936 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
3937
3938         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
3939         Change index to filter_index to fix compilation error.
3940
3941         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
3942
3943 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
3944
3945         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
3946         we have RandR support, for XRRUpdateConfiguration declaration.
3947
3948         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
3949         declaration.
3950
3951         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
3952         length a gsize variable, since that's what g_file_get_contents()
3953         expects.
3954
3955 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
3956
3957         * NEWS: Fix attribution for above/below EWMH work.
3958
3959 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
3960
3961         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
3962         as a construct-only property.  (#125475, Murray Cumming)
3963
3964 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3965
3966         Fix bug 116297 and 125472
3967         
3968         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
3969         this function take an index and a GtkToolItem.
3970
3971         * tests/testtoolbar.c (main): Make "Show Arrow" default to
3972         true. Make one of the separators !draw and expand.
3973         Update for new highlight_drop_location() API.
3974
3975         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
3976
3977         * gtk/gtktoolbar.h: Formatting fixes.
3978
3979         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
3980         separator tool items to expand.
3981         (logical_to_physical, physical_to_logical): Fix off-by-one errors
3982         (Fix #125472, Marco Pesenti Gritti)
3983
3984         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
3985         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
3986         return FALSE, not TRUE.
3987         (gtk_separator_too_item_{set|get}_property,
3988         (gtk_separator_tool_item_{set|get}_draw): new functions
3989
3990 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
3991
3992         * === Released 2.3.0 ===
3993
3994         * configure.in: Remove a stray comma.
3995
3996         * README.in: Fix a few notes about Xft 1 and pango-1.0.
3997
3998         * NEWS: Finish updates for 2.3.0.
3999
4000         * po/Makefile.in.in: Update to latest GLib version.
4001
4002 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
4003
4004         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
4005         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
4006         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
4007         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
4008         Sandmann).
4009
4010 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
4011
4012         * gtk/gtktreemodelfilter.h: add padding to the class structure.
4013
4014 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
4015
4016         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
4017         (gtk_file_chooser_remove_filter): Likewise.
4018         (gtk_file_chooser_select_all): Added docs.
4019         (gtk_file_chooser_unselect_all): Likewise.
4020
4021         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
4022
4023         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
4024
4025 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
4026
4027         * gtk/gtkfilefilter.c: 
4028         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
4029
4030 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
4031
4032         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
4033
4034 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
4035
4036         * NEWS: Remove a few duplicates, group the menu changes.
4037
4038 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
4039
4040         * NEWS: Updates for 2.3.0; changed header to match the style we used
4041         for 2.1.0.
4042
4043 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
4044
4045         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
4046         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
4047
4048 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
4049
4050         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
4051         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
4052         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
4053
4054 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4055
4056         * NEWS: Partial update for 2.3.0.
4057
4058 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
4059
4060         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
4061         GtkComboBox.
4062
4063 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
4064
4065         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
4066         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
4067         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
4068         Basic framework for the new file selector widget.
4069
4070         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
4071         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
4072         Initial implementation of the GtkFileChooser user interface.
4073
4074         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
4075         for Unix files.
4076
4077         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
4078         for freedesktop.org MIME system on Unix.
4079
4080         * tests/testfilechooser.c: Test program for GtkFileChooser
4081
4082         * tests/prop-editor.c: Add support for properties on interfaces.
4083
4084 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
4085
4086         * demos/gtk-demo/menus.c (do_menus): Fix some unused
4087         variables.
4088
4089         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
4090         variable warning.
4091
4092 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
4093
4094         * NEWS: Partial update for 2.3.0.
4095
4096 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
4097
4098         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
4099         ctrl_pressed and shift_pressed according to the current event
4100         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
4101
4102 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
4103
4104         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
4105         timeout when the user pressed on Enter/ESC. Fixes the bug where the
4106         completion popup popped up after the user pressed on Enter (which is
4107         just weird). Reported by the Epiphany people (all of them).
4108
4109 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4110
4111         Add support for OS X like sliding of toolbar items during drag and
4112         drop, (#110919, Dave Bordoley)
4113
4114         Make dnd highlighting the responsibility of the
4115         application. (Fixes #116298, Owen Taylor)
4116
4117         * gtk/gtktoolbar.h: Add prototypes for new API.
4118         
4119         * gtk/gtktoolbar.c
4120         (physical_to_logical, logical_to_physical): new functions
4121         converting between "position including placeholders" and "position
4122         excluding placeholders".
4123         (gtk_toolbar_class_init): remove drag_leave and drag_motion
4124         handlers
4125         (struct _ToolbarContent): new struct containing information
4126         related to toolbar items.
4127         (gtk_toolbar_highlight_drop_location): new public function
4128         (gtk_toolbar_unhighlight_drop_location): new public function
4129         
4130         * tests/testtoolbar.c
4131         (toolbar_drag_motion, toolbar_drag_leave): new functions
4132         (main): connect to dnd signals.  Make the "New" item expand to
4133         make drag and drop more exciting.
4134
4135 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
4136
4137         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
4138         _set_active, not _set_active_item.
4139
4140 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
4141
4142         * gtk/gtkcombobox.h: add padding to the class structure.
4143         * gtk/gtkcomboboxentry.h: ditto.
4144         * gtk/gtkentrycompletion.h: ditto.
4145
4146 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
4147
4148         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
4149         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
4150         value and what it means.
4151
4152         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
4153         item to -1 (default),
4154         (gtk_combo_box_entry_active_changed): do nothing when the index is
4155         < 0.
4156
4157 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
4158
4159         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
4160         to set the active row by iter.
4161
4162         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
4163         to get the active row by iter.
4164
4165 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
4166
4167         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
4168         operations on windows if the tree view is not mapped.
4169         (gtk_tree_view_button_press): Compare equal types of pointers, not
4170         GtkWidget* vs. GtkTreeView*.
4171
4172 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
4173
4174         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
4175         the reset of first_sel_changed, as after the first popup the treeview
4176         will always have a row selected and will thus not focus_to_cursor.
4177
4178         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
4179         whether the keyval should move the completion selection cursor (used
4180         to avoid ending up with extreme cluttered code), also added
4181         all KP_ equivalents of the keys here,
4182         (gtk_entry_completion_key_press): Keynav tweaks based on comments
4183         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
4184         as possible current selection, implement Home/End keys, modified
4185         the down key to stop cycling. Maybe page up/down should be implemented
4186         at some later time.
4187
4188 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
4189
4190         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
4191         as documented when pixmap or mask is NULL.  (#124081) 
4192
4193 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
4194
4195         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
4196         I was adding the signal block/unblock code. Oops. (Noticed by
4197         Marco Pesenti Gritti).
4198
4199 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
4200
4201         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
4202         (set_interp_type), (main): port over from option menu to GtkComboBox.
4203
4204 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
4205
4206         * tests/testmenus.c: Still uses option menus, so turn off
4207         GTK_DISABLE_DEPRECATED.
4208
4209 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
4210
4211         * gtk/gtkalignment.[hc]: 
4212         * gtk/gtkcombobox.[hc]: 
4213         * gtk/gtkcomboboxentry.[hc]: 
4214         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
4215         from header to implementation.
4216
4217 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
4218
4219         * tests/testtreeview.c: 
4220         * demos/testpixbuf-scale.c: 
4221         * tests/prop-editor.c: These files still use option menus,
4222         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
4223
4224 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
4225
4226         * gtk/gtkactiongroup.h: 
4227         * gtk/gtkaction.h: 
4228         * gtk/gtkradioaction.h: 
4229         * gtk/gtkradiotoolbutton.h: 
4230         * gtk/gtkseparatortoolitem.h: 
4231         * gtk/gtktoggleaction.h: 
4232         * gtk/gtktoolitem.h: 
4233         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
4234         these usable in C++.  (#124351, Murray Cumming)
4235
4236 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
4237
4238         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
4239         non-NULL before accessing it. Oops.
4240
4241 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
4242
4243         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
4244         (gtk_entry_completion_insert_action_text),
4245         (gtk_entry_completion_insert_action_markup): the gchar* parameters
4246         should be const (pointed out by both Marco Pesenti Gritti and
4247         Murray Cumming (#124356).
4248
4249 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
4250
4251         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
4252         child list mode, allocate the height allocation->height to the
4253         button instead of the height requested by the button. (Tiny
4254         size allocation screwup noticed by Macro Pesenti Gritti).
4255
4256 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
4257
4258         Fixes based on comments from Marco Pesenti Gritti.
4259
4260         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
4261         signal handler, avoids the completion popup to popup when text is
4262         set programmatically in most cases (we actually have to handle this
4263         in the _editable functions as well, but that will break popping up
4264         when the user actually typed something :),
4265         (gtk_entry_completion_key_press): when handling enter, bail out
4266         when nothing has been selected,
4267         (gtk_entry_completion_changed): don't popdown when the entry content
4268         changed.
4269
4270         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
4271         (gtk_entry_completion_selected_changed): unselect_all on the
4272         first selected changed signal. Avoids having a default row selected,
4273         (_gtk_entry_completion_popup): don't select the first row by default.
4274
4275         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
4276         first_sel_changed field.
4277
4278 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
4279
4280         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
4281         in the intro (again).
4282
4283 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
4284
4285         Fixes for (#124212, Marco Pesenti Gritti):
4286         
4287         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
4288         warnings for popups.
4289         (_gtk_menu_is_empty): Return FALSE for non-menus.
4290
4291 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
4292
4293         * gtk/gtkcombo.h: Deprecate.
4294         * gtk/gtkoptionmenu.h: Ditto.
4295
4296         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
4297         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
4298         needs some work on requesting enough size when taking the items in
4299         the list into account.
4300
4301         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
4302         deprecated" guards.
4303         * gtk/gtkinputdialog.c: ditto.
4304         * gtk/gtkitemfactory.c: ditto.
4305         * gtk/gtkoptionmenu.c: ditto.
4306
4307         * demos/gtk-demo/menus.c: remove the option menu.
4308         * demos/gtk-demo/sizegroup.c: replace the option menus with
4309         GtkComboBox.
4310         * demos/gtk-demo/textview.c: ditto.
4311         (A general GtkComboBox demo will be added later on).
4312
4313 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
4314
4315         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
4316         callback to propertly report radio actions.
4317
4318         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
4319
4320 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
4321
4322         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
4323         version in in the right field of the _XEMBED_INFO property.  
4324         (#123885, Denis Mikhalkin)
4325
4326 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
4327
4328         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
4329         the child if we have one.
4330
4331         (gtk_expander_button_release): use
4332         gtk_widget_activate instead.
4333
4334 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
4335
4336         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
4337         "right_attach" with a capital.  (#123945, Christian Rose)
4338
4339 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
4340
4341         * tests/testsocket.c (child_read_watch): Remove an
4342         extraneous unref.  (#122336, Frederic Crozat)
4343
4344 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
4345
4346         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
4347         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
4348
4349 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4350
4351         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
4352         focus arrow before pack_end items (#123851, Matthias Clasen)
4353
4354 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
4355
4356         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
4357         on ->priv->cell_view if ->priv->cell_view is non-NULL.
4358
4359         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
4360         field to GtkComboBoxEntryPrivate,
4361         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
4362         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
4363         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
4364         a construct-only "text_column" property and reorder code to use it
4365         and support inheriting this widget.
4366
4367 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
4368
4369         * gtk/gtkcombobox.c: Added API doc comments.
4370
4371         * gtk/gtkcomboboxentry.c: Ditto.
4372
4373 2003-10-02  Matthias Clasen  <maclas@gmx.de>
4374
4375         * gtk/gtktoggleaction.c: Documentation tweaks.
4376
4377 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
4378
4379         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
4380         packing/attribute/cell data functions from the header,
4381         (gtk_cell_view_set_cell_data): added support for cell data funcs.
4382
4383         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
4384         packing/attribute/cell data functions from the header, implemented
4385         cell data func support.
4386
4387         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
4388         for the move to GtkCellLayout.
4389
4390         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
4391
4392 2003-10-01  Matthias Clasen  <maclas@gmx.de>
4393
4394         * gtk/gtkaction.c (gtk_action_class_init): 
4395         (gtk_action_[gs]et_property): Introduce a separate
4396         "hide_if_empty" property for empty menu handling.
4397         (_gtk_action_sync_menu_visible): ...and use it here.
4398
4399         * tests/testmerge.c (main): ...and here.
4400
4401         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
4402         comments to pacify gtk-doc.
4403
4404         * gtk/gtkmain.c: Doc formatting tweaks.
4405
4406         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
4407
4408         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
4409         Use the same parameter names as in .c file, to pacify gtk-doc.
4410
4411         * gtk/gtktoggletoolbutton.[hc]: 
4412         * gtk/gtktoolbutton.[hc]: 
4413         * gtk/gtktoolitem.[hc]:
4414         * gtk/gtktoolbar.[hc]: 
4415         * gtk/gtkcolorbutton.[hc]: 
4416         * gtk/gtkfontbutton.[hc]: 
4417         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
4418         source, not in the header.
4419
4420         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
4421         Document these as 2.4 API additions.
4422
4423 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
4424
4425         * gtk/gtkentry.c (gtk_entry_set_completion),
4426         (gtk_entry_get_completion): Add API doc comments.
4427
4428         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
4429
4430 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
4431
4432         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
4433
4434 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
4435
4436         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
4437
4438         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
4439
4440 2003-09-30  Matthias Clasen  <maclas@gmx.de>
4441
4442         * tests/merge-*.ui: 
4443         * tests/testmerge.c: Test handling of empty menus.
4444
4445         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
4446         whether a menu is empty. Used in gtkaction.c.
4447         (update_smart_separators): Also update the visibility of empty menus.
4448         (update_node): When creating a new menu proxy, insert an "Empty" menu 
4449         item which only gets shown if the menu is empty. 
4450
4451         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
4452         "is_important" for menu proxies.
4453         (_gtk_action_sync_menu_visible): New function to sync the visibility
4454         of menu proxies. Used in gtkuimanager.c.
4455         (gtk_action_sync_visible): New function to sync the visibility of 
4456         proxies.
4457
4458 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
4459
4460         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
4461         popup_in_progress to TRUE,
4462         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
4463         won't disappear on the first button release. (Reported by Matthias
4464         Clasen).
4465
4466 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
4467
4468         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
4469
4470         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
4471         Marco Pesenti Gritti).
4472
4473 2003-09-30  Murray Cumming  <murrayc@usa.net>
4474  
4475         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
4476         instead of a GdkWindow*, because that what it is given. The 
4477         documentation was already correct. This should cause no API/ABI
4478         breakage with C compilers.
4479         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
4480         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
4481         implementation accordingly.
4482
4483 2003-09-30  Matthias Clasen  <maclas@gmx.de>
4484
4485         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
4486         "direction-changed" and "keys-changed" signals.
4487
4488         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
4489         "size-changed" signal.
4490
4491         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
4492         Document the "display-opened" signal.
4493
4494         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
4495         (gdk_display_class_init): Document the "closed" signal.
4496
4497 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4498
4499         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
4500         accepts_tab. (#122709 again).
4501
4502 2003-09-27  Matthias Clasen  <maclas@gmx.de>
4503
4504         * gtk/gtkwindow.c (gtk_window_new):
4505         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
4506         the fact that the newly created object does not come with 
4507         a floating reference.  (#103068, patch by Frederic Lespez)
4508         
4509         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
4510         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
4511         since GtkActionGroup uses it.
4512
4513         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
4514         this test uses the soon-to-be-deprecated GtkItemFactory.
4515
4516         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
4517         remove item_factory.c
4518
4519         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
4520         using GtkUIManager instead of GtkItemFactory.
4521
4522         * tests/testmerge.c: Demonstrate the use of the 
4523         connect-proxy signal.
4524
4525         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
4526         disconnect-proxy signals to do small customizations 
4527         like displaying tooltips in the statusbar without 
4528         custom actions.  (#122894, Philip Langdale)
4529
4530         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
4531
4532 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
4533
4534         Landing the new ComboBox. Note that only gtkcombobox.h and
4535         gtkcomboboxentry.h are public.
4536
4537         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
4538         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
4539
4540         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
4541
4542         * tests/testcombo.c: and a new test.
4543
4544         * tests/Makefile.am: adding the new test.
4545
4546 2003-09-25  Tor Lillqvist  <tml@iki.fi>
4547
4548         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
4549
4550 2003-09-21  Tor Lillqvist  <tml@iki.fi>
4551
4552         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
4553         function. Code split out from gdk_event_translate(). Needed
4554         because gdk_event_get_graphics_expose() couldn't do anything
4555         sensible otherwise. (Not that I think graphics exposes work anyway
4556         in gdk/win32, but at least now the code could work.)
4557
4558         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
4559         gdk_event_translate(), which couldn't have worked as it doesn't
4560         take any pre-allocated GdkEvent parameter any longer.
4561         
4562         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
4563         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
4564
4565 2003-09-24  Matthias Clasen  <maclas@gmx.de>
4566
4567         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
4568         on toolitems.
4569
4570         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
4571
4572         * gtk/gtkuimanager.c (update_node): Don't complain about missing
4573         actions on popups. Re-set "tooltip" property on toolitems after
4574         adding them to parent to trigger proxy update.
4575
4576 2003-09-22  Matthias Clasen  <maclas@gmx.de>
4577
4578         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
4579         group member to test the fix for #122904.
4580
4581         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
4582         Add the action to the group before activating it, otherwise we
4583         may end up with multiple active group members.  (#122904, Marco
4584         Pesenti Gritti)
4585
4586 2003-09-21  Matthias Clasen  <maclas@gmx.de>
4587
4588         Changes to make cross-process merging feasible:
4589         
4590         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
4591         merged UI definition. Remove the "changed" signal, since its role
4592         is now filled by "notify::ui". Instead add a "actions-changed" signal
4593         which gets emitted when the set of actions changes.
4594
4595         * gtk/gtktoggleactionprivate.h:
4596         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
4597         Add a "draw_as_radio" property to toggle actions so that they can be
4598         used as proxies for radio actions much like the "draw_as_radio" 
4599         property on check menu items enables them to operate as proxies for
4600         radio actions.
4601
4602         Prevent the "show_all" trap for action-based menus (see
4603         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
4604         msg00260.html):
4605
4606         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
4607         calls from static functions.
4608
4609         * gtk/gtkuimanager.c (update_node): 
4610         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
4611         widgets whose visibility is externally controlled.
4612
4613         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
4614         "no_show_all" property with setter and getter. When TRUE, it keeps
4615         gtk_widget_{hide,show}_all() from modifying the visibility of the 
4616         widget and its children.
4617
4618 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4619
4620         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
4621
4622 2003-09-20  Tor Lillqvist  <tml@iki.fi>
4623
4624         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
4625         including editor backup files. List files we want explicitly.
4626
4627         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
4628         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
4629         LC_ALL, LC_CTYPE and LANG environment variables, than calls
4630         g_win32_getlocale().
4631
4632         (gtk_get_default_language): Code snippet moved to above function,
4633         call it.
4634
4635         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
4636         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
4637         _gtk_get_lc_ctype() instead of setlocale().
4638
4639 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4640
4641         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
4642         (#96632)
4643
4644 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4645
4646         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
4647         documentation. (#117306, Steve Chaplin)
4648
4649 2003-09-19  Tor Lillqvist  <tml@iki.fi>
4650
4651         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
4652         present on the US-International keyboard. For clarity, order
4653         keysyms in case statement according to numeric value.
4654
4655         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
4656         correctly. (#120176, Ken Rastatter and Owen Taylor)
4657
4658 2003-09-18  Matthias Clasen  <maclas@gmx.de>
4659
4660         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
4661         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
4662
4663         Install accelerators on actions, not on proxies, support
4664         accelerator-only actions:
4665         
4666         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
4667         and its lock status either via _gtk_widget_get_accel_path() or by 
4668         looking at the accel_path stored in the menu item itself and determining
4669         its lock status by peeking into the contained accel label. This was
4670         already (accidentally) committed a week ago.
4671
4672         * gtk/gtkaction.h (gtk_action_set_accel_group):
4673         (gtk_action_[dis]connect_accelerator): New functions.
4674
4675         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
4676         accel_closure and accel_count. We must have a reference to the 
4677         accel_group, since we need it in connect_proxy. The count is necessary
4678         to ensure that the accelerator isn't removed before the last proxy 
4679         requesting it has been unmerged.
4680         (connect_proxy): Connect the accelerator to the 
4681         action now, only set the accel_path on the menuitem.
4682         (remove_proxy): Disconnect the accelerator from the action, not from
4683         the menuitem.
4684         (gtk_action_set_accel_group): Set the accel group. 
4685         (gtk_action_[dis]connect_accelerator): Count the number of times
4686         this functions have been called and install/remove the accelerator if
4687         the count leaves/reaches zero.
4688
4689         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
4690         GTK_UI_MANAGER_ACCELERATOR.
4691
4692         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
4693         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
4694         <accelerator> elements.
4695         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
4696         type is GTK_UI_MANAGER_ACCELERATOR.
4697         (update_node): Set the accel group on actions before creating their
4698         proxies. Don't set the accel group on created menus. For 
4699         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
4700         (print_node): Also emit <accelerator> elements.
4701
4702         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
4703
4704         * gtk/gtkuimanager.c (update_node): Robustness improvements.
4705
4706 2003-09-17  Matthias Clasen  <maclas@gmx.de>
4707
4708         * gtk/gtkuimanager.c (text_handler): Report unexpected character
4709         data as error from the GMarkup parser, otherwise things like
4710         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
4711         pass unexpectedly.
4712
4713 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4714
4715         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
4716         committed redraw_on_allocate change.
4717
4718 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
4719
4720         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
4721         stubs to fix compilation
4722
4723         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
4724         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
4725
4726         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
4727         variable. Patch from Marc Welz (#121347).
4728
4729 2003-09-16  Matthias Clasen  <maclas@gmx.de>
4730
4731         * gtk/gtkaction.h: Apply egtk-format-protos.
4732
4733 2003-09-15  Matthias Clasen  <maclas@gmx.de>
4734
4735         * gtk/gtkuimanager.c: Doc tweaks.
4736
4737         Smart separators; see 
4738         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
4739         
4740         * gtk/gtkuimanager.c (update_smart_separators): New function which 
4741         implements "smart" separators by iterating once over the entries of a 
4742         menu, hiding and showing separators as necessary.
4743         (update_node): Mark separators used as fences of placeholders as
4744         hidden. Explicitly added separators are marked as smart. Call 
4745         update_smart_separators after updating a menu or toolbar node. 
4746         Connect update_smart_separators to "notify::visible" signal on menu
4747         and tool items.
4748         
4749         * tests/merge-[12].ui: Test smart separators.
4750
4751         Changes to allow setting action state before connecting signal; see
4752         the thread starting at 
4753         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
4754         
4755         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
4756         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
4757         setting the currently selected group member before connecting signals.
4758         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
4759         including a boolean to initialize the action state before connecting
4760         signals.
4761         (gtk_action_group_add_toggle_actions):
4762         (gtk_action_group_add_toggle_actions_full): New functions to construct
4763         toggle actions from an array of GtkToggleActionEntries.
4764
4765         * demos/gtk-demo/appwindow.c: 
4766         * tests/testactions.c: 
4767         * tests/testmerge.c: Adjust to new action group API.
4768
4769 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4770
4771         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
4772         "gtk-toolbar-arrow" so themes can special-case it.
4773
4774 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4775
4776         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
4777
4778 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4779
4780         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
4781         PangoFontMetrics. Patch from Steve Chaplin (#122257).
4782
4783 2003-09-14  Tor Lillqvist  <tml@iki.fi>
4784
4785         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
4786         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
4787         the usefulness of which was already in doubt. Removing it fixes
4788         bugs #118575 and #121851.
4789
4790 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
4791
4792         Merge from stable.
4793
4794         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
4795         pressed button (used to determine if we want to initiate a drag later
4796         on) if the current grab widget is either NULL or tree_view (Reported
4797         by Jeroen Zwartepoorte).
4798
4799 2003-09-12  Matthias Clasen  <maclas@gmx.de>
4800
4801         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
4802         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
4803
4804 2003-09-11  Matthias Clasen  <maclas@gmx.de>
4805
4806         * gdk/gdkpango.c: Doc tweaks.
4807
4808         * tests/testgtk.c: Add table menu tests.
4809
4810         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
4811         GtkMenuPrivate struct itself. Pointed out by valgrind.
4812
4813         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
4814         properly.  (#121998)
4815
4816 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
4817
4818         The table menu patch! Turns GtkMenu into a table, so you can attach
4819         menu items in numerous new ways! Be creative!
4820
4821         Contains some bug fixes and RTL adaptions from Matthias Clasen.
4822
4823         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
4824         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
4825         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
4826         the heights array in the private struct,
4827         (gtk_menu_class_init): reorder code a bit, install child properties,
4828         (get_attach_info), (get_child_attach): new utility functions,
4829         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
4830         child properties, for the attach info,
4831         (gtk_menu_remove): remove AttachInfo from menu item,
4832         (gtk_menu_real_insert): implemented algorithm to automagically place
4833         inserted menu items at the correct place in the table,
4834         (gtk_menu_size_request), (gtk_menu_size_allocate),
4835         (compute_child_offset): reworked/rewritten to support table menus,
4836         (gtk_menu_attach): new function,
4837         (find_child_containing), (gtk_menu_move_current): new functions to
4838         get table menu keynav right.
4839
4840         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
4841
4842 2003-09-10  Matthias Clasen  <maclas@gmx.de>
4843
4844         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
4845         PropertyNotify events from the stream if they have been handled,
4846         in order to enable extending the plug<->socket communication via
4847         properties.
4848
4849 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
4850
4851         Big TreeView DnD fixage, makes drops on empty models work, makes
4852         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
4853         Related bugs #95362 and #113314. I don't want to touch this code
4854         ever again.
4855
4856         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
4857
4858         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
4859         for selection_data->length.
4860
4861         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
4862         (set_dest_row), (get_dest_row): we don't store just the row ref
4863         anymore, but a struct with the row ref and additional info,
4864         (set_destination_row): handle drops on empty space and some
4865         style fixes,
4866         (get_logical_dest_row): also return path_down_mode/drop_append_mode
4867         flags, handle dropping childs on their new parents, rewrite
4868         drop append handling into something saner,
4869         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
4870         spaces,
4871         (gtk_tree_view_drag_drop): updates for updated backend,
4872         (gtk_tree_view_drag_data_received): updates for updated backend,
4873         path down mode (treestore DnD) handling,
4874         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
4875         when we are trying to drop a row on an empty model,
4876         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
4877
4878         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
4879         (gtk_list_store_row_drop_possible): style and drop-append fixes.
4880
4881         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
4882
4883 2003-09-08  Alexander Larsson  <alexl@redhat.com>
4884
4885         * gtk/gtkeventbox.[hc]:
4886         Implement gtk_event_box_get/set_input_only()
4887         
4888         * tests/testgtk.c:
4889         Tests for the new input only event boxes
4890
4891 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
4892
4893         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
4894
4895         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
4896         the call to gtk_tree_model_filter_add_root,
4897         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
4898         the virtual root, allow building levels on the second try to convert
4899         the child path to a filter path,
4900         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
4901         root when calling gtk_tree_model_filter_elt_get_path.
4902
4903 2003-09-07  Matthias Clasen  <maclas@gmx.de>
4904
4905         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
4906         Josh Beam)
4907
4908         Fixes for accelerator handling during (un)merging:
4909         
4910         * gtk/gtkuimanager.c (update_node): Move setting info-action
4911         after the switch, since the old action is needed in some cases.
4912         In cases of proxy type mismatch, disconnect the old proxy from
4913         the old action.
4914
4915         * gtk/gtkaction.c (remove_proxy): Renamed from 
4916         gtk_action_remove_proxy(). Move unsetting of the accelerator
4917         here from disconnect_proxy() in order to catch all cases of 
4918         removing a proxy.
4919         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
4920         to fail if proxy isn't a proxy of action.
4921
4922 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
4923
4924         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
4925         ALL_LINGUAS
4926
4927 2003-09-07  Matthias Clasen  <maclas@gmx.de>
4928
4929         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
4930         for toolitems.
4931
4932 2003-09-06  Matthias Clasen  <maclas@gmx.de>
4933
4934         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
4935         prev_action, not from action.  (Fix by David Hampton)
4936
4937 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
4938  
4939         * Back out locale-dependent interpretation of
4940         KP_Decimal, the official XFree86 interpretation
4941         is that KP_Decimal => . KP_Separator => ,
4942         always, independent of locale. 
4943         (#105161, Frederic Crozat, 
4944         http://bugs.xfree86.org/show_bug.cgi?id=534)
4945  
4946 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4947
4948         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
4949
4950         * gtk/gtktoggleaction.c (connect_proxy): 
4951         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
4952         that a "draw_as_radio" property is needed for check buttons similar to 
4953         check menu items, in order to fully support button proxies for radio actions.
4954
4955         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
4956
4957         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
4958
4959         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
4960         'type' argument of gtk_ui_manager_add_ui().
4961
4962         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
4963         to make this function as powerful as the XML methods of adding UI.  (#120647)
4964
4965 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
4966
4967         Merge from stable.
4968
4969         * docs/RELEASE-HOWTO: updates.
4970
4971 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4972
4973         * tests/merge-2.ui: Use "position" instead of "pos".
4974
4975         * gtk/gtkuimanager.c (start_element_handler): No need 
4976         to be terse: Change the name of the "pos" attribute
4977         to "position".
4978
4979 2003-09-04  Matthias Clasen  <maclas@gmx.de>
4980
4981         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
4982         GtkUIManagerNode to shorten the names and to make the
4983         GTK_UI_MANAGER_<TYPE> names available for a public enum.
4984
4985         * gtk/gtkactiongroup.c:
4986         * gtk/gtkuimanager.c: Various doc tweaks.       
4987
4988         * gtk/gtkuimanager.c (start_element_handler):
4989         (end_element_handler): Improve error reporting. 
4990
4991 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
4992
4993         Merge from stable.
4994
4995         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
4996         use end_position - page_size instead of G_MAXINT, since
4997         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
4998         reported by Havoc Pennington).
4999
5000 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
5001
5002         Merge from stable.
5003
5004         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
5005         unref it. (Fixes memleak, patch from Kjartan Maraas).
5006
5007 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
5008
5009         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
5010         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
5011         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
5012         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
5013         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
5014         gtk/gtktypeutils.h: big patch from Kjartan Maraas
5015         to fix numerous typos.
5016
5017 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
5018
5019         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
5020
5021 2003-09-02  Tor Lillqvist  <tml@iki.fi>
5022
5023         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
5024         CloseHandle() on the HMODULE returned from GetModuleHandle().
5025         Didn't cause any harm, but didn't do anything useful either. When
5026         running a GTK+ program under MS's debugger, the CloseHandle() call
5027         would cause a "first-chance exception" in ntdll.dll to show up.
5028         (The exception is caught appropriately if you let it proceed, but
5029         it confuses the person using the debugger). Thanks to Bruce
5030         Hochstetler for noticing.
5031
5032 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
5033
5034         Merge from stable.
5035
5036         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
5037         to only select when button 1 is pressed introduced in the fix of
5038         bug #120187.
5039
5040 2003-09-02  Matthias Clasen  <maclas@gmx.de>
5041
5042         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
5043
5044         * gtk/gtkuimanager.c: Shorten the names of some static 
5045         functions.
5046
5047         Support adding and removing merge nodes dynamically (#120647, 
5048         Anders Carlsson):
5049         
5050         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
5051         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
5052         and made it public.
5053         (gtk_ui_manager_add_ui): New function to add UI elements
5054         without juggling XML fragments, currently restricted to menuitems,
5055         toolitems and separators. Actions still come from registered 
5056         action groups.
5057
5058 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5059
5060         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
5061         background pixmap was being offset twice, once by the ts_origin in
5062         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
5063
5064 2003-09-01  Matthias Clasen  <maclas@gmx.de>
5065
5066         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
5067         this public again, since it's occasionally useful.  (#121128,
5068         Marco Pesenti Gritti)
5069
5070         * gtk/gtkaction.c: Add an "is_important" property and propagate
5071         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
5072
5073 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5074
5075         * tests/testtoolbar.c (main): connect to "delete_event" so the
5076         application will actually quit when you close the window
5077
5078 2003-09-01  Matthias Clasen  <maclas@gmx.de>
5079
5080         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
5081         (gtk_ui_manager_get_action): g_return_if_fail() if
5082         path is NULL.
5083         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
5084         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
5085         Marco Pesenti Gritti)
5086
5087 2003-08-31  Matthias Clasen  <maclas@gmx.de>
5088
5089         * gtk/gtktoolitem.c: Fix some typos in docs.
5090
5091         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
5092         replaces gtk_ui_manager_activate().  (#120658)
5093
5094         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
5095         gtk_ui_manager_activate().
5096
5097         * gtk/gtkaction.c: 
5098         * gtk/gtkactiongroup.c: Some doc tweaks.
5099
5100         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
5101         wasn't emitted anyway. Some doc tweaks.
5102
5103 2003-08-30  Matthias Clasen  <maclas@gmx.de>
5104
5105         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
5106         rather than to "remove" on handlebox. 
5107
5108         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
5109         activate an action found by following a path.  (#120658)
5110
5111         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
5112
5113         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
5114
5115         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
5116         setter and getter. If it is set, add tearoff menu items to regular 
5117         menus, but not to popups. Add a signal "changed", which gets emitted
5118         when the merged ui has changed.  (#120649, #120656)
5119
5120         * tests/testmerge.c: Add button to test the generation of tearoff 
5121         menu items.
5122
5123 2003-08-29  Matthias Clasen  <maclas@gmx.de>
5124
5125         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
5126         Actually group the actions together rather than putting each in its 
5127         own group.
5128
5129         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
5130         proxy menu items for radio actions.
5131
5132         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
5133
5134 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5135
5136         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
5137         Fix use of uninitialized variable.
5138
5139         * gtk/gtktextutil.c
5140         (_gtk_text_util_append_special_char_menuitems): add const cast to
5141         get rid of warning
5142
5143 2003-08-29  Matthias Clasen  <maclas@gmx.de>
5144
5145         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
5146         "draw_as_radio" as a separate property, not as an alias of 
5147         "inconsistent".
5148         (gtk_check_menu_item_get_property): 
5149         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
5150
5151 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5152
5153         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
5154         are narrower than 13 time the estimated character width of the
5155         font. (#107781, David Bordoley)
5156
5157         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
5158         here if the GtkToggleButton is active. This may be the case if it
5159         is a radio button.
5160
5161         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
5162         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
5163         Suarez-Alvarez).
5164
5165         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
5166         property. (#111207, David Bordoley).
5167
5168         * gtk/gtktoggletoolbutton.c
5169         (gtk_toggle_tool_button_create_menu_proxy): use new
5170         "draw_as_radio" property on the menu item when the item is a radio
5171         tool button
5172
5173         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
5174         to only pay attention to the "use_underline" property when the
5175         button label comes from the "label" property.
5176
5177 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
5178
5179         * configure.in: Added "sq" to ALL_LINGUAS.
5180         
5181 2003-08-28  Matthias Clasen  <maclas@gmx.de>
5182
5183         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
5184         fix in the docs.
5185
5186         * gtk/gtkuimanager.c: Change the XML format:
5187         <Root> element is replaced by <ui>,
5188         <menu> element is replaced by <menubar>,
5189         <submenu> element is replaced by <menu>,
5190         <dockitem> element is replaced by <toolbar>,
5191         <popups> element is gone,
5192         verb attribute is replaced by action,
5193         name defaults to action or the element name. 
5194
5195         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
5196         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
5197         by removing the user_data, entry_type and extra_data fields, 
5198         GtkRadioActionEntry is further simplified by removing the callback. 
5199         The user_data can now be specified as an argument to 
5200         gtk_action_group_add_actions(). There is a new method 
5201         gtk_action_group_add_radio_actions(), which is similar to 
5202         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
5203         and a callback parameter in addition to the user_data. The callback
5204         is connected to the ::changed signal of the first group member.
5205         There are _full() variants taking a GDestroyNotify of 
5206         gtk_action_group_add_[radio_]actions().
5207
5208         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
5209         on every member of the radio group when the active member is changed. 
5210         Add an integer property "value", and a getter for the value of "value"
5211         on the currently active group member. 
5212
5213         * tests/testactions.c: 
5214         * tests/testmerge.c: 
5215         * tests/merge-[123].ui:  
5216         * demos/gtk-demo/appwindow.c: Adjust to these changes.
5217
5218         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
5219
5220 2003-08-27  Anders Carlsson  <andersca@gnome.org>
5221
5222         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
5223         text view, so the tool bar won't have focus.
5224
5225 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
5226
5227         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
5228         declaration not at start of block. (#120371, Damien Carbery)
5229
5230 2003-08-26  Matthias Clasen  <maclas@gmx.de>
5231
5232         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
5233         for length, not gsize.
5234
5235         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
5236         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
5237         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
5238
5239         * demos/gtk-demo/appwindow.c: 
5240         * tests/testactions.c: 
5241         * tests/testmerge.c:
5242         * tests/merge-1.ui:
5243         * tests/merge-2.ui:
5244         * tests/merge-3.ui: Adjust to the new XML format.
5245
5246 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
5247
5248         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
5249         Since we add one to the layout's reported width to
5250         account for the cursor, we need to subtract one when
5251         setting the wrap width for the layout. (Fixes infinite
5252         loop (#120325, Frederic Crozat)
5253
5254         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5255         Be a bit more careful about rounding when converting
5256         wrapped width from Pango units to pixels.
5257
5258 2003-08-26  Matthias Clasen  <maclas@gmx.de>
5259
5260         Rename GtkMenuMerge to GtkUIManager. 
5261         
5262         * gtk/gtkuimanager.[hc]: New files. 
5263         * gtk/gtkmenumerge.[hc]: Removed. 
5264
5265         * gtk/Makefile.am: 
5266         * gtk/gtk.h:
5267         * tests/testmerge.c: 
5268         * tests/testactions.c: 
5269         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
5270         GtkUIManager.
5271
5272         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
5273         add comments to entries array, remove newlines from ui definition. Don't 
5274         use the ::add_widget signal.
5275
5276 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
5277
5278         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
5279         include page->menu_label - causes various problems,
5280         including #12047.
5281
5282 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
5283
5284         Merge from stable.
5285
5286         Fixes #115871, reported by Michael Natterer.
5287
5288         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
5289         added ctrl_pressed and shift_pressed bitfields,
5290         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
5291         arg with GtkTreeSelectMode.
5292
5293         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
5294         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
5295         (_gtk_tree_selection_internal_select_node): all updated for
5296         GdkModifierType -> GtkTreeSelectMode move.
5297
5298         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
5299         and shift_pressed around selection handling block,
5300         (gtk_tree_view_real_select_cursor_row),
5301         (gtk_tree_view_real_toggle_cursor_row),
5302         (gtk_tree_view_real_selection_cursor_parent),
5303         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
5304         instead of checking the event state. And also updates for the
5305         GdkModifierType -> GtkTreeSelectMode move.
5306
5307 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
5308
5309         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
5310         to the parent when there was no focus widget before
5311         and no focus widget after - that is, when there are
5312         no focusable widgets. (#108678, help tracking it
5313         down from Padraig O'Briain, Federico Mena Quintero, )
5314
5315         * gtk/gtkxembed.[ch]: Move various shared utilities
5316         for the XEMBED protocol eused by GtkPlug and GtkSocket 
5317         here.
5318
5319         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
5320         a flag bit that is sent with focus mesages to indicate
5321         that the focus has wrapped around on the toplevel;
5322         use this bit to catch infinite loops when there is no
5323         focusable widget at ll in the entire toplevel.
5324
5325         * tests/testsocket.c (child_read_watch): Remove an
5326         extraneous unref.
5327
5328         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
5329         Up XEMBED protocol version to 1, add logic for 
5330         sending the right version in XEMBED_EMBEDDED_NOTIFY.
5331
5332         * gtk/gtksocket.c (gtk_socket_add_window): Send
5333         the embedder window in the XEMBED_EMBEDDED_NOTIFY
5334         as the spec requires.
5335
5336 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
5337
5338         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
5339         NumLock handling for non-XKB. Add a special case
5340         hack for NumLock on Sun servers. (Patch from
5341         Robert Basch, #115819)
5342
5343 2003-08-25  Matthias Clasen  <maclas@gmx.de>
5344
5345         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
5346         Welinder)
5347
5348         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
5349         gtk_action_group_set_translation_domain): Hooks for translation of
5350         label and tooltip in GtkActionGroupEntries.  (#120620)
5351
5352 2003-08-25  Matthias Clasen  <maclas@gmx.de>
5353
5354         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
5355         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
5356         
5357         * gtk/gtkactiongroup.c: 
5358         * demos/gtk-demo/appwindow.c: 
5359         * tests/testmerge.c: 
5360         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
5361
5362 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
5363
5364         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
5365
5366 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
5367
5368         * gtk/Makefile.am: Fix accidental commit of references
5369         to gtkresizegrip.[ch]
5370
5371 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
5372
5373         * gtk/gtkrc.c: Fix some missing initializations of
5374         rc_file->directory.
5375
5376 2003-08-24  Matthias Clasen  <maclas@gmx.de>
5377
5378         * gtk/gtkaction.[ch]: 
5379         * gtk/gtktoggleaction.[ch]: 
5380         * gtk/gtktoggleactionprivate.h: 
5381         * gtk/gtkradioaction.[ch]: 
5382         * gtk/gtkactiongroup.[ch]: 
5383         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
5384         toolbars, using the EggMenu code by James Henstridge.
5385
5386         * gtk/gtk.h: Include new headers.
5387         * gtk/Makefile.am: Add new files.
5388
5389         * tests/testactions.c: Test for actions.
5390         * tests/testmerge.c: Test for menu merging.
5391         * tests/merge-[123].ui: Test data for testmerge. 
5392         * tests/Makefile.am: Add testactions and testmerge.
5393
5394         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
5395         menubar and toolbar.
5396         
5397 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
5398  
5399         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
5400         problem where rc_file->directory wasn't always getting
5401         set. (#120549, Luis Villa)
5402  
5403 2003-08-22  Christian Rose  <menthos@menthos.com>
5404
5405         * configure.in: Added "ne" to ALL_LINGUAS.
5406
5407 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
5408  
5409         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
5410         being parsed, not just the directories for those
5411         files. Use that to catch recursion. (Part of
5412         #114988)
5413  
5414 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
5415
5416         Merge from stable.
5417
5418         Fix option menu scrolling (#119821, Owen Taylor).
5419
5420         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
5421         by #80484 and the CLAMP,
5422         (get_menu_height): new function,
5423         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
5424         new_offset to handle page up/down right.
5425
5426 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
5427
5428         * gdk/x11/gdkkeys-x11.c: Change the interpretation
5429         of consumed_modifiers so that it contains:
5430          - Modifiers combinations actually found in
5431            state.
5432          - Single modifier modifier combinations.
5433         But not multi-modifier combinations that aren't
5434         in event->state. Document. (#100439)
5435
5436 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
5437
5438         Slightly modified patch from Yann Rouillard to improve selection
5439         behavior with the mouse. Fixes #120187.
5440
5441         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
5442         select/deselect items on the first button press of button 1,
5443         expand checks for row_activated to include triple clicks.
5444
5445 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
5446
5447         Merge from stable.
5448
5449         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
5450         approximate digit widths up, to avoid truncation, convert to
5451         pango pixels when we have the full string width instead of converting
5452         the approx digit width to pango pixels, take inner border and
5453         interior focus into account correctly. (Fixes #116368, patch from
5454         Morten Welinder).
5455
5456 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
5457
5458         * gtk/queryimmodules.c: Don't look at the same directory twice (in
5459         simple cases). (#120342)
5460
5461 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5462
5463         * gdk/gdkwindow.c: Make the layers in the paint stack have their
5464         own pixmap instead of sharing one. (#118317)
5465
5466         * tests/testgtk.c (create_get_image): Fixes to make the window fit
5467         on an 800x600 screen
5468
5469 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
5470
5471         Merged from stable.
5472
5473         * gtk/gtkspinbutton.c (start_spinning): change the type of step
5474         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
5475
5476 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
5477
5478         * modules/input/gtkimcontextxim.[ch]: Substantially
5479         rework the handling of status windows:
5480         
5481          - Store the current StatusWindow in the 
5482            GtkIMContextXIM structure and vice-versa, so we
5483            don't have to hunt the window hierarchy on
5484            cleanup.
5485          - Use the Gtkidget hierarchy instead of/or as well
5486            as the GdkWindow hierarchy when finding the toplevel;
5487            this helps for things like GtkHandlebox
5488          - Watch GtkWidget::hierarchy_changed to catch 
5489            changes in the toplevel without changes in the
5490            GdkWindow (reparenting)
5491          - Never create the GtkWindow for the status window
5492            unless we have text to display.
5493          - Various cleanups, add lots of comments.
5494
5495         (#115077, much help from Takuro Ashie and Hidetoshi
5496         Tajima in tracking this down and figuring out a fix.)
5497
5498         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
5499
5500         * modules/input/gtkimcontextxim.c: Track the current
5501         screen for each toplevel so that we show the status
5502         window on the right screen. (#116340, James Su)
5503
5504         * modules/input/gtkimcontextxim.c: If create a new IC
5505         when we currently have the focus, call XSetICFocus()
5506         on it.
5507         
5508         * modules/input/gtkimcontextxim.c (get_im): Fix bug
5509         with multiple open screens.
5510
5511 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
5512
5513         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
5514         Replace client_window field with 'priv' pointer,
5515         retaining binary compatibility.
5516
5517         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
5518         save use_preedit/cursor_location/focus status and set
5519         up the new slave appropriately. (#118651, Botond Botyanszki)
5520
5521 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
5522
5523         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
5524         Don't use impl->position_info.clip_rect for toplevels.
5525         (#107068, reported by Thomas Mirlacher)
5526
5527 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
5528
5529         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
5530         Add a fallback for unaligned source data for
5531         FORMAT_ARGB_MASK. (#117217)
5532
5533 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
5534
5535         * configure.in: Rework handling of REBUILD_PNGS,
5536         so that we also don't try to REBUILD_PNGS when
5537         cross-compiling and there is no gdk-pixbuf-csource.
5538         But give an error if gtk/stock-icons/gtkstockpixbufs.h
5539         is not in the source tree. (Note that REBUILDS_PNG
5540         was set backwards before, which is why you always
5541         had to manually recreate gtkstockpixbufs.h!)
5542
5543 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
5544
5545         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
5546         path to libgtk.la. (#120080, Benedikt Spranger)
5547
5548 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
5549
5550         * modules/input/imcedilla.c: Make the list of default
5551         languages more comprehensive. (Suggestion of
5552         Fco. Javier F. Serrador)
5553
5554 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
5555
5556         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
5557         parentheses when skipping args.
5558
5559 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
5560
5561         Fix major bug in row ref handling, so the new combo box
5562         will actually work right (:. Bug #107748. Patch written
5563         with help from Tim Janik.
5564
5565         The basic idea is to update the row refs in a closure,
5566         before the actual signal is emitted (rather than having
5567         the model connect signal handlers).
5568
5569         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
5570         g_signal_new calls for row_inserted, row_deleted and
5571         rows_reordered to use the new marshallers,
5572         (row_inserted_marshall), (row_deleted_marshall),
5573         (rows_reordered_marshall): the new marshallers,
5574         (gtk_tree_row_ref_inserted_callback): renamed to
5575         gtk_tree_row_ref_inserted since it isn't a callback
5576         anymore and gets called by the marshaller now,
5577         (gtk_tree_row_ref_deleted_callback): likewise,
5578         (gtk_tree_row_ref_reordered_callback): likewise,
5579         (connect_ref_callbacks), (disconnect_ref_callbacks):
5580         removed,
5581         (gtk_tree_row_reference_new_proxy),
5582         (gtk_tree_row_reference_free),
5583         (gtk_tree_row_reference_inserted),
5584         (gtk_tree_row_reference_deleted),
5585         (gtk_tree_row_reference_reordered): updated.
5586
5587 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
5588
5589         Improve Cedilla handling - based on a patch from Gustavo 
5590         De Nardin, #111334
5591
5592         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
5593         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
5594         dead_acute+c combinations. Make this the default for
5595         fr and pt.
5596
5597         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
5598         Use LC_CTYPE instead of LC_MESSAGES to pick the default
5599         input method.
5600
5601 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
5602
5603         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
5604         for Multi_key+c+apostrophe.
5605
5606 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
5607
5608         Merged from stable.
5609
5610         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
5611         on vertical scrolling. (#108035, reported by Tim Janik).
5612
5613 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
5614
5615         Merged from stable.
5616
5617         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
5618         (gtk_tree_model_sort_level_find_insert),
5619         (gtk_tree_model_sort_insert_value): fix off-by-one error.
5620         (#109292 continued, patch from Yann Rouillard).
5621
5622 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
5623
5624         (Note: This is not exactly the same as the patch which went in
5625          gtk-2-2).
5626
5627         * gtk/gtktreeview.c (gtk_tree_view_class_init),
5628         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
5629         Also support the up, down, left, right, home, end, page up and
5630         page down keys on the numpad. (#119419, reported by Alex Larsson).
5631
5632 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
5633
5634         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
5635
5636         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
5637         we link libgtk against X explicitely, since we
5638         make GTK+ calls for plug/socket.
5639
5640         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
5641         G_MODULE_SUFFIX here. 
5642
5643         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
5644         XShmPutImage with #ifdef USE_SHM.
5645
5646 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
5647
5648         * gtk/gtkfilesel.c (gtk_file_selection_populate):
5649         Don't reposition the cursor when we aren't trying
5650         to complete. (Fixes problems with selection on
5651         startup, #108433, reported by Mark Finlay.)
5652
5653         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
5654         code that tried to position the cursor after the common
5655         prefix when there was one, it wasn't working, and
5656         would be hard to fix. Just always put the cursor
5657         at the end when completing.
5658
5659 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
5660
5661         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
5662         the current directory fails because of encoding
5663         conversion problems, walk up textually to parent
5664         directories until we can convert. (#113627)
5665
5666 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
5667
5668         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
5669         Remove usage of menu_shell->ignore leave which was
5670         to deal with stray events we no longer get because
5671         we do grabbing differently. Comment it as unused in
5672         the header. (#115837, Keith Bissett)
5673
5674 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
5675
5676         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
5677         Fix some places that weren't properly Xinerama-ified.
5678
5679         * gtk/gtkmenu.c: Fix problem with windows that scroll
5680         at the top of the screen.
5681
5682 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
5683
5684         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
5685         key-press-event on the entry, so input methods get access to 
5686         key presses before GtkCombo customization.
5687         (#115451, Botond Botyanszki)
5688
5689 2003-08-13  Anders Carlsson  <andersca@gnome.org>
5690
5691         * tests/testtoolbar.c: (set_important_func), (important_toggled),
5692         (create_items_list):
5693         Add an important column.
5694         
5695 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
5696
5697         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
5698         against reentrancy from ::focus-out handlers. 
5699         (#118129, Felipe Heidrich)
5700
5701 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
5702
5703         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
5704         GDK_LOCK_MASK before calling
5705         gdk_keymap_translate_keyboard_state so bindings 
5706         and accelerators are independent of the Caps-lock
5707         key. (#115384, reported by Toni Willberg)
5708
5709 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
5710
5711         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
5712         break statements (#119494, Soeren Sandmann)
5713
5714 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
5715
5716         * gtk/gtkwidget.h: Mark parent public as well; it's
5717         extensively accessed in existing code, so there is
5718         no advantage in making people use get_parent().
5719         (Tweak to #119463 fix)
5720
5721 2003-08-11  Matthias Clasen  <maclas@gmx.de>
5722
5723         Add support for EWMH "Above" and "Below" window states.  (105100,
5724         Manuel Clos)
5725         
5726         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
5727         State" demo.
5728
5729         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
5730         gtk_window_set_keep_below.
5731
5732         * gtk/gtk.def: Add gtk_window_set_keep_above and
5733         gtk_window_set_keep_below.
5734
5735         * gtk/gtkwindow.c (gtk_window_set_keep_below):
5736         (gtk_window_set_keep_above): New functions, call the corresponding
5737         gdk functions.
5738
5739         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
5740         function, sets _NET_WM_STATE_BELOW.
5741         (gdk_window_set_keep_above): New function, sets
5742         _NET_WM_STATE_ABOVE.
5743
5744         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
5745         gdk_window_set_keep_below.
5746
5747         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
5748         GDK_WINDOW_STATE_BELOW.
5749
5750         * gdk/gdk.def: Add gdk_window_set_keep_above and
5751         gdk_window_set_keep_below.
5752
5753         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
5754         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
5755         xmlcatalog in PATH.  (#119115)
5756
5757 2003-08-10  Matthias Clasen  <maclas@gmx.de>
5758
5759         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
5760         public.  (#119463)
5761
5762 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
5763
5764         * gdk/gdkevents.h:
5765         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
5766         docs on GdkFilterFunc and GdkFilterReturn.
5767
5768 2003-08-09  Matthias Clasen  <maclas@gmx.de>
5769
5770         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
5771         to let the mouse wheels select the month. Scrolling down
5772         moves forward in time. (#53134, Abigail Brady) 
5773
5774         * gtk/gtkcalendar.c: Complete the RTL flipping support for
5775         GtkCalendar, make it possible to flip the headings using the
5776         "magic translated string" technique.  Translators, note the
5777         comment in gtk_calendar_init() explaining this.  (#102416)
5778
5779         * gtk/gtkcalendar.c: Get the information about the first day of
5780         the week from the locale using another instance of the "magic
5781         translated string" technique.  Ignore the display option
5782         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
5783
5784         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
5785         date is dragged as text, formatted via strftime %x. Text drops are
5786         accepted if g_date_set_parse() can make sense of the text. A
5787         dedicated data format for date DND has not been introduced yet,
5788         since there didn't seem to be sufficient consensus on such a
5789         format on xdg-list.  (#117297)
5790         
5791 2003-08-08  Matthias Clasen  <maclas@gmx.de>
5792
5793         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
5794         Fix a segfault.  (#115284, Jan Kratochvil)
5795
5796 2003-08-08  Tor Lillqvist  <tml@iki.fi>
5797
5798         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
5799         coordinates for events that have such. Print coordinates for enter
5800         and leave events.
5801
5802         (gdk_event_translate): Don't use event uninitialixed in the
5803         return_exposes branch of the WM_PAINT handler.
5804
5805         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
5806         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
5807         Must offset top-level window coordinates here, too.
5808
5809 2003-08-08  Matthias Clasen  <maclas@gmx.de>
5810
5811         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
5812         when maximized or fullscreen.
5813
5814 2003-08-07  Tor Lillqvist  <tml@iki.fi>
5815
5816         * gdk/win32/gdkinput-win32.h
5817         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
5818         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
5819         used.
5820
5821         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
5822         accordingly, in fact an uninitialised variable was dereferenced.
5823         
5824
5825         [Win32] Add support for multiple monitors. 
5826         
5827         * gdk/win32/gdkprivate-win32.h
5828         * gdk/win32/gdkglobals-win32.c: New global variables for
5829         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
5830         _gdk_offset_x and _gdk_offset_y.
5831         
5832         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
5833         functions, enumeration functions passed to EnumDisplayMonitors().
5834
5835         (gdk_display_open): If the EnumDisplayMonitors() and
5836         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
5837         if to find out monitor info.
5838
5839         Calculate the offset between Win32 coordinates (relative to the
5840         primary monitor's origin (and thus negative on monitors to the
5841         left of or above it), and GDK's (visible coordinates should be
5842         non-negative).
5843         
5844         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
5845         gdk_screen_get_monitor_geometry): Use information collected above.
5846
5847         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
5848         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
5849
5850         (gdk_window_get_geometry, gdk_window_get_origin,
5851         gdk_window_get_frame_extents): For top-level windows, add
5852         _gdk_offset_{x,y} to GDK root window coordinates
5853
5854         Still need to handle multiple monitors in
5855         gdk_window_fullscreen(). Probably should make the window
5856         fullscreen on the monitor where the cursor is?
5857
5858         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
5859         root window coordinates in GdkEvents.
5860
5861         
5862         [Win32] Fix geometry hint handling. Add support for resize
5863         increment and base size, and aspect ratio geometry hints. The
5864         "gridded geometry" test in testgtk now works beautifully.
5865
5866         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5867         Turns out this function shouldn't actually ever modify the
5868         window's size, just store the hints. (Old code kept for a while
5869         inside #if 0.)
5870
5871         (gdk_window_set_hints): Remove presumably broken code that handles
5872         the position hints, this function is obsolete anyway.
5873
5874         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
5875         variables, not used.
5876
5877         (adjust_drag): New function, used to implement resize increment
5878         hints.
5879
5880         (gdk_event_translate): Handle WM_SIZING, implement resize
5881         increment and base size, and aspect ratio geometry hints here. The
5882         WM_GETMINMAXINFO handler takes care of the minimum and maximum
5883         size hints as before. Fix the WM_GETMINMAXINFO handler to take
5884         into account window decorations. No need to modify the
5885         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
5886         the defaults are fine.
5887         
5888         * gdk/win32/gdkprivate-win32.h 
5889         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
5890         _gdk_win32_get_adjusted_client_rect): New helper functions.
5891
5892 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5893
5894         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
5895         toplevel->have_* flags before iterating over the _NET_WM_STATE 
5896         atoms.  (#119217) 
5897
5898 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
5899  
5900         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
5901         Fix a bug where on theme change, resize/redraw wasn't
5902         properly getting queued on toplevel windows. (#116346,
5903         Rajkumar Siva)
5904  
5905         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
5906         Fix bug where wrong coordinates were used for toplevel
5907         window.
5908  
5909 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
5910
5911         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
5912         page_num variable (Archit Baweja)
5913
5914 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5915
5916         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
5917         cope with C libraries with crippled locale support.  (#115293)
5918
5919 2003-08-07  Hans Breuer  <hans@breuer.org>
5920
5921         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
5922         (only if the new window not known to Gdk) to get proper
5923         leave notification, and get rid of the wrong placed 
5924         tooltips, bug #102283
5925  
5926         (gdk_event_translate) : small code reordering to not get
5927         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
5928         menus, bug #117367
5929
5930 2003-08-07  Tor Lillqvist  <tml@iki.fi>
5931
5932         * gdk/gdk.def
5933         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
5934         missing function, trivially implement.
5935
5936 2003-08-07  Matthias Clasen  <maclas@gmx.de>
5937
5938         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
5939         rendering.  (#118646, Charles Kerr) 
5940
5941 2003-08-06  Hans Breuer  <hans@breuer.org>
5942
5943         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
5944         initialize bits to 0 (probably default on NT)
5945
5946         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
5947         now it works as intended ;-)
5948
5949 2003-08-04  Hans Breuer  <hans@breuer.org>
5950
5951         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
5952         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
5953
5954         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
5955         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
5956
5957         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
5958         against all expectations it is basically ony a call with WM_SETICON
5959         needed (the visual effect is there, though colors or mask are
5960         still somewhat wrong).
5961         * gdk/win32/gdkwindow-win32.h : place to store the HICON
5962
5963         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
5964         pixel drawing as it was fixed at 1999-08-23
5965
5966         gtk/gtk.def : updated
5967
5968 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
5969
5970         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
5971         Add a missing break. (#119156, Callum McKenzie)
5972
5973 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5974
5975         * gtk/gtkmenu.c (gtk_menu_position): New positioning
5976         algorithm.(#116649)
5977
5978 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
5979
5980         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
5981         property
5982         
5983         * gtk/gtkradiotoolbutton.c
5984         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
5985
5986         * gtk/gtkradiotoolbutton.c
5987         (gtk_radio_tool_button_new_with_stock_from_widget): make this
5988         function take a stock_id.
5989
5990         * gtk/toolbar: documentation
5991
5992 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
5993
5994         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
5995         Fix problem where use_xshm was getting set wrong if
5996         MIT_SHM wasn't found. (George Lebel)
5997
5998 2003-08-04  Tor Lillqvist  <tml@iki.fi
5999
6000         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
6001         actually use the passed-in filter list. The function also needs a
6002         GdkWindow parameter, as filter functions expect
6003         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
6004
6005 2003-08-03  Matthias Clasen  <maclas@gmx.de>
6006
6007         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
6008         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
6009         the term "virtual screen".  (#119030, Tor Lillqvist)
6010
6011 2003-08-02  Matthias Clasen  <maclas@gmx.de>
6012
6013         * tests/testtext.c (test_init): 
6014         * tests/testgtk.c (test_init): 
6015         * tests/testdnd.c (test_init): 
6016         * demos/pixbuf-init.c (pixbuf_init): 
6017         * demos/gtk-demo/main.c (main): Use g_setenv().
6018
6019         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
6020         g_unsetenv(). 
6021
6022 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
6023
6024         * configure.in: Requires glib-2.3.0, pango-1.2.0.
6025
6026         * configure.in: Require Xft version 2,
6027         remove code for handling older versions of pango and Xft.
6028         Many miscellaneous improvements to X checks
6029
6030         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
6031         a library to a variable, avoiding dups.
6032
6033         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
6034         Always load "fixed"
6035
6036         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
6037         for pangox.
6038
6039 2003-08-02  Matthias Clasen  <maclas@gmx.de>
6040
6041         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
6042         (palette_drop_handle): 
6043         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
6044         drops with the wrong format, since the KDE color chooser incorrectly
6045         drops application/x-color with format 8.  (#118810)
6046
6047         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
6048         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
6049         Accept drops with the wrong format, since the KDE color chooser 
6050         incorrectly drops application/x-color with format 8.  (#118810)
6051
6052 2003-08-02  Tor Lillqvist  <tml@iki.fi>
6053
6054         Fix gdk/win32 window geometry handling again. The window position
6055         in a GDK_CONFIGURE event should be that of the client area, not of
6056         the window decorations. (I was confused by the term "window
6057         border" in X11. It does *not* mean the window manager
6058         decorations. There are no X11-style window borders in Win32.)
6059         Also, this time do take the geometry hints into account
6060         appropriately when moving windows. Now testgtk's gravity test's
6061         move buttons work OK. There are stil problems with taking gravity
6062         into account when showing a hidden window.
6063
6064         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
6065         instead of separate fields.
6066         
6067         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
6068         adjust for decorations.
6069
6070         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
6071         adjust_for_gravity_hints): New functions.
6072         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
6073         above functions, take geometry hints into account.
6074         (gdk_window_set_geometry_hints): Size hints specicy client area,
6075         not including decorations.
6076
6077 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
6078
6079         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
6080         return an absolute path (#115590), fix a problem where
6081         you could crash the file selector with a looong name
6082         by returning a newly allocated buffer.
6083
6084 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
6085
6086         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
6087         bug in rarely or never hit code path (#118071,
6088         Tor Lillqvist)
6089
6090 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
6091
6092         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
6093         If the check for missing depths, try actually creating pixmaps
6094         of the depths to deal with Xinerama not reporting
6095         all the depths it should. (#115822)
6096
6097 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
6098
6099         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
6100         forward KeyRelease events as well as KeyPress events.
6101         (#115597)
6102
6103 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
6104  
6105         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
6106         if argc is 0 as well, instead of leaving it unset.
6107         (#116023, Michael Meeks)
6108  
6109 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6110
6111         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
6112         default to TRUE; ignore the property when api_mode != NEW_API
6113
6114 2003-07-31  Matthias Clasen  <maclas@gmx.de>
6115
6116         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
6117         to icon, to pacify gtk-doc.
6118
6119         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
6120         example. 
6121
6122 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6123
6124         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
6125
6126 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6127
6128         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
6129         overflow_item field.
6130
6131 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6132
6133         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
6134         an internal function
6135
6136         * gtk/gtktoolitem.h: remove unused declaration of
6137         _gtk_tool_item_get_drag_window().
6138
6139 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6140
6141         * gtk/gtktoolbutton.[ch]:
6142         (gtk_tool_button_new): swap icon_widget and label arguments to
6143         match BonoboUIToolbarButton.
6144
6145         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
6146
6147 2003-07-30  Matthias Clasen  <maclas@gmx.de>
6148
6149         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
6150         signal docs. 
6151
6152 2003-07-29  Tor Lillqvist  <tml@iki.fi>
6153
6154         Fix for #108007, #112402, #117042: There was confusion in
6155         gdk/win32 at various places whether a window position refers to
6156         the decoration position or the client area position. Also whether
6157         window size includes decorations or not.
6158         
6159         The correct interpretation apparently is that in GDK (like in
6160         X11), a top-level window position means the decoration's position,
6161         but size means the window's inner size (client area size). In the
6162         Win32 API, the window size usually includes the decorations,
6163         though.
6164         
6165         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
6166         #ifdef G_ENABLE_DEBUG.
6167         (handle_configure_event): New function, generates GDK_CONFIGURE
6168         events from WM_SIZE and WM_MOVE messages. Even if no event is
6169         generated because of the event mask, still set the private
6170         position and size fields. Calculate position and size correctly.
6171         (gdk_event_translate): Call handle_configure_event().
6172
6173         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
6174
6175         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
6176         macros. Cosmetic debugging output changes.
6177         (SafeAdjustWindowRectEx): Remove. If an application wants to
6178         locate a window outside of the screen, it's not GDK's business to
6179         prevent it. And anyway, with multiple monitors, negative
6180         coordinates are perfectly normal.
6181         (gdk_window_new): Adjust the window size for decorations after
6182         _gdk_window_init_position() has done its job. (But the big window
6183         code currently is presumably broken on Win32 anyway.)
6184         (gdk_window_move): The position passed in is supposed to be that
6185         of the window border, so don't need to adjust for decorations.
6186         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
6187
6188 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6189
6190         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
6191         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
6192         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
6193         gtk_toolbar_append_space, gtk_toolbar_insert_item,
6194         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
6195         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
6196         gtk_toolbar_new, gtk_toolbar_prepend_item):
6197
6198         Move documentation inline from template files.
6199
6200         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
6201         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
6202         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
6203         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
6204         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
6205         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
6206         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
6207
6208         Copy documentation from stable that was added after the EggToolbar
6209         branched.
6210
6211         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
6212
6213 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6214
6215         * gtk+/docs/: Commit autogenerated changes, so patches will make
6216         sense.
6217
6218 2003-07-27  Tor Lillqvist  <tml@iki.fi>
6219
6220         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
6221         the keyboard state returned by GetKeyboardState() doesn't
6222         distinguish between the left and right Control and Alt keys. Thus
6223         we cannot detect AltGr (which is supposed to be left Control +
6224         right Alt) the same way as on NT-based systems, but have to accept
6225         either Control + either Alt as AltGr.
6226
6227 2003-07-27  Matthias Clasen  <maclas@gmx.de>
6228
6229         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
6230         Fix function name in warning message.  (#118156, Tim-Philipp
6231         Mller)
6232
6233         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
6234         is-expander and is-expanded are boolean properties, not ints.
6235         (#118359, Josh Parsons)
6236
6237 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6238
6239         * gtk/gtkimagemenuitem.c
6240         (gtk_image_menu_item_toggle_size_request): don't request
6241         toggle_space when the image width is 0.
6242
6243 2003-07-25  Tor Lillqvist  <tml@iki.fi>
6244
6245         * gdk/win32/gdkprivate-win32.h
6246         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
6247         and _gdk_keyboard_has_altgr.
6248         
6249         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
6250         ones detailled here.
6251
6252         Code that has been ifdeffed out for a long time removed. Remove
6253         some really old doc comments that were left behind for some public
6254         functions, the official ones are in the X11 backend anyway. Change
6255         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
6256         multi-line boolean expressions to have the operators at ends of
6257         lines.
6258
6259         As mouse capture with SetCapture() indeed seems to work OK, no
6260         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
6261
6262         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
6263         needed at some time, and things seem to work fine now without
6264         (knock on wood).
6265
6266         Ifdef out the search for some Latin locale keyboard layout being
6267         loaded. Not used currently, but might be needed after all, if we
6268         decide that we want to be able to generate ASCII control character
6269         events with a non-Latin keyboard.
6270
6271         (assign_object): New helper function, handles the g_object_ref()
6272         and unref() calls when assigning GObject pointers.
6273                 
6274         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
6275         enter event when the pointer has moved to an ancestor window. Was
6276         left out by mistake.
6277
6278         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
6279
6280         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
6281         functionality, using ClipCursor().
6282                 
6283         (find_window_for_mouse_event): Splice part of code into new
6284         function find_real_window_for_grabbed_mouse_event().
6285
6286         (fixup_event, append_event, apply_filters): New functions, code
6287         refactored out from elsewhere.
6288
6289         (synthesize_enter_or_leave_event, synthesize_leave_event,
6290         synthesize_enter_event,
6291         synthesize_leave_events,synthesize_enter_events): Also take a
6292         GdkCrossingMode parameter, in preparation to generating
6293         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
6294
6295         (fixup_event, append_event, fill_key_event_string): New functions,
6296         code refactoring.
6297
6298         (vk_from_char, build_keypress_event, build_keyrelease_event):
6299         Removed as part of dropping WM_CHAR handling.
6300
6301         (build_key_event_state,gdk_event_translate): Call
6302         GetKeyboardState(), once, for each keyboard message, instead of
6303         several calls to GetKeyState() here and there.
6304
6305         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
6306         at it, do some major refactoring, and some fixes for potential
6307         problems noticed while going through the code.
6308
6309         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
6310         WM_KEYUP. Don't need the state variables related to whether to
6311         wait for WM_CHAR or not, and whether the current key is
6312         AltGr. Remove lots of complexity. Thus don't need the
6313         use_ime_composition flag.
6314
6315         Not handling WM_CHAR means dead key handling will have to be taken
6316         care of by GTK, but that seems to work fine, so no worry.
6317
6318         Another side-effect is that Alt+keypad digits don't work any
6319         longer, but it's better to learn to use GTK's ISO14755 support is
6320         anyway.
6321
6322         Be more careful in checking whether AltGr is involved. Only
6323         attempt to handle it if the keyboard actually has it. And
6324         explicitly check for *left* Control plus *right* Alt being
6325         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
6326         chars.
6327
6328         Handle keys using similar code as in the X11 backend. As we have
6329         built a keymap in gdkkeys-win32.c anyway, use it by calling
6330         gdk_keymap_translate_keyboard_state() to look up the keysym from
6331         the virtual key code and keyboard state. Build the key event
6332         string in exactly the same way as the X11 backend.
6333
6334         If an IME is being used, don't generate GDK events for keys
6335         between receiving WM_IME_STARTCOMPOSITION and
6336         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
6337         
6338         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
6339         the IME, not just the first one.
6340
6341         gdk_event_translate() is still quite complex, could split the
6342         message handler cases out into separate functions.
6343
6344         On mouse events, when the mouse is grabbed, use
6345         find_real_window_for_grabbed_mouse_event() in order to be able to
6346         generate correct crossing events.
6347         
6348         No longer take a pre-allocated GdkEvent as parameter. Instead,
6349         allocate events as needed and append them to the queue. (This is
6350         different from how gdk_event_translate() in the X11 backend
6351         works.) This change made the code much clearer, especially in the
6352         cases where we have to generate several GDK events for one Windows
6353         message.  Return FALSE if DefWindowProc() should be called, TRUE
6354         if not. If DefWindowProc() should not be called, also return the
6355         value to be returned from the window procedure.
6356
6357         (Previously, the interaction with gdk_event_translate()'s caller
6358         was much more complex, when we had to indicate whether the
6359         already-queued event should be left in the queue or removed, and
6360         in addition also had to indicate whether to call DefWindowProc()
6361         or not, and what value to return from the window procedure if
6362         not.)
6363
6364         Don't use a separate "private" variable required to be pointing to
6365         the GdkWindowObject of the "window" variable at all times. Just
6366         use casts, even if looks a bit uglier.
6367
6368         Notice destroyed windows as early as possible, and break out of
6369         the messsage switch.
6370
6371         Use _gdk_pointer_root as current_window when the pointer is
6372         outside GDK's top-level windows.
6373         
6374         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
6375         appropriate, based on ImmIsIME().
6376         
6377         (gdk_event_translate, gdk_event_send_client_message_for_display,
6378         gdk_screen_broadcast_client_message): Implement client messages.
6379         Use a registered Windows message to pass GDK client messages. Note
6380         that the amount of user data is restricted to four bytes, as it is
6381         carried in the LPARAM. (The WPARAM is used for the message type
6382         "atom".)
6383         
6384         (real_window_procedure): Adapt for new gdk_event_translate()
6385         interface.
6386
6387         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
6388         _gdk_input_locale_is_ime initially.
6389
6390         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
6391         of g_colormap_ref()/unref().
6392
6393         (gdk_window_new): Made code a bit more like the X11 one, pretend
6394         to handle screens (although we just have one for now).
6395
6396         * gdk/x11/gdkevents-x11.c
6397         (gdk_event_send_client_message_for_display,
6398         gdk_screen_broadcast_client_message): Document the user data
6399         limitation on Win32.
6400
6401         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
6402         and leave notify detail output.
6403
6404         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
6405         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
6406         for those, so that the GtkIMContextCimple compose tables will
6407         work. Deduce if the keyboard layout has the AltGr key, and set the
6408         above flag accordingly.
6409
6410 2003-07-26  Matthias Clasen  <maclas@gmx.de>
6411
6412         * gtk/gtkwidget.c: Document DND signals.
6413
6414 2003-07-24  Matthias Clasen  <maclas@gmx.de>
6415
6416         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
6417         insensitive when editing isn't possible.  (#118150)
6418
6419 2003-07-23  Matthias Clasen  <maclas@gmx.de>
6420
6421         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
6422         spinbutton wrap.  (#118097, John Darrington)
6423
6424         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
6425
6426 2003-07-20  Hans Breuer  <hans@breuer.org>
6427
6428         * makefile.msc : new file to build it all
6429         * Makefile.am : ... added to EXTRA_DIST
6430
6431         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
6432           gtk/makefile.msc.in tests/makefile.msc : updated
6433
6434         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
6435         functions
6436
6437         * gtk/gtkbbox.c : use g_return_val_if_fail() if
6438         there is a value to return
6439
6440         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
6441         static correctness
6442
6443         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
6444         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
6445
6446         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
6447
6448         * gtk/gtkimmulticontext.c : use gtkprivate.h
6449
6450         * gtk/stock-icons/stock_color_picker_25.png
6451           gtk/stock-icons/stock_jump_to_rtl_16.png
6452           gtk/stock-icons/stock_jump_to_rtl_24.png
6453           gtk/stock-icons/stock_redo_rtl_16.png
6454           gtk/stock-icons/stock_redo_rtl_24.png
6455           gtk/stock-icons/stock_undelete_rtl_16.png
6456           gtk/stock-icons/stock_undelete_rtl_24.png
6457           gtk/stock-icons/stock_undo_rtl_16.png :
6458           gtk/stock-icons/stock_undo_rtl_24.png :
6459         readded as binary
6460
6461 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6462
6463         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
6464         leftover request of {xy}thickness
6465
6466 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6467
6468         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
6469         attempt to add a NULL icon to the box.
6470
6471 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6472
6473         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
6474         on focus in/out.
6475
6476 2003-07-19  Matthias Clasen  <maclas@gmx.de>
6477
6478         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
6479         * gtk/gtkiconfactory.c (get_default_icons): Add
6480         stock_dialog_authentication_48.  (#65765) 
6481         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
6482         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
6483
6484         * gtk/gtkbbox.h: 
6485         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
6486         function. (#64562) 
6487
6488 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6489
6490         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
6491         declaration
6492
6493         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
6494         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
6495         instead of full draws.
6496
6497 2003-07-18  Matthias Clasen  <maclas@gmx.de>
6498
6499         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
6500
6501         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
6502         signal, move_viewport. 
6503         (gtk_text_view_move_viewport): New function which implements the
6504         move_viewport functionality. 
6505         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
6506         the viewport. (#78669) 
6507
6508         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
6509         move_viewport argument. 
6510
6511         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
6512         property.  (#111779) 
6513
6514         * gtk/gtkwindow.h: 
6515         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
6516
6517         * gtk/gtkmessagedialog.h:
6518         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
6519         (#65501, Sebastian Rittau)
6520
6521 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6522
6523         * gtk/gtktextview.c (changed_handler): use
6524         gtk_widget_queue_resize_noredraw().
6525
6526 2003-07-16  Jody Goldberg <jody@gnome.org>
6527
6528         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
6529
6530 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6531
6532         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
6533         API. 
6534
6535 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6536
6537         By popular request give toolbuttons a border.
6538         
6539         * gtk/gtktoolitem.c
6540         (gtk_tool_item_size_allocate):
6541         (gtk_tool_item_size_request): don't request and allocate a border
6542         around the child
6543
6544         * gtk/gtktoolbutton.c 
6545         (gtk_tool_button_size_allocate):
6546         (gtk_tool_button_size_request): remove these functions
6547
6548         * gtk/gtktoolbar.c 
6549         (gtk_toolbar_size_request):
6550         (gtk_toolbar_size_allocate): request and allocate a border if we
6551         have a shadow.
6552
6553 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
6554
6555         Merged from stable.
6556
6557         Fixes issues pointed out by Morten Welinder in #115140.
6558
6559         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
6560         (do_validate_rows): update validated_area with a logic OR instead
6561         of a bitwise OR,
6562         (validate_rows_handler): make the if statement match the one in
6563         validate_rows(), so we don't leak the timeout.
6564
6565 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
6566
6567         Merged from stable.
6568
6569         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
6570         should only grab focus back if the "cell_editable" widget still
6571         has focus. (Fixes #110104, testcase provided by Marco Pesenti
6572         Gritti).
6573
6574 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
6575
6576         Merged from stable.
6577
6578         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6579         Don't set attr.event_mask twice, those things were meant to be
6580         ORred. (#115139, pointed out by Morten Welinder).
6581
6582 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
6583
6584         Merged from stable.
6585
6586         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
6587         if needed. (Fixes #115869, reported by Michael Natterer).
6588
6589 2003-07-15  Matthias Clasen  <maclas@gmx.de>
6590
6591         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
6592         Fight against gtk-doc stupidity.
6593
6594 2003-07-13  Matthias Clasen  <maclas@gmx.de>
6595
6596         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
6597         targets, to pacify gtk-doc.
6598
6599 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6600
6601         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
6602         label_text, label_widget and icon_widget. (#117312, 
6603         Christian Persch)
6604         
6605 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6606
6607         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
6608         "horizontal-offset" and "vertical-offset" that determines the
6609         position of the menu when it is a submenu. 
6610
6611         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
6612         submenus according to new vertical- and horizontal-offset
6613         properties.
6614
6615 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
6616
6617         Merged from stable.
6618
6619         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
6620         case drags to "0", scroll to the top after dropping. (Fixes #94968,
6621         reported by Alp Toker).
6622
6623 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
6624
6625         Merged from stable.
6626
6627         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
6628         code (#115784, Owen Taylor).
6629
6630 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
6631
6632         Merged from stable.
6633
6634         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
6635         free the old text and extra_attrs *after* we parsed the new
6636         markup string. (Fixes #114485, reported by Owen Taylor).
6637
6638 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
6639
6640         Merged from stable.
6641
6642         Fixes #113904, testcase provided by Rene Seindal.
6643
6644         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
6645         pressed_button to -1 when a row has been activated,
6646         (gtk_tree_view_motion_bin_window): only start a drag if there's
6647         a button being pressed.
6648
6649 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
6650
6651         Merged from stable.
6652
6653         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
6654         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
6655         to avoid a roundtrip (#110272, Owen Taylor).
6656
6657 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
6658
6659         Merged from stable.
6660
6661         This patch really really fixes scrolling. Related bugs: #81627,
6662         testcase provided by Timo Sirainen, #111500, testcase provided by
6663         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
6664
6665         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
6666         which is equal to the lower border of the window means scrolling
6667         to an invisible row, always update the dy when scrolling to an
6668         invisible row, corrected area_above/below calculations for
6669         invisible rows, when walking the tree correct the size
6670         subtracted for invalidated rows, fix wrong logic in comment.
6671
6672 2003-07-11  Matthias Clasen  <maclas@gmx.de>
6673
6674         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
6675         mime_types.  (#117219, Steve Chaplin)
6676
6677 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
6678
6679         * gdk/x11/gdkevents-x11.c (get_real_window)
6680         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
6681         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
6682         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
6683         Don't assume that all events start with XEventAny - Xkb events
6684         don't! (#105745). So, only do that for core events, and for
6685         non-core events, add a system for registering event types
6686         that start with XEventAny.
6687
6688         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
6689         Check to see if the result of gdk_window_lookup_for_display()
6690         is actually a window.
6691
6692 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
6693
6694         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
6695         check a silent assert, so it follows the g_free() behaviour.
6696
6697 2003-07-11  Matthias Clasen  <maclas@gmx.de>
6698
6699         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
6700         vertically.  (#109823, Joe Shaw)
6701
6702 2003-07-11  Morten Welinder  <terra@gnome.org>
6703
6704         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
6705         access error.  (#69436)
6706
6707 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
6708
6709         Landing GtkTreeModelFilter and the completion code. (Test program
6710         and documentation will follow next week).
6711
6712         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
6713         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
6714
6715         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
6716         necessary code to hook up completion.
6717
6718         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
6719         GtkCellLayout interface.
6720
6721         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
6722
6723         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
6724         source files.
6725
6726 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
6727
6728         Merge from stable.
6729
6730         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
6731         directly return from ->window_at_pointer, but set win_x and win_y
6732         first if needed. (Fixes #110166, reported by Arno Charlet).
6733
6734         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
6735         function to accept GdkDrawables and not just GdkWindows. This was
6736         already done in some other functions a while back, but this patch
6737         got lost for some reason.
6738
6739 2003-07-09  Matthias Clasen  <maclas@gmx.de>
6740
6741         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
6742         direction when sorting children.  (#116540, Soeren Sandmann)
6743
6744 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
6745
6746         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
6747         Change _gdk_x11_send_xevent_async() to 
6748         _gdk_x11_send_client_message_async() avoid using Xlib
6749         internals that are different on Solaris. 
6750         (#116917, Morten Welinder)
6751
6752 2003-07-08  Matthias Clasen  <maclas@gmx.de>
6753
6754         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
6755         (#116501, Doug Quale)
6756
6757 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6758
6759         * gtk/gtktoggletoolbutton.h: remove strange #define
6760         * gtk/gtktoolbutton.h: fix cut'n'paste error
6761         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
6762         private data
6763         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
6764         private data instead of g_new0()
6765         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
6766         instance private data
6767
6768 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6769
6770         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
6771         for INPUT_ONLY window
6772         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
6773         * gtk/gtknotebook.c (gtk_notebook_realize): same
6774         * gtk/gtkexpander.c (gtk_expander_realize): same
6775         * gtk/gtkrange.c (gtk_range_realize): same
6776
6777         Fix #116303
6778
6779 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6780
6781         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
6782         when detail is "menuitem". With the new menu look is isn't needed
6783         anymore.
6784
6785         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
6786         resize here, so that tool items will get a chance to relayout
6787         themselves based on the toolbar configuration.
6788
6789         change DEFAULT_SPACE_SIZE to 4 instead of 5
6790
6791         * gtk/gtktoolbar.c 
6792         Get rid of "!GTK_BIN (item)->child means separator". Separators
6793         are widgets in their own right
6794
6795         change DEFAULT_SPACE_SIZE to 4 instead of 5
6796         
6797         (get_space_size): remove this function
6798         (toolbar_item_is_homogeneous): new function
6799
6800         * gtk/gtkseparatortoolitem.c
6801         (gtk_separator_tool_item_size_request): new function.
6802
6803 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6804
6805         * gtk/gtktoggletoolbutton.h: use private data, add new
6806         internal function _gtk_toggle_tool_button_get_button()
6807
6808         * gtk/gtktoolbutton.h: move to private data
6809
6810         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
6811         private data.
6812
6813 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6814
6815         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
6816         type check, (#116947, Krasimir Angelov)
6817
6818         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
6819         
6820         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
6821         data. Not instance private data yet, because of bug 116921.
6822
6823         * gtk/gtktoolitem.h: new accessors:
6824                 gtk_tool_item_get_homogeneous ()
6825                 gtk_tool_item_get_expand ()
6826                 gtk_tool_item_get_pack_end ()
6827                 gtk_tool_item_get_use_drag_window ()
6828
6829 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6830
6831         * gtk/gtkcellrenderertext.c
6832         (gtk_cell_renderer_text_class_init): remove accidentally committed
6833         debugging spew
6834
6835         * gtk/gtktoolbar.c
6836         (gtk_toolbar_paint_space_line): remove this function
6837         (gtk_toolbar_expose): always propagate expose, even if the item is
6838         a separator item
6839
6840         * gtk/gtkseparatortoolitem.c
6841         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
6842         (get_space_size): new function.
6843         (get_space_style): new function
6844
6845 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
6846
6847         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
6848         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
6849         of GDK_POINTER_MOTION_HINT_MASK.
6850
6851         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
6852         of the drag into an idle as a superior form of 
6853         expose compression.
6854
6855         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
6856         creation here, so that we have an icon at the start
6857         of the drag (e.g., when retrieving the window cache
6858         information.)
6859
6860 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6861
6862         * docs/widget_geometry.txt: better drawing of GtkMenuItem
6863         * docs/widget_geometry.txt: add notes about GtkMenu
6864         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
6865
6866 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
6867
6868         * gtk/gtkmenu.c: add vertical_padding style property.
6869         
6870         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
6871         arrow_spacing and horizontal_padding. Also center separators and
6872         make them a bit taller.
6873
6874         * gtk/*menuitem.c: use new style properties.
6875         
6876         * docs/widget_geometry.txt: Add note about GtkMenuItem
6877
6878         * gtk/gtkstyle.c 
6879         (gtk_default_draw_vline, gtk_default_draw_hline):
6880         fix +/-1 errors. 
6881
6882         (gtk_default_draw_shadow): draw a black border around menus.
6883
6884         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
6885         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
6886         x2 and y1, y2 respectively, not x, width and y, height).
6887
6888 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
6889
6890         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
6891         all the atoms in the target list at once.
6892
6893         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
6894         Local drag short-circuit.
6895
6896         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
6897         local case, poke the actions in directly instead of
6898         going through xdnd_set_actions.
6899
6900         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
6901         the local case.
6902
6903         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
6904         XSelectInput()/add a filter if the drag is local.
6905
6906         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
6907         Simplify handling of "XdndSelection".
6908
6909         * gdk/x11/gdkevents-x11.c
6910         (gdk_event_send_client_message_to_all_recurse): Somehow,  
6911         a WM_STATE => _NET_WM_STATE change hand been made here.
6912
6913         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
6914         xatom_names, not atom_names.
6915
6916         * tests/testdnd.c (target_drag_motion): Make the trashcan
6917         open again. (Got lost in deprecation cleanup.)
6918
6919 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
6920
6921         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
6922         earlier, so we don't get a big pile of uncompressed
6923         motion events before the grab takes effect.
6924
6925         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
6926         gdk_window_process_all_updates() so that the area
6927         we are dragging over gets a change to redraw.
6928
6929         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
6930         gdk_window_get_position(), not gdk_window_get_origin().
6931
6932         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
6933         gdkdisplay-x11.h: use XShapeQueryExtension to 
6934         avoid duplicate XQueryExtension when we actually
6935         use it. Remove unnecessary caching in GdkDisplayX11.
6936
6937 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
6938
6939         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
6940         Function to get a range of information about all the
6941         children of a window in a single pass.
6942
6943         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
6944         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
6945         _gdk_x11_get_window_child_info() to greatly reduce
6946         the number of roundtrips.
6947
6948 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
6949
6950         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
6951         a function to XSendEvent() and call a calback on
6952         failure/success.
6953
6954         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
6955         messages to the same process, use _gdk_send_xevent_async().
6956
6957 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
6958
6959         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
6960         toplevel-specific pieces of GdkWindowImplX11 into
6961         a separate GdkToplevelX11 structure.
6962
6963 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
6964
6965         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
6966         some leftover fields.
6967
6968 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
6969
6970         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6971         Use asynchronously _gdk_x11_set_input_focus_safe
6972         to avoid having to trap errors and XSync().
6973
6974         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
6975         _gdk_x11_set_input_focus_safe() here as well.
6976
6977         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
6978         Rework handling of property notifies on _NET_WM_STATE
6979         so that we ignore _NET_WM_DESKTOP notifies unless we
6980         really care.
6981
6982         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
6983         XShmQueryExtension() rather than XQueryExtension() to
6984         avoid extra rountrip.
6985
6986         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
6987         Remove unused call to XGetWindowAttributes()
6988         
6989         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
6990         unused call to XGetKeyboardControl().
6991
6992         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
6993         Add (#99571)
6994
6995         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
6996         No-op implementations of gdk_display_flush().
6997
6998         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
6999         gdk_display_flush() rather than gdk_flush() to avoid
7000         XSync().
7001         
7002         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
7003         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
7004         so that we don't have to get the property back from the server.
7005
7006         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
7007         the serial of when we map a toplevel to allow optimizing
7008         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
7009
7010         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
7011         XTranslateCoordinates() for override-redirect windows.
7012
7013 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
7014
7015         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
7016         about setting window group after the window is mapped from docs
7017         - nothing the ICCCM forbids that.
7018
7019         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
7020         Fix g_return_val_if_fail() in void return function.
7021
7022         * configure.in: Fix misplaced comma that was resulting
7023         in XShm always being disabled.
7024
7025 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7026
7027         * tests/stresstest-toolbar: remove this accidentally committed
7028         file.
7029         
7030         * tests/stresstest-toolbar.c: really add this new test
7031
7032 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7033
7034         * tests/stresstest-toolbar.c: new test for removing items
7035         
7036         * tests/testtoolbar.c: add a popup menu
7037
7038         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
7039           assert widget->parent == container when the container is a
7040           toolbar.
7041
7042         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
7043         simpler. Also make correct.
7044
7045         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
7046         popup_context_menu a boolean handled signal.
7047
7048 2003-07-04  Tor Lillqvist  <tml@iki.fi>
7049
7050         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
7051         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
7052         the width and height of the bounding rectangle only after the
7053         minumum x and y have been found, and need a separate loop for
7054         it. Thanks to Bruce Hochstetler for providing a sample program
7055         exhibiting the bug.
7056
7057 2003-07-03  Tor Lillqvist  <tml@iki.fi>
7058
7059         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
7060         (#116537, Peter Zelezny)
7061
7062 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7063
7064         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
7065         fix warning. Assign something to old_value to quiet gcc
7066
7067         * gtk/gtkcalendar.c 
7068         (start_spinning): gtk_timeout_add->g_timeout_add
7069
7070         * gtk/gtkicontheme.c 
7071         (theme_lookup_icon): Make it compile (remove double semicolon)
7072
7073         * gtk/gtktoolbutton.c
7074         (gtk_tool_button_class_init): Long comment about properties.
7075         (gtk_tool_button_class_init): Improve text for "use_underline"
7076         property
7077         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
7078         on whether the passed-in label has use_mnemonic set
7079         (gtk_tool_button_create_menu_proxy): Split image cloning out in
7080         new function. Make that function also handle image with pixbuf
7081         storage.
7082         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
7083         instead of gtk_container_remove().
7084         (gtk_tool_button_construct_contents): Fix eliding bug
7085
7086         * gtk/gtktoolbar.c
7087         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
7088         by Morten Welinder
7089         (gtk_toolbar_button_press): Make popup_context_menu signal provide
7090         coordinates and button number
7091
7092         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
7093
7094         * tests/apple-red.png: new file
7095
7096 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
7097          
7098         * gtk/gtkicontheme.[ch]: Implement a loader for
7099         named themed icon based on from gnome-desktop library
7100         by Alex Larsson.
7101
7102         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
7103         from gnome-desktop.
7104
7105         * gtk/gtkiconfactory.[ch]: Add
7106         gtk_icon_source_set/get_icon_name() to allow stock icons
7107         to be based off of named theme icons.
7108
7109         * gtk/gtkiconfactory.c: Rework sources so that the source
7110         is *either* a pixbuf, or a filename, or an icon name,
7111         instead of the pixbuf/filename mix it was before. Put a
7112         workaround for get_pixbuf() so that it can return the
7113         filename pixbuf, e.g, for render_icon().
7114
7115         * gtk/gtkiconfactory.c: Make the default setup use
7116         themed icons, and add builtin icons to the default
7117         icon theme for all the standard pixbufs, so we
7118         don't rely on actually having an icon theme on disk.
7119
7120         * gtk/gtkrc.c: Add support for @"icon-name" to specify
7121         a themed icon for a stock icon source.
7122
7123         * tests/Makefile.am test/testicontheme.c: Add a test
7124         program from gnome-desktop.
7125
7126         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
7127         Net/IconThemeName / gtk-icon-theme-name setting.
7128
7129         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
7130         update the icon cache serial so we don't continually
7131         think we are out-of-date.
7132
7133         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
7134         to ::direction_set that should have been to ::direction-changed
7135
7136 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
7137
7138         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
7139         style to the widget.
7140
7141 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7142
7143         * gtk/gtk.h: Add new toolbar headers
7144
7145         * tests/testtoolbar.c: new file
7146
7147         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
7148
7149         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
7150
7151 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7152
7153         * gtk/gtktoolbar.c:
7154         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
7155         inside a for loop (pointed out by Morten Welinder).
7156         (gtk_toolbar_focus_home_or_end): Minor formatting change
7157
7158         Comments from Owen:
7159
7160         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
7161         gtk_toolbar_elide_underscores instead.
7162
7163         * gtk/gtktoolbar.c: rename signal from focus_ends to
7164         focus_home_or_end.
7165         (_gtk_toolbar_elide_underscores): export this as an internal
7166         function.
7167         (gtk_toolbar_move_focus): add comment explaining difference to
7168         gtk_toolbar_focus();
7169         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
7170         TAB_BACKWARD focus the right widgets in RTL mode
7171
7172         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
7173         "label" and "icon" parameters
7174
7175         * gtk/gtktoolbutton.[ch]: remove icon_set property.
7176
7177 2003-07-01  Matthias Clasen  <maclas@gmx.de>
7178
7179         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
7180         (116364, Morten Welinder) 
7181
7182         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
7183         corresponding dialogs.
7184
7185         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
7186         gtkcolorbutton.h.  
7187         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
7188
7189         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
7190
7191         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
7192
7193         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
7194
7195         * gtk/gtkexpander.c: Small additions to the docs. 
7196
7197 2003-07-01  Tor Lillqvist  <tml@iki.fi>
7198
7199         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
7200         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
7201
7202 2003-07-01  Matthias Clasen  <maclas@gmx.de>
7203
7204         * configure.in: Check for Xcursor.
7205         
7206         * gdk/x11/gdkcursor-x11.c:
7207         * gdk/gdkdisplay.h: 
7208         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
7209         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
7210         gdk_display_supports_cursor_color(),
7211         gdk_display_get_default_cursor_size() and 
7212         gdk_display_get_maximal_cursor_size().  (#69436)
7213
7214 2003-06-30  Tor Lillqvist  <tml@iki.fi>
7215
7216         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
7217         callback proc for EnumWindows().
7218         (gdk_drag_find_window_for_screen): Actually take the drag_window
7219         argument into account: Instead of using WindowFromPoint(), use
7220         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
7221         M Brown, Herman Bloggs)
7222
7223         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
7224         gdk_window_ref()/unref() calls with g_object_ref()/unref().
7225         Consistently use %p format in debugging output of pointers and
7226         HANDLEs.
7227
7228 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
7229
7230         * gtk/gtkexpander.h: kill some stray characters
7231         breaking the build.
7232
7233 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
7234
7235         Add GtkExpander. See discussion in bug #60553.
7236
7237         * gtk/gtkexpander.[ch]: add.
7238         
7239         * gtk/Makefile.am: build gtk-expander.[ch].
7240         
7241         * docs/widget_geometry.txt: add info on the layout
7242         of GtkExpander.
7243
7244 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7245
7246         * gtkradiotoolbutton.c:         new file
7247         * gtkradiotoolbutton.h:            "
7248         * gtktoggletoolbutton.c:           "
7249         * gtktoggletoolbutton.h:           "
7250         * gtktoolbutton.c:                 "
7251         * gtktoolbutton.h:                 "
7252         * gtktoolitem.c:                   "
7253         * gtktoolitem.h:                   "
7254         * gtktoolbar.c: many changes
7255         * gtktoolbar.h: many changes
7256         * gtkseparatortoolitem.c:       new file
7257         * gtkseparatortoolitem.h           "
7258
7259         New toolbar.
7260         
7261         - Items on a toolbar are now separate widgets, instances of a
7262           subclass of GtkToolItem.
7263
7264         - Items there aren't room for on the toolbar are unmapped, and an
7265           overflow menu with a proxy menu item is added instead.
7266
7267         - The toolbar is keyboard navigatable. Press TAB to focus the
7268           first item, then use arrow keys and Ctrl TAB to move around the
7269           toolbar. TAB moves focus out of the toolbar.
7270
7271         - Bascially all of the old toolbar API is deprecated in favor of
7272           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
7273
7274         - The toolbar is backwards compatible with the old toolbar.
7275
7276 2003-06-29  Matthias Clasen  <maclas@gmx.de>
7277
7278         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
7279         from docs, some more formatting fixes. 
7280
7281 2003-06-28  Tor Lillqvist  <tml@iki.fi>
7282
7283         Fix for #111028, thanks to J. Ali Harlow, who writes:
7284         I found that the GdkPixmap->GdkImage reference really isn't
7285         important. It's only really there to have somewhere convenient to
7286         store the location of the pixel data in the pixmap and as an easy
7287         way of accessing the dimensions of that data. I have therefore put
7288         together a fix which removes this reference entirely which seems
7289         to solve the problem.
7290
7291         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
7292         Instead of a pointer to a GdkImage, keep a pointer to the pixels
7293         directly.
7294
7295         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
7296         (_gdk_win32_new_image): New function, replacing the above. Creates
7297         a GdkImage without any associated GdkPixmap.
7298         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
7299
7300         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
7301
7302         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
7303         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
7304         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
7305         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
7306         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
7307         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
7308         Corresponding changes.
7309
7310 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7311
7312         * gtk/gtktreeviewcolumn.c
7313         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
7314         and "is_expanded" if the new value is different fromt he old one.
7315
7316 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
7317
7318         * docs/faq/gtk-faq.sgml: Fix typos. Update
7319         thread example I missed yesterday.
7320
7321 2003-06-24  Matthias Clasen  <maclas@gmx.de>
7322
7323         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
7324         shadow_type. 
7325
7326         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
7327         (gtk_widget_class_list_style_properties): Use same parameter names as in  
7328         header (to silence gtk-doc).
7329
7330         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
7331
7332 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
7333
7334         * docs/faq/gtk-faq.sgml: Thread support updates
7335         from Owen. Various suggestions from Steve Chaplin.
7336
7337 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
7338
7339         * po/id.po: Updated Indonesian translation
7340
7341 2003-06-21  Tor Lillqvist  <tml@iki.fi>
7342
7343         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
7344         emulating X11's automatic grab on button down, pass owner_events
7345         as FALSE. According to the XLib spec, automatic grabs use True for
7346         owner_events when OwnerGrabButtonMask is selected, and I don't see
7347         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
7348         (find_window_for_pointer_event): Improve debugging output.
7349
7350 2003-06-17  Tor Lillqvist  <tml@iki.fi>
7351
7352         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
7353         subdirectory, where libtool 1.5 installs them.
7354
7355         * README.win32: Point to FSF's binary Win32 distribution of
7356         gettext-runtime.
7357
7358 2003-06-17  Matthias Clasen  <maclas@gmx.de>
7359
7360         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
7361         macros to check for XML catalog contents and path, borrowed from
7362         gtk-doc. 
7363         * configure.in: New option --enable-man to enable regeneration of
7364         man pages from Docbook, if the necessary tools are found.
7365
7366 2003-06-15  Matthias Clasen  <maclas@gmx.de>
7367
7368         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
7369         * gtk/gtknotebook.c (gtk_notebook_class_init): 
7370         * gtk/gtkalignment.c (gtk_alignment_class_init): 
7371         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
7372         as 2.4 additions.
7373
7374         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
7375         to the proper place, immediately before the g_signal_new() call.
7376
7377         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
7378         more obvious.  (#115122, Jeff Franks)
7379
7380 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
7381
7382         * gtk/gtkwidget.c: (event_window_is_still_viewable):
7383         Special case pixmaps. (#114880)
7384         
7385 2003-06-12  Matthias Clasen  <maclas@gmx.de>
7386
7387         * gtk/gtkwidget.c: Document child-notify and drag-data-received
7388         signals. Owen, we need to figure out where the best place for
7389         these comments in the source is. I currently put them in front of
7390         the signals enum.
7391
7392 2003-06-11  Matthias Clasen  <maclas@gmx.de>
7393
7394         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
7395
7396 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
7397
7398         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7399         silly typo fix. s/seperator/separator/. This gets rid of the
7400         assert spam when using TreeView.
7401
7402 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7403
7404         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
7405         function for XIM instantiate callback.
7406         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
7407         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
7408         actually made.
7409         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
7410         for XIM's destroy callback.
7411         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
7412         is set or not - if it's not set, call xim_info_try_im() to try to
7413         initiaize it.
7414         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
7415         filter_key_release flag of the context.
7416         * modules/input/gtkimcontextxim.c (get_ic_real): removed
7417         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
7418         code from the removed get_ic_real().
7419
7420         For XIM instantiation, destruction and re-instantiation. With
7421         this, Gtk+ apps will be able to connect or reconnect to the XIM,
7422         when it starts after the apps, or when the XIM gets lost and recover.
7423         (#113099, #107782).
7424
7425 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
7426
7427         Merged from stable.
7428
7429         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
7430         check if width is !null, not *width. Doh.
7431
7432 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
7433
7434         Merged from stable.
7435
7436         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7437         Remove the weird dx logic, get all cell_area and background_area
7438         calculations right. Not sure what was up with it before. (Fixes
7439         #110989, testcase from Vasco Alexandre da Silva Costa).
7440
7441 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7442
7443         * tests/testgtk.c: Make it compile with C89 compilers
7444
7445 2003-06-10  Matthias Clasen  <maclas@gmx.de>
7446
7447         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
7448         property "overwrite".
7449         (gtk_text_view_[gs]et_property): Handle "overwrite".
7450         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
7451         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
7452
7453 2003-06-09  Matthias Clasen  <maclas@gmx.de>
7454
7455         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
7456         properties "resize" and "shrink".
7457         (gtk_paned_[gs]et_child_property): Implementations of 
7458         GtkContainer::[gs]et_child_property.  
7459         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
7460         paned child properties instead of remove/add hacks.  (#114667, 
7461         Soeren Sandmann) 
7462
7463 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
7464
7465         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
7466         out event->window test - it wasn't needed because
7467         of the call to get_widget_coordinates().
7468
7469         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
7470         call to gtk_widget_grab_focus() when not clicking on
7471         any tabs. (Real fix for #114534)
7472
7473 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
7474
7475         * tests/testdnd.c: Use application/x-rootwindow-drop for
7476         root window drops. (#108670, Alex Larsson)
7477
7478         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
7479         Accept either application/x-rootwin-drop (what GTK+ has always used)
7480         or application/x-rootwindow-drop (what the XDND standard specifies).
7481
7482 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
7483
7484         * gtk/gtkwidget.c (event_window_still_viewable): 
7485         Before delivering an event to a widget, check that
7486         (if relevant), the event's window is still viewable.
7487         (#105642, Dennis Björklund)
7488
7489         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
7490         NULL out private->parent, since after destruction
7491         it might not be valid any more.
7492
7493         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
7494         accesses before g_return_val_if_fail(). Treat 
7495         DESTROYED windows as unmapped.
7496
7497 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
7498
7499         * gtk/gtkentry.c: Recompute unconditionally in
7500         gtk_entry_style_set, and in a new gtk_label_screen_changed().
7501         Protect the guts of recompute_idle_func() with
7502         gtk_widget_has_screen(). (#114040, Morten Welinder) 
7503         Fix FALSE/0 confusion.
7504         
7505 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7506
7507         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
7508         Fixes (#114669)
7509
7510 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
7511
7512         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
7513         set_adjustment (viewport, NULL);
7514
7515 2003-06-07  Matthias Clasen  <maclas@gmx.de>
7516
7517         * gtk/gtkiconfactory.c (get_default_icons): 
7518         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
7519         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
7520         undelete and revert.  (#96633)
7521         
7522 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
7523
7524         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
7525         refactoring of code to reduce duplication; fixes include:
7526
7527         - gtk_viewport_realize(): Position the window correct from adjustment 
7528         values. (#110737, Michael Natterer)
7529
7530         - Remove some division-by-zero checks in places where there is no 
7531         longer division. (#110737)
7532
7533         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
7534         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
7535         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
7536
7537         - Switch over to encapsulated lazy-creation for hadjustment/
7538         vadjustment; even with the CONSTRUCT property, we need this after
7539         destroy.
7540
7541         - When updating the adjustment, immediate set their values to
7542         match the the current range of the viewport, and update the 
7543         viewport position to match the value of the new adjustments. 
7544         (Part of #1165)
7545
7546 2003-06-06  Tor Lillqvist  <tml@iki.fi>
7547
7548         * gdk/win32/gdkprivate-win32.h: Fix typo.
7549
7550         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
7551         graphics_exposures and subwindow_mode, too, even if they aren't
7552         currently used.
7553
7554 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
7555
7556         Merged from stable.
7557
7558         * gtk/gtktreeview.c (do_expand_collapse),
7559         (expand_collapse_timeout), (cancel_arrow_animation): made
7560         expand_collapse_timeout a wrapper with locks around     
7561         do_expand_collapse, made cancel_arrow_animation use
7562         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
7563         Peter Bloomfield).
7564
7565 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7566
7567         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
7568         * modules/input/gtkimcontextxim.c (preedit_start_callback,
7569         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
7570         to keep preedit-[start,changed,end] signals from being called during
7571         finalization (#111861).
7572
7573 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
7574
7575         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
7576         presses that are not on the tab (#114534).
7577
7578 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
7579
7580         * demos/Makefile.am: Conditionalize dependencies for
7581         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe). 
7582         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
7583         test-inline-pixbufs.h if we don't have libpng.
7584
7585         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
7586         Add a dependency on gdk-pixbuf.loaders when not 
7587         cross-compiling, remove the dependency on gdk-pixbuf-csource
7588         when not cross compiling.
7589
7590 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
7591
7592         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
7593         gtk_window_get_geometry_info() returning NULL.
7594         (#107311, John Finlay)
7595
7596 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
7597
7598         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
7599         twice the border width from the width/height, not
7600         1x the border width. (#106336, Rodney Dawes)
7601
7602 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
7603  
7604         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7605         If at the end of the buffer, move to the end iter -
7606         parallels behavior of move_iter_to_previous_line.
7607         (#81960, Padraig O'Briain)
7608  
7609 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
7610
7611         #80023, Yao Zhang, TOKUNAGA Hiroyuki
7612
7613         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
7614         Account for the preedit cursor offset if the iter passed
7615         in is at the same place as the insertion cursor.
7616
7617         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
7618         Encapsulate getting the insertion cursor location.
7619
7620         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
7621         Pass the real y/height to the IM context. Take 
7622         text_view->x/yoffset into account.
7623
7624 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
7625
7626         * gtk/gtktextview.[ch]: Never scroll on focus in
7627         (#81893, Patch from Paolo Maggi)
7628
7629         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
7630         Scroll to the current cursor location before handling
7631         the action, in case the user just tabbed in
7632         and the cursor is offscreen.
7633
7634 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
7635          
7636          #107883, Gustavo Giráldez
7637
7638         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
7639         Split out the case where we know we changed, and 
7640         already dealt with our cached line being invalidated
7641         from external calls to gtk_text_layout_changed.
7642
7643         * gtk/gtktextlayout.c (gtk_text_layout_changed):
7644         Check if the invalidate yrange intersects our
7645         cached line, and clear it if necessary.
7646
7647 2003-06-05  Tor Lillqvist  <tml@iki.fi>
7648
7649         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
7650         filters.
7651
7652 2003-06-05  Matthias Clasen  <maclas@gmx.de>
7653
7654         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
7655         (gtk_text_view_grab_notify): 
7656         (gtk_text_view_state_changed): Implement these
7657         to unobscure cursor when grab shadowed or insensitised.
7658         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
7659         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
7660         gtk_text_view_motion_event().
7661         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
7662
7663         * gtk/gtktextview.c (select_all): New keybinding signal for
7664         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
7665
7666         * gtk/gtkcalendar.c (calendar_timer): 
7667         (stop_spinning): Replace deprecated gtk_timeout_* functions by
7668         their GLib counterparts.  (#114429)
7669
7670         * gtk/gtktreestore.c (gtk_tree_store_new): 
7671         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
7672         types.
7673
7674 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
7675
7676         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
7677         When drawing underlines, join up adjacent runs
7678         where possible, so we don't get changes in 
7679         shaper/font/etc. breaking underlines. (#103662,
7680         Kang Jeong-Hee)
7681
7682 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
7683
7684         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
7685         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
7686         improve the speed of inserting rows into an already sorted list,
7687         #109292
7688
7689 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
7690
7691         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
7692         track of when we have a clip mask set for the GC,
7693         and when we unset it, or switch to a clip region,
7694         immediately call XSetClipMask (..., None) to avoid
7695         Xlib caching stale data. (#111806)
7696
7697         * gtk/gtktextdisplay.c: Don't set a clip mask
7698         when drawing alpha pixmaps; it isn't necessary any more.
7699         (#111806)
7700
7701 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
7702
7703         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
7704         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
7705         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
7706         (#92548, Tim Evans)
7707
7708         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
7709         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
7710         Use state_type = STATE_INSENSITIVE for insensitive menu items.
7711
7712 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
7713
7714         Merged from stable.
7715
7716         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
7717         assert for get_info. (reported by Michael Natterer),
7718         (gtk_tree_view_expand_all_emission_helper),
7719         (gtk_tree_view_expand_all_helper): emit row_expanded for all
7720         expanded rows during an _expand_all operation. (Fixes #111280,
7721         reported by Benjamin Bayart).
7722
7723 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
7724
7725         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
7726         respond to pings on a root window; prevents infinite
7727         loops if we are selecting for SubstructureNotify on the
7728         root window. (#111945, Sergey V. Udaltsov)
7729
7730 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
7731
7732         #71597, reported by Morten Welinder
7733
7734         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
7735         (Patch from Christian Petig)
7736
7737         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
7738         Major rewrite of 555 and 565 conversion routines:
7739
7740         - Move all the bit shifting into a small block of macros,
7741           eliminating much duplication of complicated arithmetic.
7742         - Get rid of 2-pixels at a time code, which was buggy,
7743           hard to maintain, caused unaligned accesses, and
7744           probably didn't actually perform any better.
7745         - Simplify cases where different data types were
7746           used for the little and big endian cases, use
7747           GUINT16_SWAP_LE_BE() where appropriate.
7748                 
7749 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
7750
7751         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
7752         bad optimization for src_rowstride == dest_stride.
7753         (Didn't consider the case where we were copying only
7754         partial widths of a wider source buffer)
7755         (#113034, reported by Hans Petter Jansson)
7756
7757 2003-06-03  Michael Natterer  <mitch@gimp.org>
7758
7759         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
7760         reenabled button_release events for xinput devices. (#113948)
7761
7762 2003-06-03  Christian Rose  <menthos@menthos.com>
7763
7764         * configure.in: Added "li" to ALL_LINGUAS.
7765
7766 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
7767
7768         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
7769         map the event window if the notebook isn't mapped. (#113980,
7770         Richard Reich)
7771
7772 2003-06-02  Sven Neumann  <sven@gimp.org>
7773
7774         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
7775
7776         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
7777
7778 2003-06-01  Matthias Clasen  <maclas@gmx.de>
7779
7780         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
7781         Since: 2.4 to the docs.
7782
7783         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
7784         an example to the docs.  (#98427)
7785
7786 2003-05-30  Murray Cumming  <murrayc@usa.net>
7787
7788         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
7789         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
7790         uses the new private data system - see g_type_class_add_private() in
7791         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
7792
7793 2003-05-30  Matthias Clasen  <maclas@gmx.de>
7794         
7795         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
7796         signature of gtk_notebook_draw_arrow() for Solaris builds to go
7797         through.  (#114043, Anand Subramanian)
7798
7799 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7800
7801         * modules/input/imipa.c: 
7802         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
7803
7804 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7805
7806         * gtk/gtkimmodule.c (_gtk_im_module_list):
7807         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
7808
7809 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7810
7811         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
7812         label of default input method localizable.
7813         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
7814         use translations of input method context names
7815         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
7816           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
7817           modules/input/imti-er.c, modules/input/imti-et.c
7818           modules/input/imviqr.c, modules/input/imxim.c
7819         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
7820         (#113850).
7821
7822 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
7823
7824         Merged from stable.
7825
7826         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
7827         grab separate, the user might clear the tree in the focus-in
7828         callback. (Fixes #113086, testcase from Felipe Heidrich).
7829
7830 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
7831
7832         Merged from stable.
7833
7834         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
7835         of row reference when we unset the model. Also reset
7836         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
7837
7838 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
7839
7840         Merged from stable.
7841
7842         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
7843         the current editing, if it exists. (Fixes #108956, reported by
7844         Michael Natterer).
7845
7846 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
7847
7848         Merged from stable.
7849
7850         * gtk/gtktreeview.c (check_selection_helper): new function,
7851         (gtk_tree_view_row_deleted): traverse the tree from the
7852         deleted node to see whether the selection changed, instead of
7853         just checking this node. (Fixes #107400, reported by 'Duncan').
7854
7855 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
7856
7857         Merged from stable.
7858
7859         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
7860         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
7861         instead of _maybe_begin_dragging_row, so the icon can be
7862         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
7863
7864 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
7865
7866         Merged from stable.
7867
7868         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
7869         cell_area x/width for the expander if needed. (Fixes #101748,
7870         reported by Dave Cook and Mariano Suarez-Alvarez).
7871
7872 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
7873
7874         Merged from stable.
7875
7876         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
7877         if tree/node are still the same after _internal_select_node.
7878         (Fixes #92256, reported by edscott).
7879
7880 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
7881
7882         Fixes #75745, reported by Richard Hult. Merged from stable.
7883
7884         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
7885         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
7886         cursor or not.
7887
7888         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7889         if we are rendering a cursor row, and the cell the be
7890         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
7891         flag (else we unset it).
7892
7893 2003-05-27  Matthias Clasen  <maclas@gmx.de>
7894
7895         * gtk/gtkwindow-decorate.c: 
7896         * gtk/gtktreeprivate.h: 
7897         * gtk/gtkdnd.c: 
7898         * gdk/win32/gdkwindow-win32.h: 
7899         * gdk/linux-fb/gdkprivate-fb.h: 
7900         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
7901         unspecified signedness.  (#112919, Morten Welinder)
7902
7903         * gtk/queryimmodules.c (escape_string): 
7904         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
7905         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
7906         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
7907         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
7908         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
7909         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
7910         Morten Welinder) 
7911
7912 2003-05-27  Tor Lillqvist  <tml@iki.fi>
7913
7914         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
7915         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
7916
7917         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
7918         win32/libgdk-win32.la.
7919
7920         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
7921
7922 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
7923
7924         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
7925         scrollbar slider length 21 instead of 7.
7926
7927 2003-05-23  Matthias Clasen  <maclas@gmx.de>
7928
7929         * gtk/gtknotebook.c: Add support for up to four scroll
7930         arrows. Control their display by new style properties
7931         "has_forward_stepper", "has_backward_stepper",
7932         "has_secondary_forward_stepper" and
7933         has_secondary_backward_stepper". (#110540)
7934
7935         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
7936         click_child three bits wide, add
7937         has_{before,after}_{previous,next} fields.
7938
7939         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
7940         focus out of hex_entry.  (#112665)
7941         (hex_focus_out): New signal handler for focus out of hex entry.
7942
7943 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
7944
7945         * gtk/gtkwidget.c (gtk_widget_realize): 
7946         g_return_if_fail() if
7947         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
7948         (#107872, Christian Reis)
7949
7950 2003-05-22  Matthias Clasen  <maclas@gmx.de>
7951
7952         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
7953         (gtk_file_selection_rename_file): Some keynav improvements for the
7954         "Rename File" and "Create Directory" subdialogs: Enter in entry
7955         activates default, default is "Create"/"Rename", Escape cancels
7956         dialog.  (#113110)
7957         (gtk_file_selection_set_filename): Add a hint about opening 
7958         directories.  (#113175)
7959
7960 2003-05-22  Matthias Clasen  <maclas@gmx.de>
7961
7962         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
7963         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
7964         anyway.  (#113476)
7965
7966 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
7967
7968         * gtk/gtkprogress.c (gtk_progress_set_format_string,
7969         gtk_progress_set_show_text): Always queue a resize ... 
7970         we rely on the size-allocate to do the update, plus a 
7971         different format can actually change our size requisition.
7972         (#111052, Vasco Alexandre da Silva Costa)
7973
7974         * gtk/gtkprogress.c (gtk_progress_changed): Track
7975         ::changed as well as ::value_changed, and queue a
7976         resize on ::changed when necessary.
7977
7978         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
7979         Call gtk_progress_changed() here to update or 
7980         queue a resize as necessary.
7981
7982 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7983
7984         * gtk/gtkimcontextsimple.c: added composing rules of
7985         Greek accented letters, patch by Vasilis Vasaitis (#107507)
7986
7987 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7988
7989         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
7990         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
7991         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
7992
7993 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
7994
7995         * gtk/gtkimcontextsimple.c: 
7996         code that can check the compose table for ascending order,
7997         by Vasilis Vasaitis (#104862).
7998
7999 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
8000
8001         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
8002         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
8003         to handle the case where a modifier not in the mask
8004         (like Num_Lock) changes the key value, so replace
8005         the masked state with a state/mask pair. (#106913,
8006         Olivier Ripoll)
8007
8008         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
8009         in state/mask pair to _gtk_key_hash_lookup()
8010
8011 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
8012
8013         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
8014         fix a memory leak, free input context list (#113259).
8015
8016 2003-05-21  Matthias Clasen  <maclas@gmx.de>
8017
8018         * configure.in (all_loaders): Add pcx.
8019
8020         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
8021
8022 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
8023
8024         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
8025         accept a missing gtk.immodules file, some people
8026         want to run without one. (#112406, patch from
8027         Arnaud Charlet)
8028
8029 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
8030
8031         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
8032         height/width confusion (#113370, Xan Lopez)
8033
8034 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
8035
8036         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
8037         zero all unused parts of client messages (Mainly Motif DND
8038         and EWMH). Also, fix a couple places where we were putting
8039         contents into Motif DND messages that didn't belong.
8040         (#113361, EWMH problem reported by Lubos Lunak)
8041
8042         * gtk/gtkselection.c (_gtk_selection_request): Handle the
8043         case where the property type for the multiple atoms is
8044         ATOM_PAIR by doing the conversions ourselve. This is
8045         needed for Xt inter-operation.
8046
8047 2003-05-19 Arafat Medini <lumina@silverpen.de>
8048
8049         * configure.in: Added ar to ALL_LINGUAS
8050
8051 2003-05-19  Matthias Clasen  <maclas@gmx.de>
8052
8053         * gtk/gtksettings.c (gtk_rc_property_parse_border,
8054         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
8055         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
8056         Add docs.
8057
8058         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
8059         gtk_widget_class_install_style_property_parser): Add docs. 
8060
8061 2003-05-17  Matthias Clasen  <maclas@gmx.de>
8062
8063         * tests/prop-editor.c: Add navigation for object properties, so
8064         that you can easily edit the properties of the parent of a widget.
8065         (#113152)
8066
8067 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
8068
8069         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
8070         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
8071         inconsistency and leave the old name as an aliass (#104873)
8072
8073 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
8074
8075         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
8076         from Charles Schmidt to add missing notify (#108305)
8077
8078 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
8079  
8080         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
8081         (#105500, Morten Welinder.)
8082  
8083 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
8084
8085         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
8086         instead of gumake for XNFilterEvents event mask(#110493).
8087
8088 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
8089
8090         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
8091         a GObject. (#112762)
8092
8093 2003-05-08  Sven Neumann  <sven@gimp.org>
8094
8095         * configure.in: set the HAVE_X11R6 automake conditional to false
8096         if not compiling for X11.
8097
8098 2003-05-08  Matthias Clasen  <maclas@gmx.de>
8099
8100         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
8101         (gtk_calendar_get_display_options): New functions.
8102         (gtk_calendar_display_options): Depreate.  (#64567)
8103         (gtk_calendar_class_init): Add boolean properties for the display
8104         options.  (#50949)
8105
8106 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
8107
8108         Patch from James Henstridge to update to automake-1.7
8109         (#109542)
8110  
8111         * autogen.sh: update to call newer tools.
8112  
8113         * configure.in: various updates, to use M4 macros to put
8114         variables that change each release at the top.
8115         Use AC_HELP_STRING to format help strings.
8116         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
8117  
8118         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
8119         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
8120         during distcheck.
8121  
8122         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
8123         makefile fragment.
8124  
8125         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
8126         Use BUILT_SOURCES where appropriate.
8127         Build generated files in builddir rather than srcdir.
8128         Fix uninstall and distclean targets to satisfy distcheck.
8129
8130         ===
8131
8132         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
8133         built first, since we are now using BUILT_SOURCES.
8134
8135         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
8136
8137         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
8138         with geninclude.pl.
8139
8140         * configure.in: Update versions to 2.3.0.
8141  
8142 2003-05-06  Tor Lillqvist  <tml@iki.fi>
8143
8144         Fix for #110165 (thanks to Arnaud Charlet):
8145         
8146         * gdk/win32/gdkevents-win32.c (build_keypress_event,
8147         build_keyrelease_event): For unshifted control char, use
8148         lowercase ASCII keyval.
8149         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
8150         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
8151         lowercase keyval. Use build_key_event_state() here, too, instead
8152         of minor code duplication.
8153
8154 2003-05-06  Matthias Clasen  <maclas@gmx.de>
8155
8156         * tests/testmultidisplay.c: Don't include strings.h, it's not
8157         needed anymore.  (#112388)
8158
8159         * examples/menu/itemfactory.c: 
8160         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
8161         itemfactory example.
8162
8163 2003-05-05  Matthias Clasen  <maclas@gmx.de>
8164
8165         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
8166         icon type to the stock icon type.  (#111735, Dave Bordoley)
8167
8168 2003-05-05  Christian Rose  <menthos@menthos.com>
8169
8170         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
8171         Removed sp, it's replaced by sr@Latn.
8172
8173 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
8174
8175         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
8176         Gonzalo Odiard
8177
8178 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
8179
8180         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
8181         data iff the destroy func isn't NULL.
8182
8183 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
8184
8185         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
8186
8187 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
8188
8189         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
8190
8191 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
8192
8193         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
8194         of UTF-8. (#106419, Roozbeh Pournader)
8195
8196 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
8197
8198         * configure.in: Only check for XFT2 if we found pango-xft
8199         (#105692, Jon Nall)
8200
8201 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
8202
8203         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
8204         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
8205
8206 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
8207
8208         * docs/faq/gtk-faq.sgml: add note about version converage.
8209
8210 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
8211
8212         * gtk/gtksocket.c (activate_key): Fix prototype for
8213         activate_key. (#108927, Jason D. Hildebrand)
8214
8215 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
8216
8217         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
8218         Remove geninclude.pl from CVS and don't dist it either,
8219         it is generated. (#108970, Rich Kinder)
8220
8221 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
8222
8223         * gtk/gtkobject.h: Remove a couple of obsolete comments,
8224         fix another comment. (#109737, Britton Kerin)
8225
8226 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
8227
8228         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
8229         the source list, not just it's contents (Patch
8230         from Charles Kerr, #108243)
8231
8232 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
8233
8234         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
8235         from Alex Larsson fixing problem with restacking during
8236         DND. (#108671)
8237
8238 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
8239
8240         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
8241         Calling XFlush() after ungrabbing, to avoid problems if
8242         the app subsequently blocks on a long-running operation.
8243         (#106520, reported by Rajkumar Siva)
8244
8245 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
8246
8247         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
8248         SKIP_TASKBAR/SKIP_PAGER to set of properties we
8249         might set on map. (#110019, problem reported
8250         by Loban Rahman)
8251
8252 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
8253
8254         * gdk/gdkevents.c (gdk_event_copy): Fix for the
8255         case when gdk_event_copy() is called on a non-allocated
8256         event. (#109716, reported by Rich Burridge)
8257
8258 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
8259
8260         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
8261         Fix pointer arithmetic on 'void *'. (#108322)
8262
8263 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
8264
8265         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
8266         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
8267         use of XAddConnectionWatch. Remove --enable-xim config option.
8268         Should fix building on X11R6 (#110523, Albert Chin)
8269
8270 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
8271
8272         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
8273         Patch from Morten Welinder to catch Sun servers with a 
8274         broken implementation of the RENDER extension. (#108309)
8275
8276 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
8277
8278         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
8279         gdk_free_compound_text(), not g_free(). (#107643,
8280         Michael Zucchi)
8281
8282 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
8283
8284         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
8285         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
8286         wrong use of base_finalize. (#105126, Sven Neumann)
8287
8288 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
8289
8290         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
8291         '/' vs. '*' problem in aspect ration computations. (#108237)
8292
8293 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
8294
8295         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
8296         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
8297         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
8298         event, so select for both. (#108406, Egmont Koblinger)
8299
8300 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
8301
8302         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
8303         caused by not clearing the scroll_to_path.
8304
8305 2003-04-16  Matthias Clasen  <maclas@gmx.de>
8306
8307         * gtk/gtkstyle.c: Doc additions and fixes.
8308
8309         * gtk/gtktreeviewcolumn.c
8310         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
8311
8312 2003-04-14  Michael Natterer  <mitch@gimp.org>
8313
8314         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
8315         that the iter is not reordered to its own position. Prevents model
8316         corruption for the case that the store contains only a single item
8317         (fixes bug #108387).
8318
8319         Unrelated:
8320
8321         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
8322         new list element later so we don't leak it if we decide to return
8323         early.
8324
8325         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
8326         set selection->tree_view->priv->anchor to NULL after freeing it.
8327
8328 2003-04-13  Matthias Clasen  <maclas@gmx.de>
8329
8330         * gtk/gtktreeviewcolumn.c
8331         (gtk_tree_view_column_cell_get_position): Document. 
8332
8333         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
8334         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
8335         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
8336         these as 2.4 additions.
8337
8338 2003-04-09  Matthias Clasen  <maclas@gmx.de>
8339
8340         * INSTALL.in: Fix the real thing.
8341
8342         * INSTALL: Typo fix.
8343
8344 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
8345
8346         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
8347         after ungrabbing the server.
8348  
8349         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
8350         calls to XFlush().
8351
8352         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
8353         Use gdk_x11_display_grab/ungrab.
8354
8355         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
8356         use_xshm to TRUE so SHM gets used when present.
8357  
8358 2003-04-07  Matthias Clasen  <maclas@gmx.de>
8359
8360         * gtk/gtktextlayout.c (set_para_values): 
8361         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
8362         David Brigada)
8363
8364         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
8365         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
8366         misspellings of possessive "its".  (#110027, Doug Quale)
8367
8368 2003-04-03  Matthias Clasen  <maclas@gmx.de>
8369
8370         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
8371         current directory if it looks like the srcdir.  (#109357)
8372
8373 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
8374
8375         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
8376         focus_on_click
8377
8378         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
8379         navigation not wrap around.
8380
8381 2003-04-02  Matthias Clasen  <maclas@gmx.de>
8382
8383         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
8384         Return 0 if lower == upper.  (#109155)
8385         (gtk_progress_get_current_percentage): Use
8386         gtk_progress_get_percentage_from_value().
8387
8388 2003-04-01  Matthias Clasen  <maclas@gmx.de>
8389
8390         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
8391         (#109510, Noah Levitt)
8392
8393 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
8394
8395         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
8396         members so Purify won't complain.
8397
8398         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
8399
8400 2003-03-31  Matthias Clasen  <maclas@gmx.de>
8401
8402         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
8403         gtk_window_[gs]et_role().  (#93904)
8404
8405 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
8406
8407         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
8408         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
8409
8410 2003-03-29  Matthias Clasen  <maclas@gmx.de>
8411
8412         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
8413         of labels back to normal before reparenting back.  (#102387)
8414
8415         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
8416         a default window title to match the GtkFontSelectionDialog behavior.
8417  
8418         (gtk_color_selection_dialog_new): Don't call
8419         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
8420
8421 2003-03-29  Matthias Clasen  <maclas@gmx.de>
8422
8423         Fix for bug #78499:
8424         
8425         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
8426         select_lines. 
8427
8428         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
8429         select_lines on double/triple click.
8430
8431         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
8432         select-by-words and select-by-lines behaviour.
8433
8434         Fixes for bug #56248:
8435         
8436         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
8437         timer and queue a redraw. 
8438         (gtk_notebook_grab_notify): 
8439         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
8440         if necessary.   
8441         (gtk_notebook_button_release): Use stop_scrolling().
8442         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
8443
8444         * gtk/gtkrange.c (stop_scrolling): New function to remove the
8445         grab, remove the timer and queue a redraw.
8446         (gtk_range_grab_notify): 
8447         (gtk_range_state_changed): New functions to call stop_scrolling() 
8448         if necessary.   
8449         (gtk_range_button_release): Use stop_scrolling().
8450
8451         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
8452         (gtk_spin_button_state_changed): Redraw after stop_spinning.
8453         (gtk_spin_button_stop_spinning): Reset click_child to correct the
8454         drawing of the arrows.
8455         (gtk_spin_button_button_release): Use a local copy of click_child,
8456         since stop_spinning() resets it.
8457
8458         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
8459         C-A-PgDown as alternatives to the A-less variants. (This slipped
8460         in accidentally some time ago).  (#97860)
8461
8462 2003-03-26  Sven Neumann  <sven@gimp.org>
8463
8464         * gtk/gtktreeview.c: rewrote the function that does node and arrow
8465         prelighting, queue all redraws from here (Fixes bug #108792).
8466
8467 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
8468
8469         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
8470         Fixes bug #108778.
8471
8472 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
8473
8474         * configure.in: Added "ml" in ALL_LINGUAS
8475
8476 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
8477
8478         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
8479         G_DISABLE_DEPRECATED.
8480
8481 2003-03-14  Tor Lillqvist  <tml@iki.fi>
8482
8483         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
8484         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
8485         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
8486         multiple monitors can have negative coordinates on some of the
8487         monitors. (partial fix for #99496, Arnaud Charlet)
8488
8489 2003-03-15  Matthias Clasen  <maclas@gmx.de>
8490
8491         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
8492
8493 2003-03-13  Sven Neumann  <sven@gimp.org>
8494
8495         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
8496         removed redundant calls to g_object_notify().
8497         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
8498         bug #108236.
8499
8500         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
8501         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
8502         functions return an integer value).
8503
8504 2003-03-13  Tor Lillqvist  <tml@iki.fi>
8505
8506         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
8507         WM_MOUSEMOVE, the test whether we have actually moved (and thus
8508         shouldn't generate an GDK event) moved after the call to
8509         propagate() and translate_mouse_coords(). Otherwise we were
8510         testing wrong values. (#108115, Allin Cottrell)
8511         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
8512         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
8513
8514         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
8515         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
8516         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
8517         cursor right away with SetCursor(), as we won't get any
8518         WM_SETCURSOR messages while the mouse is captured. 
8519         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
8520         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
8521
8522         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
8523         WM_SYSCHAR, return FALSE from the window procedure to prevent the
8524         DefWindowProc from being called. Otherwise Windows would beep,
8525         thinking you are tring to access a (nonexistent) menu when you
8526         press Alt-something. Don't do this for Alt-Space,
8527         though. (#107454, Martyn Russell)
8528
8529         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
8530
8531 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
8532
8533         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
8534         [left/right] expands/collapses the tree, #108092
8535
8536 2003-03-09  Tor Lillqvist  <tml@iki.fi>
8537
8538         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
8539         compensate for LineTo() not drawing the end pixel. It causes more
8540         harm than benefits, see bug #81895.
8541
8542 2003-03-08  Matthias Clasen  <maclas@gmx.de>
8543
8544         Bug #107664 continued:
8545
8546         * gdk/x11/gdkinputprivate.h: 
8547         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
8548         (_gdk_input_other_event): Return gboolean.
8549         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
8550         (_gdk_input_other_event): Return gboolean.
8551         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
8552
8553         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
8554         gboolean, remove pointless call to _gdk_input_window_none_event.
8555
8556         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
8557         (_gdk_input_window_none_event): Remove.
8558
8559         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
8560         (_gtk_text_iter_get_any_segment): 
8561         (_gtk_text_iter_get_segment_byte): 
8562         (_gtk_text_iter_get_segment_char): 
8563         (_gtk_text_iter_get_text_line): 
8564         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
8565         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
8566         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
8567         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
8568         (gdk_window_get_origin): 
8569         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
8570
8571 2003-03-06  Matthias Clasen  <maclas@gmx.de>
8572
8573         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
8574         (#107664, Morten Welinder)
8575
8576         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
8577         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
8578         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
8579         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
8580
8581         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
8582         * gtk/gtkeditable.c (gtk_editable_get_chars): 
8583         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
8584         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
8585         (#107648, Morten Welinder)Fix NULL/FALSE confusion
8586         (#107648, Morten Welinder)
8587
8588 2003-03-04  Matthias Clasen  <maclas@gmx.de>
8589
8590         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
8591
8592 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
8593
8594         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
8595         handle rtl code.  Thanks to Matthias Clasen for an initial patch
8596         to handle the RTL code.
8597
8598         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
8599
8600         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
8601
8602         * gtk/gtktreeview.c: (invalidate_column),
8603         (invalidate_last_column),
8604         (gtk_tree_view_get_real_requested_width_from_column),
8605         (gtk_tree_view_size_allocate_columns),
8606         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
8607         (gtk_tree_view_button_release_drag_column),
8608         (gtk_tree_view_update_current_reorder),
8609         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
8610         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
8611         (gtk_tree_view_get_background_xrange),
8612         (gtk_tree_view_get_arrow_xrange),
8613         (gtk_tree_view_is_expander_column),
8614         (gtk_tree_view_set_column_drag_info),
8615         (gtk_tree_view_move_cursor_left_right):
8616         Add RTL support.
8617
8618         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
8619         expand flag.
8620
8621         * gtk/gtktreeviewcolumn.c:
8622         (gtk_tree_view_column_class_init),
8623         (gtk_tree_view_column_set_property),
8624         (gtk_tree_view_column_get_property),
8625         (gtk_tree_view_column_set_expand),
8626         (gtk_tree_view_column_get_expand),
8627         (gtk_tree_view_column_cell_process_action):
8628         Add support for expand flag.  Thanks to Kristian Rietveld for an
8629         initial patch for this.
8630
8631 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
8632
8633
8634 2003-03-02  Tor Lillqvist  <tml@iki.fi>
8635
8636         * gdk/gdk.def
8637         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
8638         Gustin.
8639
8640 2003-03-01  Matthias Clasen  <maclas@gmx.de>
8641
8642         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
8643         (gtk_scrolled_window_set_hadjustment): Replace uses of
8644         gtk_object_new by g_object_new.
8645
8646 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
8647
8648         * demos/gtk-demo/main.c
8649         * demos/gtk-demo/tree_store.c
8650         * gdk/x11/gdkscreen-x11.c
8651         * gtk/gtkcellrenderertoggle.c
8652         * gtk/gtkcolorsel.c
8653         * gtk/gtkdnd.c
8654         * gtk/gtkeditable.c
8655         * gtk/gtkentry.c
8656         * gtk/gtkmenu.c
8657         * gtk/gtkmenubar.c
8658         * gtk/gtkmenuitem.c
8659         * gtk/gtkmenushell.c
8660         * gtk/gtkrc.c
8661         * gtk/gtksettings.c
8662         * gtk/gtkstyle.c
8663         * gtk/gtktextbuffer.c
8664         * gtk/gtktextview.c
8665         * gtk/gtktreeviewcolumn.c
8666         * tests/testgtk.c
8667         * tests/testtext.c
8668         * tests/testtreeedit.c
8669         * tests/testtreefocus.c
8670         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
8671
8672 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
8673
8674         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
8675         code.
8676
8677 2003-02-24  Sven Neumann  <sven@gimp.org>
8678
8679         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
8680
8681 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
8682
8683         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
8684
8685 2003-02-20  Matthias Clasen  <maclas@gmx.de>
8686
8687         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
8688         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
8689
8690         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
8691         (gtk_text_view_update_adjustments): Make sure cursor stays visible
8692         during horizontal scrolling.  (#75270)
8693
8694 2003-02-19  Matthias Clasen  <maclas@gmx.de>
8695
8696         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
8697         counterparts. (#106532)
8698
8699         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
8700         keys_changed virtual function with the keys_changed signal.
8701         (#106512, Jeff Franks)
8702
8703 2003-02-15  Larry Ewing  <lewing@ximian.com>
8704
8705         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
8706
8707 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
8708
8709         * po/id.po: Added Indonesian translation
8710         * configure.in: Added "id" to ALL_LINGUAS
8711
8712 2003-02-14  Matthias Clasen  <maclas@gmx.de>
8713
8714         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
8715
8716 2003-02-12  Christian Rose  <menthos@menthos.com>
8717
8718         * configure.in: Added "yi" to ALL_LINGUAS.
8719
8720 2003-02-12  Matthias Clasen  <maclas@gmx.de>
8721
8722         Fix for #82734 and #78216:
8723         
8724         * gtk/gtktextview.c (delete_cb): 
8725         (select_all_cb): New callbacks for context menu items.
8726         (popup_targets_received): Add "Delete" and "Select All" to context
8727         menu, mnemonics and title caps for all items.
8728
8729         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
8730         context menu item.
8731         (popup_targets_received): Add "Delete" to context menu, mnemonics
8732         and title caps for all items.
8733
8734 2003-02-09  Tor Lillqvist  <tml@iki.fi>
8735
8736         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
8737         GetDriveType() to recognize removable drives (in order to avoid
8738         hanging if trying to access an empty floppy drive), instead of
8739         hardcoding A: and B: (#105654).
8740
8741 2003-02-09  Matthias Clasen  <maclas@gmx.de>
8742
8743         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
8744         names.  (#57680)
8745
8746 2003-02-09  Christian Rose  <menthos@menthos.com>
8747
8748         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
8749
8750 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
8751
8752         * gtk/gtkobject.c: remove quark_user_data usage in
8753         gtk_object_{g|s}et_user_data(). fixes get_user_data()
8754         returning NULL for user_data set through property interface.
8755
8756         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
8757         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
8758         need to be a programming error (in case of loaded data), (b) it breaks
8759         with 2.0 behaviour where extra magic could be used to create empty
8760         images. don't attempt to retrieve pixbufs from NULL extra_data.
8761
8762 2003-02-06  Matthias Clasen  <maclas@gmx.de>
8763
8764         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
8765         a GdkVisual *, not a GdkVisual **.  (#105243)
8766
8767         * gtk/gtkclist.c: 
8768         * gtk/gtkctree.c: 
8769         * gtk/gtkcontainer.c: 
8770         * gtk/gtkdnd.c: 
8771         * gtk/gtkentry.c: 
8772         * gtk/gtklist.c:
8773         * gtk/gtkmenu.c:
8774         * gtk/gtkmenuitem.c:
8775         * gtk/gtknotebook.c:
8776         * gtk/gtkselection.c:
8777         * gtk/gtkspinbutton.c:
8778         * gtk/gtktext.c:
8779         * gtk/gtktextview.c:
8780         * gtk/gtktooltips.c:
8781         * gtk/gtktreeview.c:
8782         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
8783         their non-deprecated GLib counterparts.
8784         
8785         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
8786         
8787 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
8788
8789         * docs/tutorial/gtk-tut.sgml: cleanups from
8790         Sebastian Rittau (#104832)
8791
8792 2003-02-01  Tor Lillqvist  <tml@iki.fi>
8793
8794         Merge from stable:
8795
8796         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
8797         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
8798         (#104108, Naofumi Yasufuku)
8799
8800         * gdk/gdk.def: Export the above. Export
8801         gdk_screen_get_system_visual, noticed by Ed Woods.
8802
8803 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
8804
8805         * demos/pixbuf-demo.c
8806         * demos/testpixbuf.c
8807         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
8808
8809 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
8810                                                                                 
8811         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
8812         on the tab_label before unparenting it, in case the unparent
8813         drops the refcount to 0.
8814
8815 2003-02-01  Matthias Clasen  <maclas@gmx.de>
8816
8817         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
8818         headers. Sorry about gtk_selection_clear, Yosh.
8819
8820 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
8821
8822         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
8823         too, for gtkwidget.c. Remember people, when introducing new
8824         deprecations, make sure internal code isn't using it, or if so,
8825         reorganize appropriately like I've done in other places.
8826
8827         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
8828
8829 2003-01-31  Matthias Clasen  <maclas@gmx.de>
8830
8831         * gtk/gtkselection.h: 
8832         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
8833
8834         * gdk/gdkpixbuf.h: 
8835         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
8836         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
8837
8838         * gtk/gtkcolorsel.h:
8839         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
8840         Deprecate.  (#98167)
8841
8842         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
8843
8844         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
8845         and gtk_input_* functions.  (#71596)
8846         
8847         * gtk/gtkentry.c (gtk_entry_move_cursor): 
8848         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
8849         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
8850
8851         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
8852
8853         * gtk/gtkitemfactory.h: 
8854         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
8855         (#69244)
8856
8857 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
8858
8859         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
8860         only count the special cell if it is also visible,
8861         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
8862         account from visible cells,
8863         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
8864         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
8865         tracking bug was #104563).
8866         
8867 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
8868
8869         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
8870         subtract expander space and focus line space from the extra space
8871         we are about the allocate. (Fixes #104635).
8872
8873 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
8874
8875         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
8876         (Fixes #96242, patch from Soeren Sandmann).
8877
8878 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
8879
8880         * gtk/gtknotebook.c: Patch from Soeren Sandmann
8881         to update the states of the tab label child
8882         widgets to match the state of the tabs. 
8883         (#93389, Reported by Tommi Komulainen)
8884
8885 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
8886
8887         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
8888         EXTRA_DIST, and from dist rules. (#102231)
8889
8890 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
8891
8892         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
8893         function that sets the icon's and label's packing options and
8894         visibility based on toolbar->style.
8895
8896         (gtk_toolbar_internal_insert_element):
8897         (gtk_real_toolbar_style_changed): Make use of
8898         set_child_packing_and_visibility() to clean up the code and get
8899         the packing right for icon-only/text-only toolbars. (#104679)
8900
8901         (get_first_child): Remove, and use gtk_bin_get_child() instead.
8902
8903 2003-01-30  Matthias Clasen  <maclas@gmx.de>
8904
8905         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
8906         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
8907
8908         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
8909         
8910 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
8911
8912         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
8913         attempt-to-allocate then free code. To handle multiple
8914         people allocating colors at the same time, we need
8915         to just go ahead and try. (#102213, Shivram U)
8916         
8917 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
8918
8919         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
8920         rectangle using the background color rather than relying on
8921         gdk_window_clear_area(), so that the palette works properly with
8922         pixmap themes. (#101732)
8923
8924         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
8925         to fill the drawing area in the background color.
8926
8927 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
8928
8929         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
8930         initialization error for selecting input style (#103549).
8931
8932 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
8933
8934         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
8935         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
8936         (#101225)
8937
8938 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
8939
8940         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
8941         Make up from the menu bar go to the end of the submenu.
8942         (#96114, Ian Peters.)
8943
8944         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
8945         Only do the select-but-not-activate stuff if the
8946         menu is already active. Otherwise, just activate.
8947         (#101690, Arvind Samptur)
8948
8949 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
8950
8951         * autogen.sh (have_automake): Fix version in complaint
8952         message about automake. (#104366, Rich Burridge)
8953
8954 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
8955
8956         * configure.in: Remove SOEXT stuff; it doesn't work portably.
8957
8958 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
8959
8960         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
8961         we appended/prepended, send the rows_reordered signal to the 
8962         correct level ... (Reported by Matthew Tuck).
8963
8964 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
8965
8966         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
8967         out if the level only has one item, recurse over the child if there
8968         is one. (Fixes #100458, reported by Gaël Le Mignot).
8969
8970 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
8971
8972         * gtk/gtktreeview.c (gtk_tree_view_set_model),
8973         (gtk_tree_view_search_equal_func): make TreeView search handle
8974         all types which are transformable by GValue. (Fixes #99803, reported
8975         by Muktha Narayan).
8976
8977 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
8978
8979         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
8980         *really* handle unsetting the ID. Slightly modified patch from
8981         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
8982
8983 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
8984
8985         Fixes the total GtkTreeSortable mess, and #83195, reported by
8986         Jarek Dukat
8987
8988         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
8989         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
8990         (gtk_tree_store_set_default_sort_func): use the constant
8991         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
8992         work as advertised by the documentation.
8993
8994         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
8995         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
8996         (gtk_list_store_set_default_sort_func): likewise.
8997
8998         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
8999         (gtk_tree_model_set_sort_func),
9000         (gtk_tree_model_sort_set_default_sort_func): make functions work
9001         as advertised by the documentation.
9002
9003 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
9004
9005         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
9006         before we decide if we edit. (fixes #100973, reported by Dave Cook).
9007
9008 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
9009
9010         Bug report and test case from Paolo Maggi via IRC.
9011
9012         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
9013         (gtk_list_store_move): update tail if needed.
9014
9015 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
9016
9017         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
9018         might be NULL. Use gtk_widget_get_display (widget) 
9019         (#102860, Thomas Leonard)
9020
9021 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
9022
9023         * configure.in: Fix --without-modules/--disable-modules
9024         confusion that was causing --disable-modules not to work.
9025         (#102865, Akira Tagoh)
9026
9027         * configure.in: Fix problem with plain --with-xinput
9028         (#104266, Akira Tagoh)
9029
9030 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
9031
9032         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
9033         patch.
9034
9035 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
9036
9037         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
9038
9039 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
9040
9041         * docs/faq/gtk-faq.sgml: Learn to spell Library
9042
9043 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
9044         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
9045
9046            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
9047            Composite widget" to modern standards. (I.e. use gobject instead of
9048            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
9049
9050         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
9051         code in Appendix C to reflect above changes.
9052
9053         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
9054         auto resize on page size change
9055
9056 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
9057
9058         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
9059         in addition to show_all in order to keep them symmetric. (#102201)
9060
9061 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
9062
9063         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
9064         the end of the function, so there is a statement following the "out"
9065         label in all cases (fixes #101961)
9066
9067 2003-01-22  Christian Rose  <menthos@menthos.com>
9068
9069         * configure.in: Added "mn" to ALL_LINGUAS.
9070
9071 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
9072  
9073         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
9074         Fix off-by-one error on the backward iteration loop,
9075         that was causing the wrong range to be redrawn.
9076         (at least part of #72734)
9077         
9078 2003-01-21  Matthias Clasen  <maclas@gmx.de>
9079
9080         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
9081         vadjustment value after changing its bounds.  (fixes #101963 and 
9082         #73562)
9083
9084         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
9085         unnecessary roundtrip failures.  (#93500)
9086
9087 2003-01-19  Tor Lillqvist  <tml@iki.fi>
9088
9089         Merge from stable:
9090         
9091         Fix for #103614 and some other problems with GtkFileSelection on
9092         Windows:
9093                 
9094         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
9095         g_ascii_tolower(). Windows file names are case-insensitive for all
9096         Unicode letters.
9097
9098         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
9099         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
9100         earlier, as it includes config.h unconditionally, and gtkprivate.h
9101         redefines GTK_LOCALEDIR.
9102         (struct _CompletionDirSent): Ifdef out the fields not used on
9103         Windows.
9104         (compare_utf8_filenames, compare_sys_filenames): Need different
9105         comparison implementation for UTF-8 file names and system locale
9106         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
9107         need to casefold all Unicode letters.
9108         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
9109         variables not used on Win32 to avoid warnings about unused
9110         variables.
9111         (open_ref_dir): Use g_path_skip_root() to skip past potential
9112         drive letter in front of the leading (back)slash.
9113         (open_new_dir): Ifdef out use of CompletionDirSent fields not
9114         there on Win32.
9115         (correct_parent): Bypass inode check also on Cygwin.
9116
9117         Fix bug noticed by Alex Shaduri: Tooltips and other
9118         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
9119         was a regression from earlier versions.
9120         
9121         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
9122         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
9123         (gdk_window_move, gdk_window_resize): Add debug logging.
9124
9125         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
9126         WM_SIZE message for a non-visible (withdrawn) window, don't clear
9127         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
9128         even if its size changes.
9129
9130 2003-01-16  Matthias Clasen  <maclas@gmx.de>
9131
9132         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
9133         (totally_invisible_line): Fix an incorrect optimization which
9134         caused invisible paragraphs to be occasionally misrendered.
9135
9136 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
9137
9138         * gtk/gtksettings.c: Set the double click speed from
9139         XSETTINGS when creating a new GtkSettings object
9140         as well as when getting a notify. (#103601, reported
9141         by Louis Garcia)
9142
9143 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
9144  
9145         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
9146         Show/hide the notebook event window as necessary,
9147         we weren't previously keeping the visibility updated
9148         properly.  (#103599)
9149  
9150 2003-01-15  Matthias Clasen  <maclas@gmx.de>
9151
9152         * examples/menu/itemfactory.c: 
9153         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
9154         example.  (#103211)
9155
9156 2002-12-29  Murray Cumming  <murrayc@usa.net>
9157
9158         Fixes #102168.
9159
9160         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
9161         Actually implement the GtkTreeDragSource::row_draggable virtual 
9162         function in GtkListStore and GtkTreeStore instead of just checking 
9163         whether it's implemented at all. This means that DnD isn't broken by
9164         gtkmm's virtual function wrappers. The alternative would be to
9165         hard-code the TRUE return value into gtkmm's wrappers, but that's 
9166         part of GTK+'s implementation, not it's API.
9167
9168 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
9169
9170         * gtk/gtktreeview.c: fix compiler warning.
9171
9172 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
9173
9174         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
9175         make sure exposed pixbufs are clipped to the exposed area before
9176         drawing, which is a slight speedup. (#102379, patch from Soeren
9177         Sandmann).
9178
9179 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
9180
9181         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
9182         only free scroll_to_path when the complete tree has been validated.
9183         This makes sure that we scrolled to the correct path.
9184
9185 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
9186
9187         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
9188         background of widget->window and bin->window. (Fixes #96650, reported
9189         by Dave Camp).
9190
9191 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
9192
9193         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
9194         updates before scrolling, avoiding a "selection streak". (Fixes
9195         #101235, patch from Soeren Sandmann).
9196
9197 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
9198
9199         * gtk/gtktreeview.c (validate_visible_area): actually put values
9200         in the requisition using gtk_widget_size_request. (Fixes #100172,
9201         reported by Kjartan Maraas).
9202
9203 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
9204
9205         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
9206         arrow animation timeout before we actually reorder the rbtree. If
9207         we don't do this we can get stuck arrows,
9208         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
9209         reported and testcase provided by Hans Petter Jansson).
9210
9211 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
9212
9213         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
9214         anchor_path should be start_path, not end_path. (Fixes #102618,
9215         patch from Carlos Garnacho Parro).
9216
9217 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
9218
9219         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
9220         only correct new_pos if we don't move to the head/tail.
9221
9222 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
9223
9224         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
9225         the parent_iter if depth >= 1, so we send the reordered signal to
9226         the correct level, remove debugging printfs which I forgot the remove
9227         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
9228         testcase provided by Matthew Tuck).
9229
9230 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
9231
9232         * gtk/gtktreeview.c (invalite_last_column): split out actual column
9233         invalidation into invalidate_column(),
9234         (gtk_tree_view_size_allocate_columns): invalidate column if the
9235         new width is larger than the old width.
9236         (fixes #102890, reported by Alex Duggan).
9237
9238 2003-01-14  Matthias Clasen  <maclas@gmx.de>
9239
9240         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
9241         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
9242         GTK_MOVEMENT_WORDS.
9243
9244         * gtk/gtktextiter.c,
9245         gtk/gtktextiter.h: Add some variant movement functions which
9246         skip invisible chars, and do some cleanups.
9247
9248 2003-01-12  Tor Lillqvist  <tml@iki.fi>
9249
9250         Merge from stable:
9251                 
9252         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
9253         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
9254         lookup.
9255
9256         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
9257         gdk.def.
9258
9259         * gdk/gdk.def
9260         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
9261
9262         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
9263         gtk-demo}.exe and share/gtk-2.0.
9264
9265         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
9266         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
9267         window style.
9268         (gdk_window_set_type_hint): Add all cases to the switch (not all
9269         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
9270         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
9271         won't know that the skip_taskbar hint is on for the window, is
9272         this bad?
9273
9274 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
9275
9276         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
9277         <string.h> for strlen.
9278
9279         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
9280         <string.h> for strrchr.
9281
9282         * tests/testgtk.c (create_saved_position): "x" and "y" properties
9283         for widgets no longer exist, use gtk_window_move instead.
9284
9285         * test/testtextbuffer.c (check_get_set_text): cast strlen to
9286         int for g_error.
9287
9288 2003-01-08  Matthias Clasen  <maclas@gmx.de>
9289
9290         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
9291         the selection in the presence of invisible segments.
9292
9293 2003-01-07  Matthias Clasen  <maclas@gmx.de>
9294
9295         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
9296         to "select all" and "unselect all".  (#102065)
9297
9298         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
9299         the just_selected_element is unused.
9300
9301         * gtk/gtktextview.c (extend_selection): New helper function to
9302         find the range that should be added to the selection. 
9303         (selection_motion_event_handler): 
9304         (gtk_text_view_start_selection_drag): 
9305         (gtk_text_view_end_selection_drag): 
9306         (selection_motion_event_handler): 
9307         (selection_scan_timeout): Support select-by-words/lines.
9308         (gtk_text_view_button_press_event): Start a selection drag on
9309         double/triple clicks.  (#78499)
9310
9311 2003-01-06  Matthias Clasen  <maclas@gmx.de>
9312
9313         Implement a utility function proposed in #102534:
9314         
9315         * gtk/gtktextbtree.h: 
9316         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
9317         (_gtk_text_btree_place_cursor): Now a simple wrapper around
9318         _gtk_text_btree_select_range().   
9319
9320         * gtk/gtktextbuffer.h: 
9321         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
9322         (gtk_text_buffer_place_cursor): Now a simple wrapper around
9323         gtk_text_buffer_select_range(). 
9324
9325 2003-01-05  Havoc Pennington  <hp@pobox.com>
9326
9327         * configure.in: fix a stray bracket that was breaking the build
9328
9329 2003-01-05  Tor Lillqvist  <tml@iki.fi>
9330
9331         * gtk-zip.sh.in: Use correct DLL and import library names, with
9332         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
9333         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
9334
9335         * configure.in: Improve check for dimm.h.
9336
9337         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
9338         gdk-pixbuf/Makefile.am.
9339
9340         * gdk-pixbuf/makefile.mingw.in
9341         * gdk-pixbuf/pixops/makefile.mingw.in
9342         * gdk/makefile.mingw.in
9343         * gdk/win32/makefile.mingw.in
9344         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
9345
9346         * gdk-pixbuf/Makefile.am
9347         * gdk-pixbuf/pixops/Makefile.am
9348         * gdk/Makefile.am
9349         * gdk/win32/Makefile.am
9350         * gtk/Makefile.am
9351         * configure.in: Remove makefile.mingw{,.in} from here, too.
9352         
9353         * README.win32: Updates. Don't mention the now removed
9354         makefile.mingw files.
9355
9356         * gdk/gdk.def
9357         * gtk/gtk.def: Add a couple of missing entries.
9358
9359         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
9360
9361         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
9362         earlier.
9363
9364         * gdk/win32/rc/Makefile.am: Add hack to help
9365         build/win32/lt-compile-resource decide which kind of libtool
9366         object file to produce.
9367
9368 2003-01-05  Matthias Clasen  <maclas@gmx.de>
9369
9370         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
9371         C-Down step through the sequence of paragraph ends (old behaviour
9372         included paragraph starts).  (#80340, patch by Narayana Pattipati)
9373
9374         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
9375         Check for a tag toggle at the start iterator before calling
9376         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
9377         Elstner)
9378
9379 2003-01-04  Matthias Clasen  <maclas@gmx.de>
9380
9381         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
9382         and /*< private >*/ as appropriate.  (#97211)
9383
9384 2003-01-04  Tor Lillqvist  <tml@iki.fi>
9385
9386         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
9387         distribute gtk-zip.sh.in.
9388
9389         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
9390
9391 2003-01-03  Havoc Pennington  <hp@pobox.com>
9392
9393         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
9394
9395         * docs/text_widget_internals.txt: add a file documenting some of
9396         the text widget internals
9397
9398 2003-01-02  Matthias Clasen  <maclas@gmx.de>
9399
9400         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
9401         return NULL.  (#102069)
9402
9403 2003-01-01  Matthias Clasen  <maclas@gmx.de>
9404
9405         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
9406         a main() in the library is obviously bad. 
9407
9408 2002-12-27  Matthias Clasen  <maclas@gmx.de>
9409
9410         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
9411         cursor at drop point.  (#72384)
9412         (gtk_text_view_size_allocate): Update the horizontal adjustment
9413         value.  (#75694)
9414
9415 2002-12-25  Matthias Clasen  <maclas@gmx.de>
9416
9417         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
9418         selection wrt. to empty lines.  (#90435, #90582, #91619)
9419
9420         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
9421         Keep the cursor on screen.  (#96929)
9422
9423 2002-12-24  Matthias Clasen  <maclas@gmx.de>
9424
9425         * gtk/gtktextbuffer.c (paste_from_buffer): 
9426         (clipboard_text_received): Let the user action span the insertion
9427         and the deletion of the old selection.  (#82844)
9428
9429 2002-12-23  Matthias Clasen  <maclas@gmx.de>
9430
9431         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
9432         Don't call gtk_text_iter_backward_sentence_start() if
9433         count is zero.  (#99115)
9434
9435         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
9436         move_cursor() even if the cursor hasn't moved, since it has the
9437         side effect of canceling the selection.  (#81395, #98537, #98333)
9438
9439 2002-12-22  Matthias Clasen  <maclas@gmx.de>
9440
9441         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
9442         with empty ranges.  (fixes #101564 and #80637)
9443
9444 2002-12-21  Tor Lillqvist  <tml@iki.fi>
9445
9446         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
9447         sets the window style and extended window style, and adjusts the
9448         width and height to take the window decorations into account
9449         earlier. The adjusted width and height used to be ignored. Remove
9450         the local x, y, width and height variables, no need to further
9451         confuse the code by having local copies. (Partial fix, I hope, for
9452         #101588)
9453
9454         (gdk_window_move): When moving top-level windows, take title bar
9455         and border width into account, offsetting the coordinates before
9456         calling SetWindowPos().
9457
9458         (gdk_window_set_decorations, gdk_window_set_functions):
9459         Reimplement, taking into account the peculiar semantics of
9460         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
9461
9462         (gdk_window_get_decorations): Implement. (#98981)
9463         
9464         (gdk_window_set_type_hint): When setting
9465         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
9466         (#79036)
9467
9468         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
9469
9470 2002-12-21  Matthias Clasen  <maclas@gmx.de>
9471
9472         * gtk/gtktextview.c (gtk_text_view_set_background): New static
9473         function to set the background of all windows.
9474         (gtk_text_view_style_set): Use gtk_text_view_set_background().
9475         (gtk_text_view_state_changed): New function; change background
9476         according to state.  (#88126)
9477
9478 2002-12-21  Havoc Pennington  <hp@pobox.com>
9479
9480         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
9481