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