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