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