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