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