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