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