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