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