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