]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Initially activate the JUSTIFY_RIGHT group member to test the fix for
[~andy/gtk] / ChangeLog.pre-2-10
1 2003-09-22  Matthias Clasen  <maclas@gmx.de>
2
3         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
4         group member to test the fix for #122904.
5
6         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
7         Add the action to the group before activating it, otherwise we
8         may end up with multiple active group members.  (#122904, Marco
9         Pesenti Gritti)
10
11 2003-09-21  Matthias Clasen  <maclas@gmx.de>
12
13         Changes to make cross-process merging feasible:
14         
15         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
16         merged UI definition. Remove the "changed" signal, since its role
17         is now filled by "notify::ui". Instead add a "actions-changed" signal
18         which gets emitted when the set of actions changes.
19
20         * gtk/gtktoggleactionprivate.h:
21         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
22         Add a "draw_as_radio" property to toggle actions so that they can be
23         used as proxies for radio actions much like the "draw_as_radio" 
24         property on check menu items enables them to operate as proxies for
25         radio actions.
26
27         Prevent the "show_all" trap for action-based menus (see
28         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
29         msg00260.html):
30
31         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
32         calls from static functions.
33
34         * gtk/gtkuimanager.c (update_node): 
35         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
36         widgets whose visibility is externally controlled.
37
38         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
39         "no_show_all" property with setter and getter. When TRUE, it keeps
40         gtk_widget_{hide,show}_all() from modifying the visibility of the 
41         widget and its children.
42
43 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
44
45         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
46
47 2003-09-20  Tor Lillqvist  <tml@iki.fi>
48
49         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
50         including editor backup files. List files we want explicitly.
51
52         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
53         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
54         LC_ALL, LC_CTYPE and LANG environment variables, than calls
55         g_win32_getlocale().
56
57         (gtk_get_default_language): Code snippet moved to above function,
58         call it.
59
60         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
61         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
62         _gtk_get_lc_ctype() instead of setlocale().
63
64 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
65
66         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
67         (#96632)
68
69 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
70
71         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
72         documentation. (#117306, Steve Chaplin)
73
74 2003-09-19  Tor Lillqvist  <tml@iki.fi>
75
76         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
77         present on the US-International keyboard. For clarity, order
78         keysyms in case statement according to numeric value.
79
80         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
81         correctly. (#120176, Ken Rastatter and Owen Taylor)
82
83 2003-09-18  Matthias Clasen  <maclas@gmx.de>
84
85         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
86         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
87
88         Install accelerators on actions, not on proxies, support
89         accelerator-only actions:
90         
91         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
92         and its lock status either via _gtk_widget_get_accel_path() or by 
93         looking at the accel_path stored in the menu item itself and determining
94         its lock status by peeking into the contained accel label. This was
95         already (accidentally) committed a week ago.
96
97         * gtk/gtkaction.h (gtk_action_set_accel_group):
98         (gtk_action_[dis]connect_accelerator): New functions.
99
100         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
101         accel_closure and accel_count. We must have a reference to the 
102         accel_group, since we need it in connect_proxy. The count is necessary
103         to ensure that the accelerator isn't removed before the last proxy 
104         requesting it has been unmerged.
105         (connect_proxy): Connect the accelerator to the 
106         action now, only set the accel_path on the menuitem.
107         (remove_proxy): Disconnect the accelerator from the action, not from
108         the menuitem.
109         (gtk_action_set_accel_group): Set the accel group. 
110         (gtk_action_[dis]connect_accelerator): Count the number of times
111         this functions have been called and install/remove the accelerator if
112         the count leaves/reaches zero.
113
114         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
115         GTK_UI_MANAGER_ACCELERATOR.
116
117         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
118         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
119         <accelerator> elements.
120         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
121         type is GTK_UI_MANAGER_ACCELERATOR.
122         (update_node): Set the accel group on actions before creating their
123         proxies. Don't set the accel group on created menus. For 
124         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
125         (print_node): Also emit <accelerator> elements.
126
127         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
128
129         * gtk/gtkuimanager.c (update_node): Robustness improvements.
130
131 2003-09-17  Matthias Clasen  <maclas@gmx.de>
132
133         * gtk/gtkuimanager.c (text_handler): Report unexpected character
134         data as error from the GMarkup parser, otherwise things like
135         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
136         pass unexpectedly.
137
138 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
139
140         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
141         committed redraw_on_allocate change.
142
143 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
144
145         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
146         stubs to fix compilation
147
148         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
149         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
150
151         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
152         variable. Patch from Marc Welz (#121347).
153
154 2003-09-16  Matthias Clasen  <maclas@gmx.de>
155
156         * gtk/gtkaction.h: Apply egtk-format-protos.
157
158 2003-09-15  Matthias Clasen  <maclas@gmx.de>
159
160         * gtk/gtkuimanager.c: Doc tweaks.
161
162         Smart separators; see 
163         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
164         
165         * gtk/gtkuimanager.c (update_smart_separators): New function which 
166         implements "smart" separators by iterating once over the entries of a 
167         menu, hiding and showing separators as necessary.
168         (update_node): Mark separators used as fences of placeholders as
169         hidden. Explicitly added separators are marked as smart. Call 
170         update_smart_separators after updating a menu or toolbar node. 
171         Connect update_smart_separators to "notify::visible" signal on menu
172         and tool items.
173         
174         * tests/merge-[12].ui: Test smart separators.
175
176         Changes to allow setting action state before connecting signal; see
177         the thread starting at 
178         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
179         
180         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
181         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
182         setting the currently selected group member before connecting signals.
183         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
184         including a boolean to initialize the action state before connecting
185         signals.
186         (gtk_action_group_add_toggle_actions):
187         (gtk_action_group_add_toggle_actions_full): New functions to construct
188         toggle actions from an array of GtkToggleActionEntries.
189
190         * demos/gtk-demo/appwindow.c: 
191         * tests/testactions.c: 
192         * tests/testmerge.c: Adjust to new action group API.
193
194 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
195
196         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
197         "gtk-toolbar-arrow" so themes can special-case it.
198
199 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
200
201         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
202
203 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
204
205         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
206         PangoFontMetrics. Patch from Steve Chaplin (#122257).
207
208 2003-09-14  Tor Lillqvist  <tml@iki.fi>
209
210         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
211         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
212         the usefulness of which was already in doubt. Removing it fixes
213         bugs #118575 and #121851.
214
215 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
216
217         Merge from stable.
218
219         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
220         pressed button (used to determine if we want to initiate a drag later
221         on) if the current grab widget is either NULL or tree_view (Reported
222         by Jeroen Zwartepoorte).
223
224 2003-09-12  Matthias Clasen  <maclas@gmx.de>
225
226         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
227         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
228
229 2003-09-11  Matthias Clasen  <maclas@gmx.de>
230
231         * gdk/gdkpango.c: Doc tweaks.
232
233         * tests/testgtk.c: Add table menu tests.
234
235         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
236         GtkMenuPrivate struct itself. Pointed out by valgrind.
237
238         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
239         properly.  (#121998)
240
241 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
242
243         The table menu patch! Turns GtkMenu into a table, so you can attach
244         menu items in numerous new ways! Be creative!
245
246         Contains some bug fixes and RTL adaptions from Matthias Clasen.
247
248         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
249         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
250         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
251         the heights array in the private struct,
252         (gtk_menu_class_init): reorder code a bit, install child properties,
253         (get_attach_info), (get_child_attach): new utility functions,
254         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
255         child properties, for the attach info,
256         (gtk_menu_remove): remove AttachInfo from menu item,
257         (gtk_menu_real_insert): implemented algorithm to automagically place
258         inserted menu items at the correct place in the table,
259         (gtk_menu_size_request), (gtk_menu_size_allocate),
260         (compute_child_offset): reworked/rewritten to support table menus,
261         (gtk_menu_attach): new function,
262         (find_child_containing), (gtk_menu_move_current): new functions to
263         get table menu keynav right.
264
265         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
266
267 2003-09-10  Matthias Clasen  <maclas@gmx.de>
268
269         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
270         PropertyNotify events from the stream if they have been handled,
271         in order to enable extending the plug<->socket communication via
272         properties.
273
274 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
275
276         Big TreeView DnD fixage, makes drops on empty models work, makes
277         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
278         Related bugs #95362 and #113314. I don't want to touch this code
279         ever again.
280
281         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
282
283         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
284         for selection_data->length.
285
286         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
287         (set_dest_row), (get_dest_row): we don't store just the row ref
288         anymore, but a struct with the row ref and additional info,
289         (set_destination_row): handle drops on empty space and some
290         style fixes,
291         (get_logical_dest_row): also return path_down_mode/drop_append_mode
292         flags, handle dropping childs on their new parents, rewrite
293         drop append handling into something saner,
294         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
295         spaces,
296         (gtk_tree_view_drag_drop): updates for updated backend,
297         (gtk_tree_view_drag_data_received): updates for updated backend,
298         path down mode (treestore DnD) handling,
299         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
300         when we are trying to drop a row on an empty model,
301         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
302
303         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
304         (gtk_list_store_row_drop_possible): style and drop-append fixes.
305
306         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
307
308 2003-09-08  Alexander Larsson  <alexl@redhat.com>
309
310         * gtk/gtkeventbox.[hc]:
311         Implement gtk_event_box_get/set_input_only()
312         
313         * tests/testgtk.c:
314         Tests for the new input only event boxes
315
316 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
317
318         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
319
320         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
321         the call to gtk_tree_model_filter_add_root,
322         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
323         the virtual root, allow building levels on the second try to convert
324         the child path to a filter path,
325         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
326         root when calling gtk_tree_model_filter_elt_get_path.
327
328 2003-09-07  Matthias Clasen  <maclas@gmx.de>
329
330         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
331         Josh Beam)
332
333         Fixes for accelerator handling during (un)merging:
334         
335         * gtk/gtkuimanager.c (update_node): Move setting info-action
336         after the switch, since the old action is needed in some cases.
337         In cases of proxy type mismatch, disconnect the old proxy from
338         the old action.
339
340         * gtk/gtkaction.c (remove_proxy): Renamed from 
341         gtk_action_remove_proxy(). Move unsetting of the accelerator
342         here from disconnect_proxy() in order to catch all cases of 
343         removing a proxy.
344         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
345         to fail if proxy isn't a proxy of action.
346
347 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
348
349         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
350         ALL_LINGUAS
351
352 2003-09-07  Matthias Clasen  <maclas@gmx.de>
353
354         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
355         for toolitems.
356
357 2003-09-06  Matthias Clasen  <maclas@gmx.de>
358
359         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
360         prev_action, not from action.  (Fix by David Hampton)
361
362 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
363  
364         * Back out locale-dependent interpretation of
365         KP_Decimal, the official XFree86 interpretation
366         is that KP_Decimal => . KP_Separator => ,
367         always, independent of locale. 
368         (#105161, Frederic Crozat, 
369         http://bugs.xfree86.org/show_bug.cgi?id=534)
370  
371 2003-09-04  Matthias Clasen  <maclas@gmx.de>
372
373         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
374
375         * gtk/gtktoggleaction.c (connect_proxy): 
376         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
377         that a "draw_as_radio" property is needed for check buttons similar to 
378         check menu items, in order to fully support button proxies for radio actions.
379
380         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
381
382         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
383
384         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
385         'type' argument of gtk_ui_manager_add_ui().
386
387         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
388         to make this function as powerful as the XML methods of adding UI.  (#120647)
389
390 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
391
392         Merge from stable.
393
394         * docs/RELEASE-HOWTO: updates.
395
396 2003-09-04  Matthias Clasen  <maclas@gmx.de>
397
398         * tests/merge-2.ui: Use "position" instead of "pos".
399
400         * gtk/gtkuimanager.c (start_element_handler): No need 
401         to be terse: Change the name of the "pos" attribute
402         to "position".
403
404 2003-09-04  Matthias Clasen  <maclas@gmx.de>
405
406         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
407         GtkUIManagerNode to shorten the names and to make the
408         GTK_UI_MANAGER_<TYPE> names available for a public enum.
409
410         * gtk/gtkactiongroup.c:
411         * gtk/gtkuimanager.c: Various doc tweaks.       
412
413         * gtk/gtkuimanager.c (start_element_handler):
414         (end_element_handler): Improve error reporting. 
415
416 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
417
418         Merge from stable.
419
420         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
421         use end_position - page_size instead of G_MAXINT, since
422         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
423         reported by Havoc Pennington).
424
425 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
426
427         Merge from stable.
428
429         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
430         unref it. (Fixes memleak, patch from Kjartan Maraas).
431
432 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
433
434         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
435         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
436         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
437         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
438         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
439         gtk/gtktypeutils.h: big patch from Kjartan Maraas
440         to fix numerous typos.
441
442 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
443
444         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
445
446 2003-09-02  Tor Lillqvist  <tml@iki.fi>
447
448         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
449         CloseHandle() on the HMODULE returned from GetModuleHandle().
450         Didn't cause any harm, but didn't do anything useful either. When
451         running a GTK+ program under MS's debugger, the CloseHandle() call
452         would cause a "first-chance exception" in ntdll.dll to show up.
453         (The exception is caught appropriately if you let it proceed, but
454         it confuses the person using the debugger). Thanks to Bruce
455         Hochstetler for noticing.
456
457 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
458
459         Merge from stable.
460
461         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
462         to only select when button 1 is pressed introduced in the fix of
463         bug #120187.
464
465 2003-09-02  Matthias Clasen  <maclas@gmx.de>
466
467         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
468
469         * gtk/gtkuimanager.c: Shorten the names of some static 
470         functions.
471
472         Support adding and removing merge nodes dynamically (#120647, 
473         Anders Carlsson):
474         
475         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
476         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
477         and made it public.
478         (gtk_ui_manager_add_ui): New function to add UI elements
479         without juggling XML fragments, currently restricted to menuitems,
480         toolitems and separators. Actions still come from registered 
481         action groups.
482
483 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
484
485         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
486         background pixmap was being offset twice, once by the ts_origin in
487         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
488
489 2003-09-01  Matthias Clasen  <maclas@gmx.de>
490
491         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
492         this public again, since it's occasionally useful.  (#121128,
493         Marco Pesenti Gritti)
494
495         * gtk/gtkaction.c: Add an "is_important" property and propagate
496         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
497
498 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
499
500         * tests/testtoolbar.c (main): connect to "delete_event" so the
501         application will actually quit when you close the window
502
503 2003-09-01  Matthias Clasen  <maclas@gmx.de>
504
505         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
506         (gtk_ui_manager_get_action): g_return_if_fail() if
507         path is NULL.
508         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
509         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
510         Marco Pesenti Gritti)
511
512 2003-08-31  Matthias Clasen  <maclas@gmx.de>
513
514         * gtk/gtktoolitem.c: Fix some typos in docs.
515
516         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
517         replaces gtk_ui_manager_activate().  (#120658)
518
519         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
520         gtk_ui_manager_activate().
521
522         * gtk/gtkaction.c: 
523         * gtk/gtkactiongroup.c: Some doc tweaks.
524
525         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
526         wasn't emitted anyway. Some doc tweaks.
527
528 2003-08-30  Matthias Clasen  <maclas@gmx.de>
529
530         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
531         rather than to "remove" on handlebox. 
532
533         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
534         activate an action found by following a path.  (#120658)
535
536         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
537
538         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
539
540         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
541         setter and getter. If it is set, add tearoff menu items to regular 
542         menus, but not to popups. Add a signal "changed", which gets emitted
543         when the merged ui has changed.  (#120649, #120656)
544
545         * tests/testmerge.c: Add button to test the generation of tearoff 
546         menu items.
547
548 2003-08-29  Matthias Clasen  <maclas@gmx.de>
549
550         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
551         Actually group the actions together rather than putting each in its 
552         own group.
553
554         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
555         proxy menu items for radio actions.
556
557         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
558
559 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
560
561         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
562         Fix use of uninitialized variable.
563
564         * gtk/gtktextutil.c
565         (_gtk_text_util_append_special_char_menuitems): add const cast to
566         get rid of warning
567
568 2003-08-29  Matthias Clasen  <maclas@gmx.de>
569
570         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
571         "draw_as_radio" as a separate property, not as an alias of 
572         "inconsistent".
573         (gtk_check_menu_item_get_property): 
574         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
575
576 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
577
578         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
579         are narrower than 13 time the estimated character width of the
580         font. (#107781, David Bordoley)
581
582         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
583         here if the GtkToggleButton is active. This may be the case if it
584         is a radio button.
585
586         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
587         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
588         Suarez-Alvarez).
589
590         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
591         property. (#111207, David Bordoley).
592
593         * gtk/gtktoggletoolbutton.c
594         (gtk_toggle_tool_button_create_menu_proxy): use new
595         "draw_as_radio" property on the menu item when the item is a radio
596         tool button
597
598         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
599         to only pay attention to the "use_underline" property when the
600         button label comes from the "label" property.
601
602 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
603
604         * configure.in: Added "sq" to ALL_LINGUAS.
605         
606 2003-08-28  Matthias Clasen  <maclas@gmx.de>
607
608         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
609         fix in the docs.
610
611         * gtk/gtkuimanager.c: Change the XML format:
612         <Root> element is replaced by <ui>,
613         <menu> element is replaced by <menubar>,
614         <submenu> element is replaced by <menu>,
615         <dockitem> element is replaced by <toolbar>,
616         <popups> element is gone,
617         verb attribute is replaced by action,
618         name defaults to action or the element name. 
619
620         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
621         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
622         by removing the user_data, entry_type and extra_data fields, 
623         GtkRadioActionEntry is further simplified by removing the callback. 
624         The user_data can now be specified as an argument to 
625         gtk_action_group_add_actions(). There is a new method 
626         gtk_action_group_add_radio_actions(), which is similar to 
627         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
628         and a callback parameter in addition to the user_data. The callback
629         is connected to the ::changed signal of the first group member.
630         There are _full() variants taking a GDestroyNotify of 
631         gtk_action_group_add_[radio_]actions().
632
633         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
634         on every member of the radio group when the active member is changed. 
635         Add an integer property "value", and a getter for the value of "value"
636         on the currently active group member. 
637
638         * tests/testactions.c: 
639         * tests/testmerge.c: 
640         * tests/merge-[123].ui:  
641         * demos/gtk-demo/appwindow.c: Adjust to these changes.
642
643         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
644
645 2003-08-27  Anders Carlsson  <andersca@gnome.org>
646
647         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
648         text view, so the tool bar won't have focus.
649
650 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
651
652         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
653         declaration not at start of block. (#120371, Damien Carbery)
654
655 2003-08-26  Matthias Clasen  <maclas@gmx.de>
656
657         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
658         for length, not gsize.
659
660         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
661         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
662         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
663
664         * demos/gtk-demo/appwindow.c: 
665         * tests/testactions.c: 
666         * tests/testmerge.c:
667         * tests/merge-1.ui:
668         * tests/merge-2.ui:
669         * tests/merge-3.ui: Adjust to the new XML format.
670
671 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
672
673         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
674         Since we add one to the layout's reported width to
675         account for the cursor, we need to subtract one when
676         setting the wrap width for the layout. (Fixes infinite
677         loop (#120325, Frederic Crozat)
678
679         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
680         Be a bit more careful about rounding when converting
681         wrapped width from Pango units to pixels.
682
683 2003-08-26  Matthias Clasen  <maclas@gmx.de>
684
685         Rename GtkMenuMerge to GtkUIManager. 
686         
687         * gtk/gtkuimanager.[hc]: New files. 
688         * gtk/gtkmenumerge.[hc]: Removed. 
689
690         * gtk/Makefile.am: 
691         * gtk/gtk.h:
692         * tests/testmerge.c: 
693         * tests/testactions.c: 
694         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
695         GtkUIManager.
696
697         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
698         add comments to entries array, remove newlines from ui definition. Don't 
699         use the ::add_widget signal.
700
701 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
702
703         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
704         include page->menu_label - causes various problems,
705         including #12047.
706
707 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
708
709         Merge from stable.
710
711         Fixes #115871, reported by Michael Natterer.
712
713         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
714         added ctrl_pressed and shift_pressed bitfields,
715         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
716         arg with GtkTreeSelectMode.
717
718         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
719         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
720         (_gtk_tree_selection_internal_select_node): all updated for
721         GdkModifierType -> GtkTreeSelectMode move.
722
723         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
724         and shift_pressed around selection handling block,
725         (gtk_tree_view_real_select_cursor_row),
726         (gtk_tree_view_real_toggle_cursor_row),
727         (gtk_tree_view_real_selection_cursor_parent),
728         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
729         instead of checking the event state. And also updates for the
730         GdkModifierType -> GtkTreeSelectMode move.
731
732 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
733
734         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
735         to the parent when there was no focus widget before
736         and no focus widget after - that is, when there are
737         no focusable widgets. (#108678, help tracking it
738         down from Padraig O'Briain, Federico Mena Quintero, )
739
740         * gtk/gtkxembed.[ch]: Move various shared utilities
741         for the XEMBED protocol eused by GtkPlug and GtkSocket 
742         here.
743
744         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
745         a flag bit that is sent with focus mesages to indicate
746         that the focus has wrapped around on the toplevel;
747         use this bit to catch infinite loops when there is no
748         focusable widget at ll in the entire toplevel.
749
750         * tests/testsocket.c (child_read_watch): Remove an
751         extraneous unref.
752
753         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
754         Up XEMBED protocol version to 1, add logic for 
755         sending the right version in XEMBED_EMBEDDED_NOTIFY.
756
757         * gtk/gtksocket.c (gtk_socket_add_window): Send
758         the embedder window in the XEMBED_EMBEDDED_NOTIFY
759         as the spec requires.
760
761 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
762
763         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
764         NumLock handling for non-XKB. Add a special case
765         hack for NumLock on Sun servers. (Patch from
766         Robert Basch, #115819)
767
768 2003-08-25  Matthias Clasen  <maclas@gmx.de>
769
770         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
771         Welinder)
772
773         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
774         gtk_action_group_set_translation_domain): Hooks for translation of
775         label and tooltip in GtkActionGroupEntries.  (#120620)
776
777 2003-08-25  Matthias Clasen  <maclas@gmx.de>
778
779         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
780         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
781         
782         * gtk/gtkactiongroup.c: 
783         * demos/gtk-demo/appwindow.c: 
784         * tests/testmerge.c: 
785         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
786
787 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
788
789         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
790
791 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
792
793         * gtk/Makefile.am: Fix accidental commit of references
794         to gtkresizegrip.[ch]
795
796 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
797
798         * gtk/gtkrc.c: Fix some missing initializations of
799         rc_file->directory.
800
801 2003-08-24  Matthias Clasen  <maclas@gmx.de>
802
803         * gtk/gtkaction.[ch]: 
804         * gtk/gtktoggleaction.[ch]: 
805         * gtk/gtktoggleactionprivate.h: 
806         * gtk/gtkradioaction.[ch]: 
807         * gtk/gtkactiongroup.[ch]: 
808         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
809         toolbars, using the EggMenu code by James Henstridge.
810
811         * gtk/gtk.h: Include new headers.
812         * gtk/Makefile.am: Add new files.
813
814         * tests/testactions.c: Test for actions.
815         * tests/testmerge.c: Test for menu merging.
816         * tests/merge-[123].ui: Test data for testmerge. 
817         * tests/Makefile.am: Add testactions and testmerge.
818
819         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
820         menubar and toolbar.
821         
822 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
823  
824         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
825         problem where rc_file->directory wasn't always getting
826         set. (#120549, Luis Villa)
827  
828 2003-08-22  Christian Rose  <menthos@menthos.com>
829
830         * configure.in: Added "ne" to ALL_LINGUAS.
831
832 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
833  
834         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
835         being parsed, not just the directories for those
836         files. Use that to catch recursion. (Part of
837         #114988)
838  
839 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
840
841         Merge from stable.
842
843         Fix option menu scrolling (#119821, Owen Taylor).
844
845         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
846         by #80484 and the CLAMP,
847         (get_menu_height): new function,
848         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
849         new_offset to handle page up/down right.
850
851 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
852
853         * gdk/x11/gdkkeys-x11.c: Change the interpretation
854         of consumed_modifiers so that it contains:
855          - Modifiers combinations actually found in
856            state.
857          - Single modifier modifier combinations.
858         But not multi-modifier combinations that aren't
859         in event->state. Document. (#100439)
860
861 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
862
863         Slightly modified patch from Yann Rouillard to improve selection
864         behavior with the mouse. Fixes #120187.
865
866         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
867         select/deselect items on the first button press of button 1,
868         expand checks for row_activated to include triple clicks.
869
870 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
871
872         Merge from stable.
873
874         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
875         approximate digit widths up, to avoid truncation, convert to
876         pango pixels when we have the full string width instead of converting
877         the approx digit width to pango pixels, take inner border and
878         interior focus into account correctly. (Fixes #116368, patch from
879         Morten Welinder).
880
881 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
882
883         * gtk/queryimmodules.c: Don't look at the same directory twice (in
884         simple cases). (#120342)
885
886 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
887
888         * gdk/gdkwindow.c: Make the layers in the paint stack have their
889         own pixmap instead of sharing one. (#118317)
890
891         * tests/testgtk.c (create_get_image): Fixes to make the window fit
892         on an 800x600 screen
893
894 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
895
896         Merged from stable.
897
898         * gtk/gtkspinbutton.c (start_spinning): change the type of step
899         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
900
901 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
902
903         * modules/input/gtkimcontextxim.[ch]: Substantially
904         rework the handling of status windows:
905         
906          - Store the current StatusWindow in the 
907            GtkIMContextXIM structure and vice-versa, so we
908            don't have to hunt the window hierarchy on
909            cleanup.
910          - Use the Gtkidget hierarchy instead of/or as well
911            as the GdkWindow hierarchy when finding the toplevel;
912            this helps for things like GtkHandlebox
913          - Watch GtkWidget::hierarchy_changed to catch 
914            changes in the toplevel without changes in the
915            GdkWindow (reparenting)
916          - Never create the GtkWindow for the status window
917            unless we have text to display.
918          - Various cleanups, add lots of comments.
919
920         (#115077, much help from Takuro Ashie and Hidetoshi
921         Tajima in tracking this down and figuring out a fix.)
922
923         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
924
925         * modules/input/gtkimcontextxim.c: Track the current
926         screen for each toplevel so that we show the status
927         window on the right screen. (#116340, James Su)
928
929         * modules/input/gtkimcontextxim.c: If create a new IC
930         when we currently have the focus, call XSetICFocus()
931         on it.
932         
933         * modules/input/gtkimcontextxim.c (get_im): Fix bug
934         with multiple open screens.
935
936 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
937
938         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
939         Replace client_window field with 'priv' pointer,
940         retaining binary compatibility.
941
942         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
943         save use_preedit/cursor_location/focus status and set
944         up the new slave appropriately. (#118651, Botond Botyanszki)
945
946 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
947
948         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
949         Don't use impl->position_info.clip_rect for toplevels.
950         (#107068, reported by Thomas Mirlacher)
951
952 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
953
954         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
955         Add a fallback for unaligned source data for
956         FORMAT_ARGB_MASK. (#117217)
957
958 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
959
960         * configure.in: Rework handling of REBUILD_PNGS,
961         so that we also don't try to REBUILD_PNGS when
962         cross-compiling and there is no gdk-pixbuf-csource.
963         But give an error if gtk/stock-icons/gtkstockpixbufs.h
964         is not in the source tree. (Note that REBUILDS_PNG
965         was set backwards before, which is why you always
966         had to manually recreate gtkstockpixbufs.h!)
967
968 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
969
970         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
971         path to libgtk.la. (#120080, Benedikt Spranger)
972
973 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
974
975         * modules/input/imcedilla.c: Make the list of default
976         languages more comprehensive. (Suggestion of
977         Fco. Javier F. Serrador)
978
979 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
980
981         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
982         parentheses when skipping args.
983
984 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
985
986         Fix major bug in row ref handling, so the new combo box
987         will actually work right (:. Bug #107748. Patch written
988         with help from Tim Janik.
989
990         The basic idea is to update the row refs in a closure,
991         before the actual signal is emitted (rather than having
992         the model connect signal handlers).
993
994         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
995         g_signal_new calls for row_inserted, row_deleted and
996         rows_reordered to use the new marshallers,
997         (row_inserted_marshall), (row_deleted_marshall),
998         (rows_reordered_marshall): the new marshallers,
999         (gtk_tree_row_ref_inserted_callback): renamed to
1000         gtk_tree_row_ref_inserted since it isn't a callback
1001         anymore and gets called by the marshaller now,
1002         (gtk_tree_row_ref_deleted_callback): likewise,
1003         (gtk_tree_row_ref_reordered_callback): likewise,
1004         (connect_ref_callbacks), (disconnect_ref_callbacks):
1005         removed,
1006         (gtk_tree_row_reference_new_proxy),
1007         (gtk_tree_row_reference_free),
1008         (gtk_tree_row_reference_inserted),
1009         (gtk_tree_row_reference_deleted),
1010         (gtk_tree_row_reference_reordered): updated.
1011
1012 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
1013
1014         Improve Cedilla handling - based on a patch from Gustavo 
1015         De Nardin, #111334
1016
1017         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
1018         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
1019         dead_acute+c combinations. Make this the default for
1020         fr and pt.
1021
1022         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
1023         Use LC_CTYPE instead of LC_MESSAGES to pick the default
1024         input method.
1025
1026 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
1027
1028         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
1029         for Multi_key+c+apostrophe.
1030
1031 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
1032
1033         Merged from stable.
1034
1035         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
1036         on vertical scrolling. (#108035, reported by Tim Janik).
1037
1038 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
1039
1040         Merged from stable.
1041
1042         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
1043         (gtk_tree_model_sort_level_find_insert),
1044         (gtk_tree_model_sort_insert_value): fix off-by-one error.
1045         (#109292 continued, patch from Yann Rouillard).
1046
1047 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
1048
1049         (Note: This is not exactly the same as the patch which went in
1050          gtk-2-2).
1051
1052         * gtk/gtktreeview.c (gtk_tree_view_class_init),
1053         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
1054         Also support the up, down, left, right, home, end, page up and
1055         page down keys on the numpad. (#119419, reported by Alex Larsson).
1056
1057 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
1058
1059         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
1060
1061         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
1062         we link libgtk against X explicitely, since we
1063         make GTK+ calls for plug/socket.
1064
1065         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
1066         G_MODULE_SUFFIX here. 
1067
1068         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
1069         XShmPutImage with #ifdef USE_SHM.
1070
1071 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
1072
1073         * gtk/gtkfilesel.c (gtk_file_selection_populate):
1074         Don't reposition the cursor when we aren't trying
1075         to complete. (Fixes problems with selection on
1076         startup, #108433, reported by Mark Finlay.)
1077
1078         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
1079         code that tried to position the cursor after the common
1080         prefix when there was one, it wasn't working, and
1081         would be hard to fix. Just always put the cursor
1082         at the end when completing.
1083
1084 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
1085
1086         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
1087         the current directory fails because of encoding
1088         conversion problems, walk up textually to parent
1089         directories until we can convert. (#113627)
1090
1091 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
1092
1093         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
1094         Remove usage of menu_shell->ignore leave which was
1095         to deal with stray events we no longer get because
1096         we do grabbing differently. Comment it as unused in
1097         the header. (#115837, Keith Bissett)
1098
1099 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
1100
1101         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
1102         Fix some places that weren't properly Xinerama-ified.
1103
1104         * gtk/gtkmenu.c: Fix problem with windows that scroll
1105         at the top of the screen.
1106
1107 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
1108
1109         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
1110         key-press-event on the entry, so input methods get access to 
1111         key presses before GtkCombo customization.
1112         (#115451, Botond Botyanszki)
1113
1114 2003-08-13  Anders Carlsson  <andersca@gnome.org>
1115
1116         * tests/testtoolbar.c: (set_important_func), (important_toggled),
1117         (create_items_list):
1118         Add an important column.
1119         
1120 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
1121
1122         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
1123         against reentrancy from ::focus-out handlers. 
1124         (#118129, Felipe Heidrich)
1125
1126 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
1127
1128         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
1129         GDK_LOCK_MASK before calling
1130         gdk_keymap_translate_keyboard_state so bindings 
1131         and accelerators are independent of the Caps-lock
1132         key. (#115384, reported by Toni Willberg)
1133
1134 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
1135
1136         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
1137         break statements (#119494, Soeren Sandmann)
1138
1139 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
1140
1141         * gtk/gtkwidget.h: Mark parent public as well; it's
1142         extensively accessed in existing code, so there is
1143         no advantage in making people use get_parent().
1144         (Tweak to #119463 fix)
1145
1146 2003-08-11  Matthias Clasen  <maclas@gmx.de>
1147
1148         Add support for EWMH "Above" and "Below" window states.  (105100,
1149         Manuel Clos)
1150         
1151         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
1152         State" demo.
1153
1154         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
1155         gtk_window_set_keep_below.
1156
1157         * gtk/gtk.def: Add gtk_window_set_keep_above and
1158         gtk_window_set_keep_below.
1159
1160         * gtk/gtkwindow.c (gtk_window_set_keep_below):
1161         (gtk_window_set_keep_above): New functions, call the corresponding
1162         gdk functions.
1163
1164         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
1165         function, sets _NET_WM_STATE_BELOW.
1166         (gdk_window_set_keep_above): New function, sets
1167         _NET_WM_STATE_ABOVE.
1168
1169         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
1170         gdk_window_set_keep_below.
1171
1172         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
1173         GDK_WINDOW_STATE_BELOW.
1174
1175         * gdk/gdk.def: Add gdk_window_set_keep_above and
1176         gdk_window_set_keep_below.
1177
1178         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1179         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1180         xmlcatalog in PATH.  (#119115)
1181
1182 2003-08-10  Matthias Clasen  <maclas@gmx.de>
1183
1184         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
1185         public.  (#119463)
1186
1187 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
1188
1189         * gdk/gdkevents.h:
1190         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
1191         docs on GdkFilterFunc and GdkFilterReturn.
1192
1193 2003-08-09  Matthias Clasen  <maclas@gmx.de>
1194
1195         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
1196         to let the mouse wheels select the month. Scrolling down
1197         moves forward in time. (#53134, Abigail Brady) 
1198
1199         * gtk/gtkcalendar.c: Complete the RTL flipping support for
1200         GtkCalendar, make it possible to flip the headings using the
1201         "magic translated string" technique.  Translators, note the
1202         comment in gtk_calendar_init() explaining this.  (#102416)
1203
1204         * gtk/gtkcalendar.c: Get the information about the first day of
1205         the week from the locale using another instance of the "magic
1206         translated string" technique.  Ignore the display option
1207         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
1208
1209         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
1210         date is dragged as text, formatted via strftime %x. Text drops are
1211         accepted if g_date_set_parse() can make sense of the text. A
1212         dedicated data format for date DND has not been introduced yet,
1213         since there didn't seem to be sufficient consensus on such a
1214         format on xdg-list.  (#117297)
1215         
1216 2003-08-08  Matthias Clasen  <maclas@gmx.de>
1217
1218         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
1219         Fix a segfault.  (#115284, Jan Kratochvil)
1220
1221 2003-08-08  Tor Lillqvist  <tml@iki.fi>
1222
1223         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
1224         coordinates for events that have such. Print coordinates for enter
1225         and leave events.
1226
1227         (gdk_event_translate): Don't use event uninitialixed in the
1228         return_exposes branch of the WM_PAINT handler.
1229
1230         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
1231         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
1232         Must offset top-level window coordinates here, too.
1233
1234 2003-08-08  Matthias Clasen  <maclas@gmx.de>
1235
1236         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
1237         when maximized or fullscreen.
1238
1239 2003-08-07  Tor Lillqvist  <tml@iki.fi>
1240
1241         * gdk/win32/gdkinput-win32.h
1242         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
1243         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
1244         used.
1245
1246         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
1247         accordingly, in fact an uninitialised variable was dereferenced.
1248         
1249
1250         [Win32] Add support for multiple monitors. 
1251         
1252         * gdk/win32/gdkprivate-win32.h
1253         * gdk/win32/gdkglobals-win32.c: New global variables for
1254         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
1255         _gdk_offset_x and _gdk_offset_y.
1256         
1257         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
1258         functions, enumeration functions passed to EnumDisplayMonitors().
1259
1260         (gdk_display_open): If the EnumDisplayMonitors() and
1261         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
1262         if to find out monitor info.
1263
1264         Calculate the offset between Win32 coordinates (relative to the
1265         primary monitor's origin (and thus negative on monitors to the
1266         left of or above it), and GDK's (visible coordinates should be
1267         non-negative).
1268         
1269         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
1270         gdk_screen_get_monitor_geometry): Use information collected above.
1271
1272         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
1273         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
1274
1275         (gdk_window_get_geometry, gdk_window_get_origin,
1276         gdk_window_get_frame_extents): For top-level windows, add
1277         _gdk_offset_{x,y} to GDK root window coordinates
1278
1279         Still need to handle multiple monitors in
1280         gdk_window_fullscreen(). Probably should make the window
1281         fullscreen on the monitor where the cursor is?
1282
1283         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
1284         root window coordinates in GdkEvents.
1285
1286         
1287         [Win32] Fix geometry hint handling. Add support for resize
1288         increment and base size, and aspect ratio geometry hints. The
1289         "gridded geometry" test in testgtk now works beautifully.
1290
1291         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1292         Turns out this function shouldn't actually ever modify the
1293         window's size, just store the hints. (Old code kept for a while
1294         inside #if 0.)
1295
1296         (gdk_window_set_hints): Remove presumably broken code that handles
1297         the position hints, this function is obsolete anyway.
1298
1299         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
1300         variables, not used.
1301
1302         (adjust_drag): New function, used to implement resize increment
1303         hints.
1304
1305         (gdk_event_translate): Handle WM_SIZING, implement resize
1306         increment and base size, and aspect ratio geometry hints here. The
1307         WM_GETMINMAXINFO handler takes care of the minimum and maximum
1308         size hints as before. Fix the WM_GETMINMAXINFO handler to take
1309         into account window decorations. No need to modify the
1310         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
1311         the defaults are fine.
1312         
1313         * gdk/win32/gdkprivate-win32.h 
1314         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
1315         _gdk_win32_get_adjusted_client_rect): New helper functions.
1316
1317 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1318
1319         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
1320         toplevel->have_* flags before iterating over the _NET_WM_STATE 
1321         atoms.  (#119217) 
1322
1323 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
1324  
1325         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
1326         Fix a bug where on theme change, resize/redraw wasn't
1327         properly getting queued on toplevel windows. (#116346,
1328         Rajkumar Siva)
1329  
1330         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
1331         Fix bug where wrong coordinates were used for toplevel
1332         window.
1333  
1334 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
1335
1336         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
1337         page_num variable (Archit Baweja)
1338
1339 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1340
1341         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
1342         cope with C libraries with crippled locale support.  (#115293)
1343
1344 2003-08-07  Hans Breuer  <hans@breuer.org>
1345
1346         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
1347         (only if the new window not known to Gdk) to get proper
1348         leave notification, and get rid of the wrong placed 
1349         tooltips, bug #102283
1350  
1351         (gdk_event_translate) : small code reordering to not get
1352         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
1353         menus, bug #117367
1354
1355 2003-08-07  Tor Lillqvist  <tml@iki.fi>
1356
1357         * gdk/gdk.def
1358         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
1359         missing function, trivially implement.
1360
1361 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1362
1363         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
1364         rendering.  (#118646, Charles Kerr) 
1365
1366 2003-08-06  Hans Breuer  <hans@breuer.org>
1367
1368         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
1369         initialize bits to 0 (probably default on NT)
1370
1371         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1372         now it works as intended ;-)
1373
1374 2003-08-04  Hans Breuer  <hans@breuer.org>
1375
1376         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
1377         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
1378
1379         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
1380         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
1381
1382         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
1383         against all expectations it is basically ony a call with WM_SETICON
1384         needed (the visual effect is there, though colors or mask are
1385         still somewhat wrong).
1386         * gdk/win32/gdkwindow-win32.h : place to store the HICON
1387
1388         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
1389         pixel drawing as it was fixed at 1999-08-23
1390
1391         gtk/gtk.def : updated
1392
1393 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
1394
1395         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
1396         Add a missing break. (#119156, Callum McKenzie)
1397
1398 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1399
1400         * gtk/gtkmenu.c (gtk_menu_position): New positioning
1401         algorithm.(#116649)
1402
1403 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1404
1405         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
1406         property
1407         
1408         * gtk/gtkradiotoolbutton.c
1409         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
1410
1411         * gtk/gtkradiotoolbutton.c
1412         (gtk_radio_tool_button_new_with_stock_from_widget): make this
1413         function take a stock_id.
1414
1415         * gtk/toolbar: documentation
1416
1417 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
1418
1419         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
1420         Fix problem where use_xshm was getting set wrong if
1421         MIT_SHM wasn't found. (George Lebel)
1422
1423 2003-08-04  Tor Lillqvist  <tml@iki.fi
1424
1425         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
1426         actually use the passed-in filter list. The function also needs a
1427         GdkWindow parameter, as filter functions expect
1428         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
1429
1430 2003-08-03  Matthias Clasen  <maclas@gmx.de>
1431
1432         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
1433         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
1434         the term "virtual screen".  (#119030, Tor Lillquist)
1435
1436 2003-08-02  Matthias Clasen  <maclas@gmx.de>
1437
1438         * tests/testtext.c (test_init): 
1439         * tests/testgtk.c (test_init): 
1440         * tests/testdnd.c (test_init): 
1441         * demos/pixbuf-init.c (pixbuf_init): 
1442         * demos/gtk-demo/main.c (main): Use g_setenv().
1443
1444         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
1445         g_unsetenv(). 
1446
1447 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
1448
1449         * configure.in: Requires glib-2.3.0, pango-1.2.0.
1450
1451         * configure.in: Require Xft version 2,
1452         remove code for handling older versions of pango and Xft.
1453         Many miscellaneous improvements to X checks
1454
1455         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
1456         a library to a variable, avoiding dups.
1457
1458         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
1459         Always load "fixed"
1460
1461         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
1462         for pangox.
1463
1464 2003-08-02  Matthias Clasen  <maclas@gmx.de>
1465
1466         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
1467         (palette_drop_handle): 
1468         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
1469         drops with the wrong format, since the KDE color chooser incorrectly
1470         drops application/x-color with format 8.  (#118810)
1471
1472         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
1473         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
1474         Accept drops with the wrong format, since the KDE color chooser 
1475         incorrectly drops application/x-color with format 8.  (#118810)
1476
1477 2003-08-02  Tor Lillqvist  <tml@iki.fi>
1478
1479         Fix gdk/win32 window geometry handling again. The window position
1480         in a GDK_CONFIGURE event should be that of the client area, not of
1481         the window decorations. (I was confused by the term "window
1482         border" in X11. It does *not* mean the window manager
1483         decorations. There are no X11-style window borders in Win32.)
1484         Also, this time do take the geometry hints into account
1485         appropriately when moving windows. Now testgtk's gravity test's
1486         move buttons work OK. There are stil problems with taking gravity
1487         into account when showing a hidden window.
1488
1489         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
1490         instead of separate fields.
1491         
1492         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
1493         adjust for decorations.
1494
1495         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
1496         adjust_for_gravity_hints): New functions.
1497         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
1498         above functions, take geometry hints into account.
1499         (gdk_window_set_geometry_hints): Size hints specicy client area,
1500         not including decorations.
1501
1502 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
1503
1504         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
1505         return an absolute path (#115590), fix a problem where
1506         you could crash the file selector with a looong name
1507         by returning a newly allocated buffer.
1508
1509 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
1510
1511         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
1512         bug in rarely or never hit code path (#118071,
1513         Tor Lillqvist)
1514
1515 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
1516
1517         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
1518         If the check for missing depths, try actually creating pixmaps
1519         of the depths to deal with Xinerama not reporting
1520         all the depths it should. (#115822)
1521
1522 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
1523
1524         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
1525         forward KeyRelease events as well as KeyPress events.
1526         (#115597)
1527
1528 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
1529  
1530         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
1531         if argc is 0 as well, instead of leaving it unset.
1532         (#116023, Michael Meeks)
1533  
1534 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1535
1536         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
1537         default to TRUE; ignore the property when api_mode != NEW_API
1538
1539 2003-07-31  Matthias Clasen  <maclas@gmx.de>
1540
1541         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
1542         to icon, to pacify gtk-doc.
1543
1544         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
1545         example. 
1546
1547 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1548
1549         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
1550
1551 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1552
1553         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
1554         overflow_item field.
1555
1556 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1557
1558         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
1559         an internal function
1560
1561         * gtk/gtktoolitem.h: remove unused declaration of
1562         _gtk_tool_item_get_drag_window().
1563
1564 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1565
1566         * gtk/gtktoolbutton.[ch]:
1567         (gtk_tool_button_new): swap icon_widget and label arguments to
1568         match BonoboUIToolbarButton.
1569
1570         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
1571
1572 2003-07-30  Matthias Clasen  <maclas@gmx.de>
1573
1574         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
1575         signal docs. 
1576
1577 2003-07-29  Tor Lillqvist  <tml@iki.fi>
1578
1579         Fix for #108007, #112402, #117042: There was confusion in
1580         gdk/win32 at various places whether a window position refers to
1581         the decoration position or the client area position. Also whether
1582         window size includes decorations or not.
1583         
1584         The correct interpretation apparently is that in GDK (like in
1585         X11), a top-level window position means the decoration's position,
1586         but size means the window's inner size (client area size). In the
1587         Win32 API, the window size usually includes the decorations,
1588         though.
1589         
1590         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
1591         #ifdef G_ENABLE_DEBUG.
1592         (handle_configure_event): New function, generates GDK_CONFIGURE
1593         events from WM_SIZE and WM_MOVE messages. Even if no event is
1594         generated because of the event mask, still set the private
1595         position and size fields. Calculate position and size correctly.
1596         (gdk_event_translate): Call handle_configure_event().
1597
1598         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
1599
1600         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
1601         macros. Cosmetic debugging output changes.
1602         (SafeAdjustWindowRectEx): Remove. If an application wants to
1603         locate a window outside of the screen, it's not GDK's business to
1604         prevent it. And anyway, with multiple monitors, negative
1605         coordinates are perfectly normal.
1606         (gdk_window_new): Adjust the window size for decorations after
1607         _gdk_window_init_position() has done its job. (But the big window
1608         code currently is presumably broken on Win32 anyway.)
1609         (gdk_window_move): The position passed in is supposed to be that
1610         of the window border, so don't need to adjust for decorations.
1611         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
1612
1613 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1614
1615         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
1616         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
1617         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
1618         gtk_toolbar_append_space, gtk_toolbar_insert_item,
1619         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
1620         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
1621         gtk_toolbar_new, gtk_toolbar_prepend_item):
1622
1623         Move documentation inline from template files.
1624
1625         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
1626         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
1627         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
1628         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
1629         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
1630         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
1631         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
1632
1633         Copy documentation from stable that was added after the EggToolbar
1634         branched.
1635
1636         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
1637
1638 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1639
1640         * gtk+/docs/: Commit autogenerated changes, so patches will make
1641         sense.
1642
1643 2003-07-27  Tor Lillqvist  <tml@iki.fi>
1644
1645         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
1646         the keyboard state returned by GetKeyboardState() doesn't
1647         distinguish between the left and right Control and Alt keys. Thus
1648         we cannot detect AltGr (which is supposed to be left Control +
1649         right Alt) the same way as on NT-based systems, but have to accept
1650         either Control + either Alt as AltGr.
1651
1652 2003-07-27  Matthias Clasen  <maclas@gmx.de>
1653
1654         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1655         Fix function name in warning message.  (#118156, Tim-Philipp
1656         Mller)
1657
1658         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
1659         is-expander and is-expanded are boolean properties, not ints.
1660         (#118359, Josh Parsons)
1661
1662 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1663
1664         * gtk/gtkimagemenuitem.c
1665         (gtk_image_menu_item_toggle_size_request): don't request
1666         toggle_space when the image width is 0.
1667
1668 2003-07-25  Tor Lillqvist  <tml@iki.fi>
1669
1670         * gdk/win32/gdkprivate-win32.h
1671         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
1672         and _gdk_keyboard_has_altgr.
1673         
1674         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
1675         ones detailled here.
1676
1677         Code that has been ifdeffed out for a long time removed. Remove
1678         some really old doc comments that were left behind for some public
1679         functions, the official ones are in the X11 backend anyway. Change
1680         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
1681         multi-line boolean expressions to have the operators at ends of
1682         lines.
1683
1684         As mouse capture with SetCapture() indeed seems to work OK, no
1685         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
1686
1687         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
1688         needed at some time, and things seem to work fine now without
1689         (knock on wood).
1690
1691         Ifdef out the search for some Latin locale keyboard layout being
1692         loaded. Not used currently, but might be needed after all, if we
1693         decide that we want to be able to generate ASCII control character
1694         events with a non-Latin keyboard.
1695
1696         (assign_object): New helper function, handles the g_object_ref()
1697         and unref() calls when assigning GObject pointers.
1698                 
1699         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
1700         enter event when the pointer has moved to an ancestor window. Was
1701         left out by mistake.
1702
1703         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
1704
1705         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
1706         functionality, using ClipCursor().
1707                 
1708         (find_window_for_mouse_event): Splice part of code into new
1709         function find_real_window_for_grabbed_mouse_event().
1710
1711         (fixup_event, append_event, apply_filters): New functions, code
1712         refactored out from elsewhere.
1713
1714         (synthesize_enter_or_leave_event, synthesize_leave_event,
1715         synthesize_enter_event,
1716         synthesize_leave_events,synthesize_enter_events): Also take a
1717         GdkCrossingMode parameter, in preparation to generating
1718         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
1719
1720         (fixup_event, append_event, fill_key_event_string): New functions,
1721         code refactoring.
1722
1723         (vk_from_char, build_keypress_event, build_keyrelease_event):
1724         Removed as part of dropping WM_CHAR handling.
1725
1726         (build_key_event_state,gdk_event_translate): Call
1727         GetKeyboardState(), once, for each keyboard message, instead of
1728         several calls to GetKeyState() here and there.
1729
1730         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
1731         at it, do some major refactoring, and some fixes for potential
1732         problems noticed while going through the code.
1733
1734         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
1735         WM_KEYUP. Don't need the state variables related to whether to
1736         wait for WM_CHAR or not, and whether the current key is
1737         AltGr. Remove lots of complexity. Thus don't need the
1738         use_ime_composition flag.
1739
1740         Not handling WM_CHAR means dead key handling will have to be taken
1741         care of by GTK, but that seems to work fine, so no worry.
1742
1743         Another side-effect is that Alt+keypad digits don't work any
1744         longer, but it's better to learn to use GTK's ISO14755 support is
1745         anyway.
1746
1747         Be more careful in checking whether AltGr is involved. Only
1748         attempt to handle it if the keyboard actually has it. And
1749         explicitly check for *left* Control plus *right* Alt being
1750         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
1751         chars.
1752
1753         Handle keys using similar code as in the X11 backend. As we have
1754         built a keymap in gdkkeys-win32.c anyway, use it by calling
1755         gdk_keymap_translate_keyboard_state() to look up the keysym from
1756         the virtual key code and keyboard state. Build the key event
1757         string in exactly the same way as the X11 backend.
1758
1759         If an IME is being used, don't generate GDK events for keys
1760         between receiving WM_IME_STARTCOMPOSITION and
1761         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
1762         
1763         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
1764         the IME, not just the first one.
1765
1766         gdk_event_translate() is still quite complex, could split the
1767         message handler cases out into separate functions.
1768
1769         On mouse events, when the mouse is grabbed, use
1770         find_real_window_for_grabbed_mouse_event() in order to be able to
1771         generate correct crossing events.
1772         
1773         No longer take a pre-allocated GdkEvent as parameter. Instead,
1774         allocate events as needed and append them to the queue. (This is
1775         different from how gdk_event_translate() in the X11 backend
1776         works.) This change made the code much clearer, especially in the
1777         cases where we have to generate several GDK events for one Windows
1778         message.  Return FALSE if DefWindowProc() should be called, TRUE
1779         if not. If DefWindowProc() should not be called, also return the
1780         value to be returned from the window procedure.
1781
1782         (Previously, the interaction with gdk_event_translate()'s caller
1783         was much more complex, when we had to indicate whether the
1784         already-queued event should be left in the queue or removed, and
1785         in addition also had to indicate whether to call DefWindowProc()
1786         or not, and what value to return from the window procedure if
1787         not.)
1788
1789         Don't use a separate "private" variable required to be pointing to
1790         the GdkWindowObject of the "window" variable at all times. Just
1791         use casts, even if looks a bit uglier.
1792
1793         Notice destroyed windows as early as possible, and break out of
1794         the messsage switch.
1795
1796         Use _gdk_pointer_root as current_window when the pointer is
1797         outside GDK's top-level windows.
1798         
1799         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
1800         appropriate, based on ImmIsIME().
1801         
1802         (gdk_event_translate, gdk_event_send_client_message_for_display,
1803         gdk_screen_broadcast_client_message): Implement client messages.
1804         Use a registered Windows message to pass GDK client messages. Note
1805         that the amount of user data is restricted to four bytes, as it is
1806         carried in the LPARAM. (The WPARAM is used for the message type
1807         "atom".)
1808         
1809         (real_window_procedure): Adapt for new gdk_event_translate()
1810         interface.
1811
1812         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
1813         _gdk_input_locale_is_ime initially.
1814
1815         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
1816         of g_colormap_ref()/unref().
1817
1818         (gdk_window_new): Made code a bit more like the X11 one, pretend
1819         to handle screens (although we just have one for now).
1820
1821         * gdk/x11/gdkevents-x11.c
1822         (gdk_event_send_client_message_for_display,
1823         gdk_screen_broadcast_client_message): Document the user data
1824         limitation on Win32.
1825
1826         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
1827         and leave notify detail output.
1828
1829         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
1830         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
1831         for those, so that the GtkIMContextCimple compose tables will
1832         work. Deduce if the keyboard layout has the AltGr key, and set the
1833         above flag accordingly.
1834
1835 2003-07-26  Matthias Clasen  <maclas@gmx.de>
1836
1837         * gtk/gtkwidget.c: Document DND signals.
1838
1839 2003-07-24  Matthias Clasen  <maclas@gmx.de>
1840
1841         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
1842         insensitive when editing isn't possible.  (#118150)
1843
1844 2003-07-23  Matthias Clasen  <maclas@gmx.de>
1845
1846         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
1847         spinbutton wrap.  (#118097, John Darrington)
1848
1849         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
1850
1851 2003-07-20  Hans Breuer  <hans@breuer.org>
1852
1853         * makefile.msc : new file to build it all
1854         * Makefile.am : ... added to EXTRA_DIST
1855
1856         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
1857           gtk/makefile.msc.in tests/makefile.msc : updated
1858
1859         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
1860         functions
1861
1862         * gtk/gtkbbox.c : use g_return_val_if_fail() if
1863         there is a value to return
1864
1865         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
1866         static correctness
1867
1868         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
1869         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
1870
1871         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
1872
1873         * gtk/gtkimmulticontext.c : use gtkprivate.h
1874
1875         * gtk/stock-icons/stock_color_picker_25.png
1876           gtk/stock-icons/stock_jump_to_rtl_16.png
1877           gtk/stock-icons/stock_jump_to_rtl_24.png
1878           gtk/stock-icons/stock_redo_rtl_16.png
1879           gtk/stock-icons/stock_redo_rtl_24.png
1880           gtk/stock-icons/stock_undelete_rtl_16.png
1881           gtk/stock-icons/stock_undelete_rtl_24.png
1882           gtk/stock-icons/stock_undo_rtl_16.png :
1883           gtk/stock-icons/stock_undo_rtl_24.png :
1884         readded as binary
1885
1886 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1887
1888         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
1889         leftover request of {xy}thickness
1890
1891 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1892
1893         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
1894         attempt to add a NULL icon to the box.
1895
1896 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1897
1898         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
1899         on focus in/out.
1900
1901 2003-07-19  Matthias Clasen  <maclas@gmx.de>
1902
1903         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
1904         * gtk/gtkiconfactory.c (get_default_icons): Add
1905         stock_dialog_authentication_48.  (#65765) 
1906         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
1907         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
1908
1909         * gtk/gtkbbox.h: 
1910         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
1911         function. (#64562) 
1912
1913 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1914
1915         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
1916         declaration
1917
1918         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
1919         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
1920         instead of full draws.
1921
1922 2003-07-18  Matthias Clasen  <maclas@gmx.de>
1923
1924         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
1925
1926         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
1927         signal, move_viewport. 
1928         (gtk_text_view_move_viewport): New function which implements the
1929         move_viewport functionality. 
1930         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
1931         the viewport. (#78669) 
1932
1933         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
1934         move_viewport argument. 
1935
1936         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
1937         property.  (#111779) 
1938
1939         * gtk/gtkwindow.h: 
1940         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
1941
1942         * gtk/gtkmessagedialog.h:
1943         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
1944         (#65501, Sebastian Rittau)
1945
1946 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1947
1948         * gtk/gtktextview.c (changed_handler): use
1949         gtk_widget_queue_resize_noredraw().
1950
1951 2003-07-16  Jody Goldberg <jody@gnome.org>
1952
1953         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
1954
1955 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1956
1957         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
1958         API. 
1959
1960 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1961
1962         By popular request give toolbuttons a border.
1963         
1964         * gtk/gtktoolitem.c
1965         (gtk_tool_item_size_allocate):
1966         (gtk_tool_item_size_request): don't request and allocate a border
1967         around the child
1968
1969         * gtk/gtktoolbutton.c 
1970         (gtk_tool_button_size_allocate):
1971         (gtk_tool_button_size_request): remove these functions
1972
1973         * gtk/gtktoolbar.c 
1974         (gtk_toolbar_size_request):
1975         (gtk_toolbar_size_allocate): request and allocate a border if we
1976         have a shadow.
1977
1978 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
1979
1980         Merged from stable.
1981
1982         Fixes issues pointed out by Morten Welinder in #115140.
1983
1984         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
1985         (do_validate_rows): update validated_area with a logic OR instead
1986         of a bitwise OR,
1987         (validate_rows_handler): make the if statement match the one in
1988         validate_rows(), so we don't leak the timeout.
1989
1990 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
1991
1992         Merged from stable.
1993
1994         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
1995         should only grab focus back if the "cell_editable" widget still
1996         has focus. (Fixes #110104, testcase provided by Marco Pesenti
1997         Gritti).
1998
1999 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
2000
2001         Merged from stable.
2002
2003         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2004         Don't set attr.event_mask twice, those things were meant to be
2005         ORred. (#115139, pointed out by Morten Welinder).
2006
2007 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
2008
2009         Merged from stable.
2010
2011         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
2012         if needed. (Fixes #115869, reported by Michael Natterer).
2013
2014 2003-07-15  Matthias Clasen  <maclas@gmx.de>
2015
2016         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2017         Fight against gtk-doc stupidity.
2018
2019 2003-07-13  Matthias Clasen  <maclas@gmx.de>
2020
2021         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
2022         targets, to pacify gtk-doc.
2023
2024 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2025
2026         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
2027         label_text, label_widget and icon_widget. (#117312, 
2028         Christian Persch)
2029         
2030 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2031
2032         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
2033         "horizontal-offset" and "vertical-offset" that determines the
2034         position of the menu when it is a submenu. 
2035
2036         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
2037         submenus according to new vertical- and horizontal-offset
2038         properties.
2039
2040 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
2041
2042         Merged from stable.
2043
2044         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
2045         case drags to "0", scroll to the top after dropping. (Fixes #94968,
2046         reported by Alp Toker).
2047
2048 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
2049
2050         Merged from stable.
2051
2052         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
2053         code (#115784, Owen Taylor).
2054
2055 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
2056
2057         Merged from stable.
2058
2059         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2060         free the old text and extra_attrs *after* we parsed the new
2061         markup string. (Fixes #114485, reported by Owen Taylor).
2062
2063 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
2064
2065         Merged from stable.
2066
2067         Fixes #113904, testcase provided by Rene Seindal.
2068
2069         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
2070         pressed_button to -1 when a row has been activated,
2071         (gtk_tree_view_motion_bin_window): only start a drag if there's
2072         a button being pressed.
2073
2074 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
2075
2076         Merged from stable.
2077
2078         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
2079         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
2080         to avoid a roundtrip (#110272, Owen Taylor).
2081
2082 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
2083
2084         Merged from stable.
2085
2086         This patch really really fixes scrolling. Related bugs: #81627,
2087         testcase provided by Timo Sirainen, #111500, testcase provided by
2088         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
2089
2090         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
2091         which is equal to the lower border of the window means scrolling
2092         to an invisible row, always update the dy when scrolling to an
2093         invisible row, corrected area_above/below calculations for
2094         invisible rows, when walking the tree correct the size
2095         subtracted for invalidated rows, fix wrong logic in comment.
2096
2097 2003-07-11  Matthias Clasen  <maclas@gmx.de>
2098
2099         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
2100         mime_types.  (#117219, Steve Chaplin)
2101
2102 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
2103
2104         * gdk/x11/gdkevents-x11.c (get_real_window)
2105         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
2106         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
2107         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
2108         Don't assume that all events start with XEventAny - Xkb events
2109         don't! (#105745). So, only do that for core events, and for
2110         non-core events, add a system for registering event types
2111         that start with XEventAny.
2112
2113         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
2114         Check to see if the result of gdk_window_lookup_for_display()
2115         is actually a window.
2116
2117 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
2118
2119         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
2120         check a silent assert, so it follows the g_free() behaviour.
2121
2122 2003-07-11  Matthias Clasen  <maclas@gmx.de>
2123
2124         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
2125         vertically.  (#109823, Joe Shaw)
2126
2127 2003-07-11  Morten Welinder  <terra@gnome.org>
2128
2129         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
2130         access error.  (#69436)
2131
2132 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
2133
2134         Landing GtkTreeModelFilter and the completion code. (Test program
2135         and documentation will follow next week).
2136
2137         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
2138         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
2139
2140         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
2141         necessary code to hook up completion.
2142
2143         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
2144         GtkCellLayout interface.
2145
2146         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
2147
2148         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
2149         source files.
2150
2151 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
2152
2153         Merge from stable.
2154
2155         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
2156         directly return from ->window_at_pointer, but set win_x and win_y
2157         first if needed. (Fixes #110166, reported by Arno Charlet).
2158
2159         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
2160         function to accept GdkDrawables and not just GdkWindows. This was
2161         already done in some other functions a while back, but this patch
2162         got lost for some reason.
2163
2164 2003-07-09  Matthias Clasen  <maclas@gmx.de>
2165
2166         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
2167         direction when sorting children.  (#116540, Soeren Sandmann)
2168
2169 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
2170
2171         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
2172         Change _gdk_x11_send_xevent_async() to 
2173         _gdk_x11_send_client_message_async() avoid using Xlib
2174         internals that are different on Solaris. 
2175         (#116917, Morten Welinder)
2176
2177 2003-07-08  Matthias Clasen  <maclas@gmx.de>
2178
2179         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
2180         (#116501, Doug Quale)
2181
2182 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2183
2184         * gtk/gtktoggletoolbutton.h: remove strange #define
2185         * gtk/gtktoolbutton.h: fix cut'n'paste error
2186         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
2187         private data
2188         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
2189         private data instead of g_new0()
2190         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
2191         instance private data
2192
2193 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2194
2195         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
2196         for INPUT_ONLY window
2197         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
2198         * gtk/gtknotebook.c (gtk_notebook_realize): same
2199         * gtk/gtkexpander.c (gtk_expander_realize): same
2200         * gtk/gtkrange.c (gtk_range_realize): same
2201
2202         Fix #116303
2203
2204 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2205
2206         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
2207         when detail is "menuitem". With the new menu look is isn't needed
2208         anymore.
2209
2210         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
2211         resize here, so that tool items will get a chance to relayout
2212         themselves based on the toolbar configuration.
2213
2214         change DEFAULT_SPACE_SIZE to 4 instead of 5
2215
2216         * gtk/gtktoolbar.c 
2217         Get rid of "!GTK_BIN (item)->child means separator". Separators
2218         are widgets in their own right
2219
2220         change DEFAULT_SPACE_SIZE to 4 instead of 5
2221         
2222         (get_space_size): remove this function
2223         (toolbar_item_is_homogeneous): new function
2224
2225         * gtk/gtkseparatortoolitem.c
2226         (gtk_separator_tool_item_size_request): new function.
2227
2228 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2229
2230         * gtk/gtktoggletoolbutton.h: use private data, add new
2231         internal function _gtk_toggle_tool_button_get_button()
2232
2233         * gtk/gtktoolbutton.h: move to private data
2234
2235         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
2236         private data.
2237
2238 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2239
2240         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
2241         type check, (#116947, Krasimir Angelov)
2242
2243         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
2244         
2245         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
2246         data. Not instance private data yet, because of bug 116921.
2247
2248         * gtk/gtktoolitem.h: new accessors:
2249                 gtk_tool_item_get_homogeneous ()
2250                 gtk_tool_item_get_expand ()
2251                 gtk_tool_item_get_pack_end ()
2252                 gtk_tool_item_get_use_drag_window ()
2253
2254 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2255
2256         * gtk/gtkcellrenderertext.c
2257         (gtk_cell_renderer_text_class_init): remove accidentally committed
2258         debugging spew
2259
2260         * gtk/gtktoolbar.c
2261         (gtk_toolbar_paint_space_line): remove this function
2262         (gtk_toolbar_expose): always propagate expose, even if the item is
2263         a separator item
2264
2265         * gtk/gtkseparatortoolitem.c
2266         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
2267         (get_space_size): new function.
2268         (get_space_style): new function
2269
2270 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
2271
2272         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
2273         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
2274         of GDK_POINTER_MOTION_HINT_MASK.
2275
2276         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
2277         of the drag into an idle as a superior form of 
2278         expose compression.
2279
2280         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
2281         creation here, so that we have an icon at the start
2282         of the drag (e.g., when retrieving the window cache
2283         information.)
2284
2285 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2286
2287         * docs/widget_geometry.txt: better drawing of GtkMenuItem
2288         * docs/widget_geometry.txt: add notes about GtkMenu
2289         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2290
2291 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2292
2293         * gtk/gtkmenu.c: add vertical_padding style property.
2294         
2295         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
2296         arrow_spacing and horizontal_padding. Also center separators and
2297         make them a bit taller.
2298
2299         * gtk/*menuitem.c: use new style properties.
2300         
2301         * docs/widget_geometry.txt: Add note about GtkMenuItem
2302
2303         * gtk/gtkstyle.c 
2304         (gtk_default_draw_vline, gtk_default_draw_hline):
2305         fix +/-1 errors. 
2306
2307         (gtk_default_draw_shadow): draw a black border around menus.
2308
2309         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
2310         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
2311         x2 and y1, y2 respectively, not x, width and y, height).
2312
2313 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
2314
2315         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
2316         all the atoms in the target list at once.
2317
2318         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
2319         Local drag short-circuit.
2320
2321         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
2322         local case, poke the actions in directly instead of
2323         going through xdnd_set_actions.
2324
2325         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
2326         the local case.
2327
2328         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
2329         XSelectInput()/add a filter if the drag is local.
2330
2331         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
2332         Simplify handling of "XdndSelection".
2333
2334         * gdk/x11/gdkevents-x11.c
2335         (gdk_event_send_client_message_to_all_recurse): Somehow,  
2336         a WM_STATE => _NET_WM_STATE change hand been made here.
2337
2338         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
2339         xatom_names, not atom_names.
2340
2341         * tests/testdnd.c (target_drag_motion): Make the trashcan
2342         open again. (Got lost in deprecation cleanup.)
2343
2344 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
2345
2346         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
2347         earlier, so we don't get a big pile of uncompressed
2348         motion events before the grab takes effect.
2349
2350         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
2351         gdk_window_process_all_updates() so that the area
2352         we are dragging over gets a change to redraw.
2353
2354         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
2355         gdk_window_get_position(), not gdk_window_get_origin().
2356
2357         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
2358         gdkdisplay-x11.h: use XShapeQueryExtension to 
2359         avoid duplicate XQueryExtension when we actually
2360         use it. Remove unnecessary caching in GdkDisplayX11.
2361
2362 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
2363
2364         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
2365         Function to get a range of information about all the
2366         children of a window in a single pass.
2367
2368         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
2369         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
2370         _gdk_x11_get_window_child_info() to greatly reduce
2371         the number of roundtrips.
2372
2373 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
2374
2375         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
2376         a function to XSendEvent() and call a calback on
2377         failure/success.
2378
2379         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
2380         messages to the same process, use _gdk_send_xevent_async().
2381
2382 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
2383
2384         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
2385         toplevel-specific pieces of GdkWindowImplX11 into
2386         a separate GdkToplevelX11 structure.
2387
2388 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
2389
2390         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
2391         some leftover fields.
2392
2393 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
2394
2395         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
2396         Use asynchronously _gdk_x11_set_input_focus_safe
2397         to avoid having to trap errors and XSync().
2398
2399         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
2400         _gdk_x11_set_input_focus_safe() here as well.
2401
2402         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
2403         Rework handling of property notifies on _NET_WM_STATE
2404         so that we ignore _NET_WM_DESKTOP notifies unless we
2405         really care.
2406
2407         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
2408         XShmQueryExtension() rather than XQueryExtension() to
2409         avoid extra rountrip.
2410
2411         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
2412         Remove unused call to XGetWindowAttributes()
2413         
2414         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
2415         unused call to XGetKeyboardControl().
2416
2417         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
2418         Add (#99571)
2419
2420         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
2421         No-op implementations of gdk_display_flush().
2422
2423         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
2424         gdk_display_flush() rather than gdk_flush() to avoid
2425         XSync().
2426         
2427         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
2428         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
2429         so that we don't have to get the property back from the server.
2430
2431         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
2432         the serial of when we map a toplevel to allow optimizing
2433         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
2434
2435         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
2436         XTranslateCoordinates() for override-redirect windows.
2437
2438 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
2439
2440         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
2441         about setting window group after the window is mapped from docs
2442         - nothing the ICCCM forbids that.
2443
2444         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2445         Fix g_return_val_if_fail() in void return function.
2446
2447         * configure.in: Fix misplaced comma that was resulting
2448         in XShm always being disabled.
2449
2450 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2451
2452         * tests/stresstest-toolbar: remove this accidentally committed
2453         file.
2454         
2455         * tests/stresstest-toolbar.c: really add this new test
2456
2457 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2458
2459         * tests/stresstest-toolbar.c: new test for removing items
2460         
2461         * tests/testtoolbar.c: add a popup menu
2462
2463         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
2464           assert widget->parent == container when the container is a
2465           toolbar.
2466
2467         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
2468         simpler. Also make correct.
2469
2470         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
2471         popup_context_menu a boolean handled signal.
2472
2473 2003-07-04  Tor Lillqvist  <tml@iki.fi>
2474
2475         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
2476         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
2477         the width and height of the bounding rectangle only after the
2478         minumum x and y have been found, and need a separate loop for
2479         it. Thanks to Bruce Hochstetler for providing a sample program
2480         exhibiting the bug.
2481
2482 2003-07-03  Tor Lillqvist  <tml@iki.fi>
2483
2484         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
2485         (#116537, Peter Zelezny)
2486
2487 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2488
2489         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
2490         fix warning. Assign something to old_value to quiet gcc
2491
2492         * gtk/gtkcalendar.c 
2493         (start_spinning): gtk_timeout_add->g_timeout_add
2494
2495         * gtk/gtkicontheme.c 
2496         (theme_lookup_icon): Make it compile (remove double semicolon)
2497
2498         * gtk/gtktoolbutton.c
2499         (gtk_tool_button_class_init): Long comment about properties.
2500         (gtk_tool_button_class_init): Improve text for "use_underline"
2501         property
2502         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
2503         on whether the passed-in label has use_mnemonic set
2504         (gtk_tool_button_create_menu_proxy): Split image cloning out in
2505         new function. Make that function also handle image with pixbuf
2506         storage.
2507         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
2508         instead of gtk_container_remove().
2509         (gtk_tool_button_construct_contents): Fix eliding bug
2510
2511         * gtk/gtktoolbar.c
2512         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
2513         by Morten Welinder
2514         (gtk_toolbar_button_press): Make popup_context_menu signal provide
2515         coordinates and button number
2516
2517         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
2518
2519         * tests/apple-red.png: new file
2520
2521 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
2522          
2523         * gtk/gtkicontheme.[ch]: Implement a loader for
2524         named themed icon based on from gnome-desktop library
2525         by Alex Larsson.
2526
2527         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
2528         from gnome-desktop.
2529
2530         * gtk/gtkiconfactory.[ch]: Add
2531         gtk_icon_source_set/get_icon_name() to allow stock icons
2532         to be based off of named theme icons.
2533
2534         * gtk/gtkiconfactory.c: Rework sources so that the source
2535         is *either* a pixbuf, or a filename, or an icon name,
2536         instead of the pixbuf/filename mix it was before. Put a
2537         workaround for get_pixbuf() so that it can return the
2538         filename pixbuf, e.g, for render_icon().
2539
2540         * gtk/gtkiconfactory.c: Make the default setup use
2541         themed icons, and add builtin icons to the default
2542         icon theme for all the standard pixbufs, so we
2543         don't rely on actually having an icon theme on disk.
2544
2545         * gtk/gtkrc.c: Add support for @"icon-name" to specify
2546         a themed icon for a stock icon source.
2547
2548         * tests/Makefile.am test/testicontheme.c: Add a test
2549         program from gnome-desktop.
2550
2551         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
2552         Net/IconThemeName / gtk-icon-theme-name setting.
2553
2554         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
2555         update the icon cache serial so we don't continually
2556         think we are out-of-date.
2557
2558         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
2559         to ::direction_set that should have been to ::direction-changed
2560
2561 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
2562
2563         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
2564         style to the widget.
2565
2566 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2567
2568         * gtk/gtk.h: Add new toolbar headers
2569
2570         * tests/testtoolbar.c: new file
2571
2572         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
2573
2574         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
2575
2576 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2577
2578         * gtk/gtktoolbar.c:
2579         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
2580         inside a for loop (pointed out by Morten Welinder).
2581         (gtk_toolbar_focus_home_or_end): Minor formatting change
2582
2583         Comments from Owen:
2584
2585         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
2586         gtk_toolbar_elide_underscores instead.
2587
2588         * gtk/gtktoolbar.c: rename signal from focus_ends to
2589         focus_home_or_end.
2590         (_gtk_toolbar_elide_underscores): export this as an internal
2591         function.
2592         (gtk_toolbar_move_focus): add comment explaining difference to
2593         gtk_toolbar_focus();
2594         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
2595         TAB_BACKWARD focus the right widgets in RTL mode
2596
2597         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
2598         "label" and "icon" parameters
2599
2600         * gtk/gtktoolbutton.[ch]: remove icon_set property.
2601
2602 2003-07-01  Matthias Clasen  <maclas@gmx.de>
2603
2604         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
2605         (116364, Morten Welinder) 
2606
2607         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
2608         corresponding dialogs.
2609
2610         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
2611         gtkcolorbutton.h.  
2612         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
2613
2614         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
2615
2616         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
2617
2618         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
2619
2620         * gtk/gtkexpander.c: Small additions to the docs. 
2621
2622 2003-07-01  Tor Lillqvist  <tml@iki.fi>
2623
2624         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
2625         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2626
2627 2003-07-01  Matthias Clasen  <maclas@gmx.de>
2628
2629         * configure.in: Check for Xcursor.
2630         
2631         * gdk/x11/gdkcursor-x11.c:
2632         * gdk/gdkdisplay.h: 
2633         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
2634         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
2635         gdk_display_supports_cursor_color(),
2636         gdk_display_get_default_cursor_size() and 
2637         gdk_display_get_maximal_cursor_size().  (#69436)
2638
2639 2003-06-30  Tor Lillqvist  <tml@iki.fi>
2640
2641         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
2642         callback proc for EnumWindows().
2643         (gdk_drag_find_window_for_screen): Actually take the drag_window
2644         argument into account: Instead of using WindowFromPoint(), use
2645         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
2646         M Brown, Herman Bloggs)
2647
2648         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
2649         gdk_window_ref()/unref() calls with g_object_ref()/unref().
2650         Consistently use %p format in debugging output of pointers and
2651         HANDLEs.
2652
2653 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
2654
2655         * gtk/gtkexpander.h: kill some stray characters
2656         breaking the build.
2657
2658 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
2659
2660         Add GtkExpander. See discussion in bug #60553.
2661
2662         * gtk/gtkexpander.[ch]: add.
2663         
2664         * gtk/Makefile.am: build gtk-expander.[ch].
2665         
2666         * docs/widget_geometry.txt: add info on the layout
2667         of GtkExpander.
2668
2669 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2670
2671         * gtkradiotoolbutton.c:         new file
2672         * gtkradiotoolbutton.h:            "
2673         * gtktoggletoolbutton.c:           "
2674         * gtktoggletoolbutton.h:           "
2675         * gtktoolbutton.c:                 "
2676         * gtktoolbutton.h:                 "
2677         * gtktoolitem.c:                   "
2678         * gtktoolitem.h:                   "
2679         * gtktoolbar.c: many changes
2680         * gtktoolbar.h: many changes
2681         * gtkseparatortoolitem.c:       new file
2682         * gtkseparatortoolitem.h           "
2683
2684         New toolbar.
2685         
2686         - Items on a toolbar are now separate widgets, instances of a
2687           subclass of GtkToolItem.
2688
2689         - Items there aren't room for on the toolbar are unmapped, and an
2690           overflow menu with a proxy menu item is added instead.
2691
2692         - The toolbar is keyboard navigatable. Press TAB to focus the
2693           first item, then use arrow keys and Ctrl TAB to move around the
2694           toolbar. TAB moves focus out of the toolbar.
2695
2696         - Bascially all of the old toolbar API is deprecated in favor of
2697           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
2698
2699         - The toolbar is backwards compatible with the old toolbar.
2700
2701 2003-06-29  Matthias Clasen  <maclas@gmx.de>
2702
2703         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
2704         from docs, some more formatting fixes. 
2705
2706 2003-06-28  Tor Lillqvist  <tml@iki.fi>
2707
2708         Fix for #111028, thanks to J. Ali Harlow, who writes:
2709         I found that the GdkPixmap->GdkImage reference really isn't
2710         important. It's only really there to have somewhere convenient to
2711         store the location of the pixel data in the pixmap and as an easy
2712         way of accessing the dimensions of that data. I have therefore put
2713         together a fix which removes this reference entirely which seems
2714         to solve the problem.
2715
2716         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
2717         Instead of a pointer to a GdkImage, keep a pointer to the pixels
2718         directly.
2719
2720         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
2721         (_gdk_win32_new_image): New function, replacing the above. Creates
2722         a GdkImage without any associated GdkPixmap.
2723         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
2724
2725         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
2726
2727         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
2728         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
2729         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
2730         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
2731         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
2732         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
2733         Corresponding changes.
2734
2735 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2736
2737         * gtk/gtktreeviewcolumn.c
2738         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
2739         and "is_expanded" if the new value is different fromt he old one.
2740
2741 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
2742
2743         * docs/faq/gtk-faq.sgml: Fix typos. Update
2744         thread example I missed yesterday.
2745
2746 2003-06-24  Matthias Clasen  <maclas@gmx.de>
2747
2748         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
2749         shadow_type. 
2750
2751         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
2752         (gtk_widget_class_list_style_properties): Use same parameter names as in  
2753         header (to silence gtk-doc).
2754
2755         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
2756
2757 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
2758
2759         * docs/faq/gtk-faq.sgml: Thread support updates
2760         from Owen. Various suggestions from Steve Chaplin.
2761
2762 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
2763
2764         * po/id.po: Updated Indonesian translation
2765
2766 2003-06-21  Tor Lillqvist  <tml@iki.fi>
2767
2768         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
2769         emulating X11's automatic grab on button down, pass owner_events
2770         as FALSE. According to the XLib spec, automatic grabs use True for
2771         owner_events when OwnerGrabButtonMask is selected, and I don't see
2772         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
2773         (find_window_for_pointer_event): Improve debugging output.
2774
2775 2003-06-17  Tor Lillqvist  <tml@iki.fi>
2776
2777         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
2778         subdirectory, where libtool 1.5 installs them.
2779
2780         * README.win32: Point to FSF's binary Win32 distribution of
2781         gettext-runtime.
2782
2783 2003-06-17  Matthias Clasen  <maclas@gmx.de>
2784
2785         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
2786         macros to check for XML catalog contents and path, borrowed from
2787         gtk-doc. 
2788         * configure.in: New option --enable-man to enable regeneration of
2789         man pages from Docbook, if the necessary tools are found.
2790
2791 2003-06-15  Matthias Clasen  <maclas@gmx.de>
2792
2793         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
2794         * gtk/gtknotebook.c (gtk_notebook_class_init): 
2795         * gtk/gtkalignment.c (gtk_alignment_class_init): 
2796         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
2797         as 2.4 additions.
2798
2799         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
2800         to the proper place, immediately before the g_signal_new() call.
2801
2802         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
2803         more obvious.  (#115122, Jeff Franks)
2804
2805 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
2806
2807         * gtk/gtkwidget.c: (event_window_is_still_viewable):
2808         Special case pixmaps. (#114880)
2809         
2810 2003-06-12  Matthias Clasen  <maclas@gmx.de>
2811
2812         * gtk/gtkwidget.c: Document child-notify and drag-data-received
2813         signals. Owen, we need to figure out where the best place for
2814         these comments in the source is. I currently put them in front of
2815         the signals enum.
2816
2817 2003-06-11  Matthias Clasen  <maclas@gmx.de>
2818
2819         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
2820
2821 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
2822
2823         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2824         silly typo fix. s/seperator/separator/. This gets rid of the
2825         assert spam when using TreeView.
2826
2827 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
2828
2829         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
2830         function for XIM instantiate callback.
2831         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
2832         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
2833         actually made.
2834         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
2835         for XIM's destroy callback.
2836         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
2837         is set or not - if it's not set, call xim_info_try_im() to try to
2838         initiaize it.
2839         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
2840         filter_key_release flag of the context.
2841         * modules/input/gtkimcontextxim.c (get_ic_real): removed
2842         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
2843         code from the removed get_ic_real().
2844
2845         For XIM instantiation, destruction and re-instantiation. With
2846         this, Gtk+ apps will be able to connect or reconnect to the XIM,
2847         when it starts after the apps, or when the XIM gets lost and recover.
2848         (#113099, #107782).
2849
2850 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
2851
2852         Merged from stable.
2853
2854         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
2855         check if width is !null, not *width. Doh.
2856
2857 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
2858
2859         Merged from stable.
2860
2861         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2862         Remove the weird dx logic, get all cell_area and background_area
2863         calculations right. Not sure what was up with it before. (Fixes
2864         #110989, testcase from Vasco Alexandre da Silva Costa).
2865
2866 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2867
2868         * tests/testgtk.c: Make it compile with C89 compilers
2869
2870 2003-06-10  Matthias Clasen  <maclas@gmx.de>
2871
2872         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
2873         property "overwrite".
2874         (gtk_text_view_[gs]et_property): Handle "overwrite".
2875         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
2876         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
2877
2878 2003-06-09  Matthias Clasen  <maclas@gmx.de>
2879
2880         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
2881         properties "resize" and "shrink".
2882         (gtk_paned_[gs]et_child_property): Implementations of 
2883         GtkContainer::[gs]et_child_property.  
2884         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
2885         paned child properties instead of remove/add hacks.  (#114667, 
2886         Soeren Sandmann) 
2887
2888 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
2889
2890         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
2891         out event->window test - it wasn't needed because
2892         of the call to get_widget_coordinates().
2893
2894         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
2895         call to gtk_widget_grab_focus() when not clicking on
2896         any tabs. (Real fix for #114534)
2897
2898 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
2899
2900         * tests/testdnd.c: Use application/x-rootwindow-drop for
2901         root window drops. (#108670, Alex Larsson)
2902
2903         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
2904         Accept either application/x-rootwin-drop (what GTK+ has always used)
2905         or application/x-rootwindow-drop (what the XDND standard specifies).
2906
2907 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
2908
2909         * gtk/gtkwidget.c (event_window_still_viewable): 
2910         Before delivering an event to a widget, check that
2911         (if relevant), the event's window is still viewable.
2912         (#105642, Dennis Björklund)
2913
2914         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
2915         NULL out private->parent, since after destruction
2916         it might not be valid any more.
2917
2918         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
2919         accesses before g_return_val_if_fail(). Treat 
2920         DESTROYED windows as unmapped.
2921
2922 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
2923
2924         * gtk/gtkentry.c: Recompute unconditionally in
2925         gtk_entry_style_set, and in a new gtk_label_screen_changed().
2926         Protect the guts of recompute_idle_func() with
2927         gtk_widget_has_screen(). (#114040, Morten Welinder) 
2928         Fix FALSE/0 confusion.
2929         
2930 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2931
2932         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
2933         Fixes (#114669)
2934
2935 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
2936
2937         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
2938         set_adjustment (viewport, NULL);
2939
2940 2003-06-07  Matthias Clasen  <maclas@gmx.de>
2941
2942         * gtk/gtkiconfactory.c (get_default_icons): 
2943         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
2944         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
2945         undelete and revert.  (#96633)
2946         
2947 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
2948
2949         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
2950         refactoring of code to reduce duplication; fixes include:
2951
2952         - gtk_viewport_realize(): Position the window correct from adjustment 
2953         values. (#110737, Michael Natterer)
2954
2955         - Remove some division-by-zero checks in places where there is no 
2956         longer division. (#110737)
2957
2958         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
2959         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
2960         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
2961
2962         - Switch over to encapsulated lazy-creation for hadjustment/
2963         vadjustment; even with the CONSTRUCT property, we need this after
2964         destroy.
2965
2966         - When updating the adjustment, immediate set their values to
2967         match the the current range of the viewport, and update the 
2968         viewport position to match the value of the new adjustments. 
2969         (Part of #1165)
2970
2971 2003-06-06  Tor Lillqvist  <tml@iki.fi>
2972
2973         * gdk/win32/gdkprivate-win32.h: Fix typo.
2974
2975         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
2976         graphics_exposures and subwindow_mode, too, even if they aren't
2977         currently used.
2978
2979 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
2980
2981         Merged from stable.
2982
2983         * gtk/gtktreeview.c (do_expand_collapse),
2984         (expand_collapse_timeout), (cancel_arrow_animation): made
2985         expand_collapse_timeout a wrapper with locks around     
2986         do_expand_collapse, made cancel_arrow_animation use
2987         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
2988         Peter Bloomfield).
2989
2990 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
2991
2992         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
2993         * modules/input/gtkimcontextxim.c (preedit_start_callback,
2994         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
2995         to keep preedit-[start,changed,end] signals from being called during
2996         finalization (#111861).
2997
2998 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
2999
3000         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
3001         presses that are not on the tab (#114534).
3002
3003 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
3004
3005         * demos/Makefile.am: Conditionalize dependencies for
3006         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe). 
3007         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
3008         test-inline-pixbufs.h if we don't have libpng.
3009
3010         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
3011         Add a dependency on gdk-pixbuf.loaders when not 
3012         cross-compiling, remove the dependency on gdk-pixbuf-csource
3013         when not cross compiling.
3014
3015 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
3016
3017         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
3018         gtk_window_get_geometry_info() returning NULL.
3019         (#107311, John Finlay)
3020
3021 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
3022
3023         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
3024         twice the border width from the width/height, not
3025         1x the border width. (#106336, Rodney Dawes)
3026
3027 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
3028  
3029         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3030         If at the end of the buffer, move to the end iter -
3031         parallels behavior of move_iter_to_previous_line.
3032         (#81960, Padraig O'Briain)
3033  
3034 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
3035
3036         #80023, Yao Zhang, TOKUNAGA Hiroyuki
3037
3038         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
3039         Account for the preedit cursor offset if the iter passed
3040         in is at the same place as the insertion cursor.
3041
3042         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
3043         Encapsulate getting the insertion cursor location.
3044
3045         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
3046         Pass the real y/height to the IM context. Take 
3047         text_view->x/yoffset into account.
3048
3049 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
3050
3051         * gtk/gtktextview.[ch]: Never scroll on focus in
3052         (#81893, Patch from Paolo Maggi)
3053
3054         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
3055         Scroll to the current cursor location before handling
3056         the action, in case the user just tabbed in
3057         and the cursor is offscreen.
3058
3059 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
3060          
3061          #107883, Gustavo Giráldez
3062
3063         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
3064         Split out the case where we know we changed, and 
3065         already dealt with our cached line being invalidated
3066         from external calls to gtk_text_layout_changed.
3067
3068         * gtk/gtktextlayout.c (gtk_text_layout_changed):
3069         Check if the invalidate yrange intersects our
3070         cached line, and clear it if necessary.
3071
3072 2003-06-05  Tor Lillqvist  <tml@iki.fi>
3073
3074         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
3075         filters.
3076
3077 2003-06-05  Matthias Clasen  <maclas@gmx.de>
3078
3079         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
3080         (gtk_text_view_grab_notify): 
3081         (gtk_text_view_state_changed): Implement these
3082         to unobscure cursor when grab shadowed or insensitised.
3083         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
3084         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
3085         gtk_text_view_motion_event().
3086         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
3087
3088         * gtk/gtktextview.c (select_all): New keybinding signal for
3089         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
3090
3091         * gtk/gtkcalendar.c (calendar_timer): 
3092         (stop_spinning): Replace deprecated gtk_timeout_* functions by
3093         their GLib counterparts.  (#114429)
3094
3095         * gtk/gtktreestore.c (gtk_tree_store_new): 
3096         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
3097         types.
3098
3099 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
3100
3101         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
3102         When drawing underlines, join up adjacent runs
3103         where possible, so we don't get changes in 
3104         shaper/font/etc. breaking underlines. (#103662,
3105         Kang Jeong-Hee)
3106
3107 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
3108
3109         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
3110         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
3111         improve the speed of inserting rows into an already sorted list,
3112         #109292
3113
3114 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
3115
3116         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
3117         track of when we have a clip mask set for the GC,
3118         and when we unset it, or switch to a clip region,
3119         immediately call XSetClipMask (..., None) to avoid
3120         Xlib caching stale data. (#111806)
3121
3122         * gtk/gtktextdisplay.c: Don't set a clip mask
3123         when drawing alpha pixmaps; it isn't necessary any more.
3124         (#111806)
3125
3126 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
3127
3128         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
3129         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
3130         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
3131         (#92548, Tim Evans)
3132
3133         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
3134         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
3135         Use state_type = STATE_INSENSITIVE for insensitive menu items.
3136
3137 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
3138
3139         Merged from stable.
3140
3141         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
3142         assert for get_info. (reported by Michael Natterer),
3143         (gtk_tree_view_expand_all_emission_helper),
3144         (gtk_tree_view_expand_all_helper): emit row_expanded for all
3145         expanded rows during an _expand_all operation. (Fixes #111280,
3146         reported by Benjamin Bayart).
3147
3148 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
3149
3150         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
3151         respond to pings on a root window; prevents infinite
3152         loops if we are selecting for SubstructureNotify on the
3153         root window. (#111945, Sergey V. Udaltsov)
3154
3155 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
3156
3157         #71597, reported by Morten Welinder
3158
3159         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
3160         (Patch from Christian Petig)
3161
3162         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
3163         Major rewrite of 555 and 565 conversion routines:
3164
3165         - Move all the bit shifting into a small block of macros,
3166           eliminating much duplication of complicated arithmetic.
3167         - Get rid of 2-pixels at a time code, which was buggy,
3168           hard to maintain, caused unaligned accesses, and
3169           probably didn't actually perform any better.
3170         - Simplify cases where different data types were
3171           used for the little and big endian cases, use
3172           GUINT16_SWAP_LE_BE() where appropriate.
3173                 
3174 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
3175
3176         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
3177         bad optimization for src_rowstride == dest_stride.
3178         (Didn't consider the case where we were copying only
3179         partial widths of a wider source buffer)
3180         (#113034, reported by Hans Petter Jansson)
3181
3182 2003-06-03  Michael Natterer  <mitch@gimp.org>
3183
3184         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
3185         reenabled button_release events for xinput devices. (#113948)
3186
3187 2003-06-03  Christian Rose  <menthos@menthos.com>
3188
3189         * configure.in: Added "li" to ALL_LINGUAS.
3190
3191 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
3192
3193         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
3194         map the event window if the notebook isn't mapped. (#113980,
3195         Richard Reich)
3196
3197 2003-06-02  Sven Neumann  <sven@gimp.org>
3198
3199         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
3200
3201         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
3202
3203 2003-06-01  Matthias Clasen  <maclas@gmx.de>
3204
3205         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
3206         Since: 2.4 to the docs.
3207
3208         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
3209         an example to the docs.  (#98427)
3210
3211 2003-05-30  Murray Cumming  <murrayc@usa.net>
3212
3213         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
3214         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
3215         uses the new private data system - see g_type_class_add_private() in
3216         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
3217
3218 2003-05-30  Matthias Clasen  <maclas@gmx.de>
3219         
3220         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
3221         signature of gtk_notebook_draw_arrow() for Solaris builds to go
3222         through.  (#114043, Anand Subramanian)
3223
3224 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3225
3226         * modules/input/imipa.c: 
3227         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
3228
3229 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3230
3231         * gtk/gtkimmodule.c (_gtk_im_module_list):
3232         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
3233
3234 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3235
3236         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
3237         label of default input method localizable.
3238         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
3239         use translations of input method context names
3240         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
3241           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
3242           modules/input/imti-er.c, modules/input/imti-et.c
3243           modules/input/imviqr.c, modules/input/imxim.c
3244         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
3245         (#113850).
3246
3247 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
3248
3249         Merged from stable.
3250
3251         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
3252         grab separate, the user might clear the tree in the focus-in
3253         callback. (Fixes #113086, testcase from Felipe Heidrich).
3254
3255 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
3256
3257         Merged from stable.
3258
3259         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
3260         of row reference when we unset the model. Also reset
3261         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
3262
3263 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
3264
3265         Merged from stable.
3266
3267         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
3268         the current editing, if it exists. (Fixes #108956, reported by
3269         Michael Natterer).
3270
3271 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
3272
3273         Merged from stable.
3274
3275         * gtk/gtktreeview.c (check_selection_helper): new function,
3276         (gtk_tree_view_row_deleted): traverse the tree from the
3277         deleted node to see whether the selection changed, instead of
3278         just checking this node. (Fixes #107400, reported by 'Duncan').
3279
3280 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
3281
3282         Merged from stable.
3283
3284         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
3285         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
3286         instead of _maybe_begin_dragging_row, so the icon can be
3287         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
3288
3289 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
3290
3291         Merged from stable.
3292
3293         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
3294         cell_area x/width for the expander if needed. (Fixes #101748,
3295         reported by Dave Cook and Mariano Suarez-Alvarez).
3296
3297 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
3298
3299         Merged from stable.
3300
3301         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
3302         if tree/node are still the same after _internal_select_node.
3303         (Fixes #92256, reported by edscott).
3304
3305 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
3306
3307         Fixes #75745, reported by Richard Hult. Merged from stable.
3308
3309         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
3310         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
3311         cursor or not.
3312
3313         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3314         if we are rendering a cursor row, and the cell the be
3315         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
3316         flag (else we unset it).
3317
3318 2003-05-27  Matthias Clasen  <maclas@gmx.de>
3319
3320         * gtk/gtkwindow-decorate.c: 
3321         * gtk/gtktreeprivate.h: 
3322         * gtk/gtkdnd.c: 
3323         * gdk/win32/gdkwindow-win32.h: 
3324         * gdk/linux-fb/gdkprivate-fb.h: 
3325         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
3326         unspecified signedness.  (#112919, Morten Welinder)
3327
3328         * gtk/queryimmodules.c (escape_string): 
3329         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
3330         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
3331         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
3332         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
3333         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
3334         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
3335         Morten Welinder) 
3336
3337 2003-05-27  Tor Lillqvist  <tml@iki.fi>
3338
3339         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
3340         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
3341
3342         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
3343         win32/libgdk-win32.la.
3344
3345         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
3346
3347 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3348
3349         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
3350         scrollbar slider length 21 instead of 7.
3351
3352 2003-05-23  Matthias Clasen  <maclas@gmx.de>
3353
3354         * gtk/gtknotebook.c: Add support for up to four scroll
3355         arrows. Control their display by new style properties
3356         "has_forward_stepper", "has_backward_stepper",
3357         "has_secondary_forward_stepper" and
3358         has_secondary_backward_stepper". (#110540)
3359
3360         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
3361         click_child three bits wide, add
3362         has_{before,after}_{previous,next} fields.
3363
3364         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
3365         focus out of hex_entry.  (#112665)
3366         (hex_focus_out): New signal handler for focus out of hex entry.
3367
3368 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
3369
3370         * gtk/gtkwidget.c (gtk_widget_realize): 
3371         g_return_if_fail() if
3372         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
3373         (#107872, Christian Reis)
3374
3375 2003-05-22  Matthias Clasen  <maclas@gmx.de>
3376
3377         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
3378         (gtk_file_selection_rename_file): Some keynav improvements for the
3379         "Rename File" and "Create Directory" subdialogs: Enter in entry
3380         activates default, default is "Create"/"Rename", Escape cancels
3381         dialog.  (#113110)
3382         (gtk_file_selection_set_filename): Add a hint about opening 
3383         directories.  (#113175)
3384
3385 2003-05-22  Matthias Clasen  <maclas@gmx.de>
3386
3387         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
3388         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
3389         anyway.  (#113476)
3390
3391 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gtk/gtkprogress.c (gtk_progress_set_format_string,
3394         gtk_progress_set_show_text): Always queue a resize ... 
3395         we rely on the size-allocate to do the update, plus a 
3396         different format can actually change our size requisition.
3397         (#111052, Vasco Alexandre da Silva Costa)
3398
3399         * gtk/gtkprogress.c (gtk_progress_changed): Track
3400         ::changed as well as ::value_changed, and queue a
3401         resize on ::changed when necessary.
3402
3403         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
3404         Call gtk_progress_changed() here to update or 
3405         queue a resize as necessary.
3406
3407 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3408
3409         * gtk/gtkimcontextsimple.c: added composing rules of
3410         Greek accented letters, patch by Vasilis Vasaitis (#107507)
3411
3412 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3413
3414         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
3415         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
3416         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
3417
3418 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3419
3420         * gtk/gtkimcontextsimple.c: 
3421         code that can check the compose table for ascending order,
3422         by Vasilis Vasaitis (#104862).
3423
3424 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
3425
3426         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
3427         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
3428         to handle the case where a modifier not in the mask
3429         (like Num_Lock) changes the key value, so replace
3430         the masked state with a state/mask pair. (#106913,
3431         Olivier Ripoll)
3432
3433         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
3434         in state/mask pair to _gtk_key_hash_lookup()
3435
3436 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3437
3438         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
3439         fix a memory leak, free input context list (#113259).
3440
3441 2003-05-21  Matthias Clasen  <maclas@gmx.de>
3442
3443         * configure.in (all_loaders): Add pcx.
3444
3445         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
3446
3447 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
3448
3449         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
3450         accept a missing gtk.immodules file, some people
3451         want to run without one. (#112406, patch from
3452         Arnaud Charlet)
3453
3454 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
3455
3456         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
3457         height/width confusion (#113370, Xan Lopez)
3458
3459 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
3460
3461         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
3462         zero all unused parts of client messages (Mainly Motif DND
3463         and EWMH). Also, fix a couple places where we were putting
3464         contents into Motif DND messages that didn't belong.
3465         (#113361, EWMH problem reported by Lubos Lunak)
3466
3467         * gtk/gtkselection.c (_gtk_selection_request): Handle the
3468         case where the property type for the multiple atoms is
3469         ATOM_PAIR by doing the conversions ourselve. This is
3470         needed for Xt inter-operation.
3471
3472 2003-05-19 Arafat Medini <lumina@silverpen.de>
3473
3474         * configure.in: Added ar to ALL_LINGUAS
3475
3476 2003-05-19  Matthias Clasen  <maclas@gmx.de>
3477
3478         * gtk/gtksettings.c (gtk_rc_property_parse_border,
3479         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
3480         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
3481         Add docs.
3482
3483         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
3484         gtk_widget_class_install_style_property_parser): Add docs. 
3485
3486 2003-05-17  Matthias Clasen  <maclas@gmx.de>
3487
3488         * tests/prop-editor.c: Add navigation for object properties, so
3489         that you can easily edit the properties of the parent of a widget.
3490         (#113152)
3491
3492 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
3493
3494         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
3495         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
3496         inconsistency and leave the old name as an aliass (#104873)
3497
3498 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
3499
3500         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
3501         from Charles Schmidt to add missing notify (#108305)
3502
3503 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
3504  
3505         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
3506         (#105500, Morten Welinder.)
3507  
3508 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
3509
3510         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
3511         instead of gumake for XNFilterEvents event mask(#110493).
3512
3513 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
3514
3515         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
3516         a GObject. (#112762)
3517
3518 2003-05-08  Sven Neumann  <sven@gimp.org>
3519
3520         * configure.in: set the HAVE_X11R6 automake conditional to false
3521         if not compiling for X11.
3522
3523 2003-05-08  Matthias Clasen  <maclas@gmx.de>
3524
3525         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
3526         (gtk_calendar_get_display_options): New functions.
3527         (gtk_calendar_display_options): Depreate.  (#64567)
3528         (gtk_calendar_class_init): Add boolean properties for the display
3529         options.  (#50949)
3530
3531 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
3532
3533         Patch from James Henstridge to update to automake-1.7
3534         (#109542)
3535  
3536         * autogen.sh: update to call newer tools.
3537  
3538         * configure.in: various updates, to use M4 macros to put
3539         variables that change each release at the top.
3540         Use AC_HELP_STRING to format help strings.
3541         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
3542  
3543         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
3544         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
3545         during distcheck.
3546  
3547         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
3548         makefile fragment.
3549  
3550         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
3551         Use BUILT_SOURCES where appropriate.
3552         Build generated files in builddir rather than srcdir.
3553         Fix uninstall and distclean targets to satisfy distcheck.
3554
3555         ===
3556
3557         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
3558         built first, since we are now using BUILT_SOURCES.
3559
3560         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
3561
3562         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
3563         with geninclude.pl.
3564
3565         * configure.in: Update versions to 2.3.0.
3566  
3567 2003-05-06  Tor Lillqvist  <tml@iki.fi>
3568
3569         Fix for #110165 (thanks to Arnaud Charlet):
3570         
3571         * gdk/win32/gdkevents-win32.c (build_keypress_event,
3572         build_keyrelease_event): For unshifted control char, use
3573         lowercase ASCII keyval.
3574         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
3575         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
3576         lowercase keyval. Use build_key_event_state() here, too, instead
3577         of minor code duplication.
3578
3579 2003-05-06  Matthias Clasen  <maclas@gmx.de>
3580
3581         * tests/testmultidisplay.c: Don't include strings.h, it's not
3582         needed anymore.  (#112388)
3583
3584         * examples/menu/itemfactory.c: 
3585         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
3586         itemfactory example.
3587
3588 2003-05-05  Matthias Clasen  <maclas@gmx.de>
3589
3590         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
3591         icon type to the stock icon type.  (#111735, Dave Bordoley)
3592
3593 2003-05-05  Christian Rose  <menthos@menthos.com>
3594
3595         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
3596         Removed sp, it's replaced by sr@Latn.
3597
3598 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
3599
3600         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
3601         Gonzalo Odiard
3602
3603 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
3604
3605         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
3606         data iff the destroy func isn't NULL.
3607
3608 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
3609
3610         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
3611
3612 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
3613
3614         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
3615
3616 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
3617
3618         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
3619         of UTF-8. (#106419, Roozbeh Pournader)
3620
3621 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
3622
3623         * configure.in: Only check for XFT2 if we found pango-xft
3624         (#105692, Jon Nall)
3625
3626 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
3627
3628         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
3629         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
3630
3631 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
3632
3633         * docs/faq/gtk-faq.sgml: add note about version converage.
3634
3635 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
3636
3637         * gtk/gtksocket.c (activate_key): Fix prototype for
3638         activate_key. (#108927, Jason D. Hildebrand)
3639
3640 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
3641
3642         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
3643         Remove geninclude.pl from CVS and don't dist it either,
3644         it is generated. (#108970, Rich Kinder)
3645
3646 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
3647
3648         * gtk/gtkobject.h: Remove a couple of obsolete comments,
3649         fix another comment. (#109737, Britton Kerin)
3650
3651 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
3652
3653         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
3654         the source list, not just it's contents (Patch
3655         from Charles Kerr, #108243)
3656
3657 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
3658
3659         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
3660         from Alex Larsson fixing problem with restacking during
3661         DND. (#108671)
3662
3663 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
3664
3665         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
3666         Calling XFlush() after ungrabbing, to avoid problems if
3667         the app subsequently blocks on a long-running operation.
3668         (#106520, reported by Rajkumar Siva)
3669
3670 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
3671
3672         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
3673         SKIP_TASKBAR/SKIP_PAGER to set of properties we
3674         might set on map. (#110019, problem reported
3675         by Loban Rahman)
3676
3677 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
3678
3679         * gdk/gdkevents.c (gdk_event_copy): Fix for the
3680         case when gdk_event_copy() is called on a non-allocated
3681         event. (#109716, reported by Rich Burridge)
3682
3683 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
3684
3685         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
3686         Fix pointer arithmetic on 'void *'. (#108322)
3687
3688 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
3689
3690         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
3691         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
3692         use of XAddConnectionWatch. Remove --enable-xim config option.
3693         Should fix building on X11R6 (#110523, Albert Chin)
3694
3695 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
3696
3697         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
3698         Patch from Morten Welinder to catch Sun servers with a 
3699         broken implementation of the RENDER extension. (#108309)
3700
3701 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
3702
3703         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
3704         gdk_free_compound_text(), not g_free(). (#107643,
3705         Michael Zucchi)
3706
3707 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
3708
3709         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
3710         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
3711         wrong use of base_finalize. (#105126, Sven Neumann)
3712
3713 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
3714
3715         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
3716         '/' vs. '*' problem in aspect ration computations. (#108237)
3717
3718 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
3719
3720         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
3721         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
3722         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
3723         event, so select for both. (#108406, Egmont Koblinger)
3724
3725 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
3726
3727         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
3728         caused by not clearing the scroll_to_path.
3729
3730 2003-04-16  Matthias Clasen  <maclas@gmx.de>
3731
3732         * gtk/gtkstyle.c: Doc additions and fixes.
3733
3734         * gtk/gtktreeviewcolumn.c
3735         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
3736
3737 2003-04-14  Michael Natterer  <mitch@gimp.org>
3738
3739         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
3740         that the iter is not reordered to its own position. Prevents model
3741         corruption for the case that the store contains only a single item
3742         (fixes bug #108387).
3743
3744         Unrelated:
3745
3746         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
3747         new list element later so we don't leak it if we decide to return
3748         early.
3749
3750         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
3751         set selection->tree_view->priv->anchor to NULL after freeing it.
3752
3753 2003-04-13  Matthias Clasen  <maclas@gmx.de>
3754
3755         * gtk/gtktreeviewcolumn.c
3756         (gtk_tree_view_column_cell_get_position): Document. 
3757
3758         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
3759         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
3760         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
3761         these as 2.4 additions.
3762
3763 2003-04-09  Matthias Clasen  <maclas@gmx.de>
3764
3765         * INSTALL.in: Fix the real thing.
3766
3767         * INSTALL: Typo fix.
3768
3769 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
3770
3771         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
3772         after ungrabbing the server.
3773  
3774         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
3775         calls to XFlush().
3776
3777         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
3778         Use gdk_x11_display_grab/ungrab.
3779
3780         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
3781         use_xshm to TRUE so SHM gets used when present.
3782  
3783 2003-04-07  Matthias Clasen  <maclas@gmx.de>
3784
3785         * gtk/gtktextlayout.c (set_para_values): 
3786         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
3787         David Brigada)
3788
3789         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
3790         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
3791         misspellings of possessive "its".  (#110027, Doug Quale)
3792
3793 2003-04-03  Matthias Clasen  <maclas@gmx.de>
3794
3795         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
3796         current directory if it looks like the srcdir.  (#109357)
3797
3798 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3799
3800         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
3801         focus_on_click
3802
3803         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
3804         navigation not wrap around.
3805
3806 2003-04-02  Matthias Clasen  <maclas@gmx.de>
3807
3808         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
3809         Return 0 if lower == upper.  (#109155)
3810         (gtk_progress_get_current_percentage): Use
3811         gtk_progress_get_percentage_from_value().
3812
3813 2003-04-01  Matthias Clasen  <maclas@gmx.de>
3814
3815         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
3816         (#109510, Noah Levitt)
3817
3818 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
3819
3820         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
3821         members so Purify won't complain.
3822
3823         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
3824
3825 2003-03-31  Matthias Clasen  <maclas@gmx.de>
3826
3827         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
3828         gtk_window_[gs]et_role().  (#93904)
3829
3830 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
3831
3832         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
3833         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
3834
3835 2003-03-29  Matthias Clasen  <maclas@gmx.de>
3836
3837         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
3838         of labels back to normal before reparenting back.  (#102387)
3839
3840         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
3841         a default window title to match the GtkFontSelectionDialog behavior.
3842  
3843         (gtk_color_selection_dialog_new): Don't call
3844         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
3845
3846 2003-03-29  Matthias Clasen  <maclas@gmx.de>
3847
3848         Fix for bug #78499:
3849         
3850         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
3851         select_lines. 
3852
3853         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
3854         select_lines on double/triple click.
3855
3856         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
3857         select-by-words and select-by-lines behaviour.
3858
3859         Fixes for bug #56248:
3860         
3861         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
3862         timer and queue a redraw. 
3863         (gtk_notebook_grab_notify): 
3864         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
3865         if necessary.   
3866         (gtk_notebook_button_release): Use stop_scrolling().
3867         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
3868
3869         * gtk/gtkrange.c (stop_scrolling): New function to remove the
3870         grab, remove the timer and queue a redraw.
3871         (gtk_range_grab_notify): 
3872         (gtk_range_state_changed): New functions to call stop_scrolling() 
3873         if necessary.   
3874         (gtk_range_button_release): Use stop_scrolling().
3875
3876         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
3877         (gtk_spin_button_state_changed): Redraw after stop_spinning.
3878         (gtk_spin_button_stop_spinning): Reset click_child to correct the
3879         drawing of the arrows.
3880         (gtk_spin_button_button_release): Use a local copy of click_child,
3881         since stop_spinning() resets it.
3882
3883         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
3884         C-A-PgDown as alternatives to the A-less variants. (This slipped
3885         in accidentally some time ago).  (#97860)
3886
3887 2003-03-26  Sven Neumann  <sven@gimp.org>
3888
3889         * gtk/gtktreeview.c: rewrote the function that does node and arrow
3890         prelighting, queue all redraws from here (Fixes bug #108792).
3891
3892 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
3893
3894         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
3895         Fixes bug #108778.
3896
3897 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
3898
3899         * configure.in: Added "ml" in ALL_LINGUAS
3900
3901 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
3902
3903         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
3904         G_DISABLE_DEPRECATED.
3905
3906 2003-03-14  Tor Lillqvist  <tml@iki.fi>
3907
3908         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
3909         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
3910         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
3911         multiple monitors can have negative coordinates on some of the
3912         monitors. (partial fix for #99496, Arnaud Charlet)
3913
3914 2003-03-15  Matthias Clasen  <maclas@gmx.de>
3915
3916         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
3917
3918 2003-03-13  Sven Neumann  <sven@gimp.org>
3919
3920         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
3921         removed redundant calls to g_object_notify().
3922         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
3923         bug #108236.
3924
3925         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
3926         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
3927         functions return an integer value).
3928
3929 2003-03-13  Tor Lillqvist  <tml@iki.fi>
3930
3931         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
3932         WM_MOUSEMOVE, the test whether we have actually moved (and thus
3933         shouldn't generate an GDK event) moved after the call to
3934         propagate() and translate_mouse_coords(). Otherwise we were
3935         testing wrong values. (#108115, Allin Cottrell)
3936         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
3937         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
3938
3939         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
3940         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
3941         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
3942         cursor right away with SetCursor(), as we won't get any
3943         WM_SETCURSOR messages while the mouse is captured. 
3944         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
3945         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
3946
3947         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
3948         WM_SYSCHAR, return FALSE from the window procedure to prevent the
3949         DefWindowProc from being called. Otherwise Windows would beep,
3950         thinking you are tring to access a (nonexistent) menu when you
3951         press Alt-something. Don't do this for Alt-Space,
3952         though. (#107454, Martyn Russell)
3953
3954         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
3955
3956 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
3957
3958         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
3959         [left/right] expands/collapses the tree, #108092
3960
3961 2003-03-09  Tor Lillqvist  <tml@iki.fi>
3962
3963         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
3964         compensate for LineTo() not drawing the end pixel. It causes more
3965         harm than benefits, see bug #81895.
3966
3967 2003-03-08  Matthias Clasen  <maclas@gmx.de>
3968
3969         Bug #107664 continued:
3970
3971         * gdk/x11/gdkinputprivate.h: 
3972         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
3973         (_gdk_input_other_event): Return gboolean.
3974         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
3975         (_gdk_input_other_event): Return gboolean.
3976         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
3977
3978         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
3979         gboolean, remove pointless call to _gdk_input_window_none_event.
3980
3981         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
3982         (_gdk_input_window_none_event): Remove.
3983
3984         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
3985         (_gtk_text_iter_get_any_segment): 
3986         (_gtk_text_iter_get_segment_byte): 
3987         (_gtk_text_iter_get_segment_char): 
3988         (_gtk_text_iter_get_text_line): 
3989         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
3990         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
3991         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
3992         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
3993         (gdk_window_get_origin): 
3994         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
3995
3996 2003-03-06  Matthias Clasen  <maclas@gmx.de>
3997
3998         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
3999         (#107664, Morten Welinder)
4000
4001         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
4002         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
4003         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
4004         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
4005
4006         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
4007         * gtk/gtkeditable.c (gtk_editable_get_chars): 
4008         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
4009         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
4010         (#107648, Morten Welinder)Fix NULL/FALSE confusion
4011         (#107648, Morten Welinder)
4012
4013 2003-03-04  Matthias Clasen  <maclas@gmx.de>
4014
4015         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
4016
4017 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
4018
4019         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
4020         handle rtl code.  Thanks to Matthias Clasen for an initial patch
4021         to handle the RTL code.
4022
4023         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
4024
4025         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
4026
4027         * gtk/gtktreeview.c: (invalidate_column),
4028         (invalidate_last_column),
4029         (gtk_tree_view_get_real_requested_width_from_column),
4030         (gtk_tree_view_size_allocate_columns),
4031         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
4032         (gtk_tree_view_button_release_drag_column),
4033         (gtk_tree_view_update_current_reorder),
4034         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
4035         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
4036         (gtk_tree_view_get_background_xrange),
4037         (gtk_tree_view_get_arrow_xrange),
4038         (gtk_tree_view_is_expander_column),
4039         (gtk_tree_view_set_column_drag_info),
4040         (gtk_tree_view_move_cursor_left_right):
4041         Add RTL support.
4042
4043         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
4044         expand flag.
4045
4046         * gtk/gtktreeviewcolumn.c:
4047         (gtk_tree_view_column_class_init),
4048         (gtk_tree_view_column_set_property),
4049         (gtk_tree_view_column_get_property),
4050         (gtk_tree_view_column_set_expand),
4051         (gtk_tree_view_column_get_expand),
4052         (gtk_tree_view_column_cell_process_action):
4053         Add support for expand flag.  Thanks to Kristian Rietveld for an
4054         initial patch for this.
4055
4056 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
4057
4058
4059 2003-03-02  Tor Lillqvist  <tml@iki.fi>
4060
4061         * gdk/gdk.def
4062         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
4063         Gustin.
4064
4065 2003-03-01  Matthias Clasen  <maclas@gmx.de>
4066
4067         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
4068         (gtk_scrolled_window_set_hadjustment): Replace uses of
4069         gtk_object_new by g_object_new.
4070
4071 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
4072
4073         * demos/gtk-demo/main.c
4074         * demos/gtk-demo/tree_store.c
4075         * gdk/x11/gdkscreen-x11.c
4076         * gtk/gtkcellrenderertoggle.c
4077         * gtk/gtkcolorsel.c
4078         * gtk/gtkdnd.c
4079         * gtk/gtkeditable.c
4080         * gtk/gtkentry.c
4081         * gtk/gtkmenu.c
4082         * gtk/gtkmenubar.c
4083         * gtk/gtkmenuitem.c
4084         * gtk/gtkmenushell.c
4085         * gtk/gtkrc.c
4086         * gtk/gtksettings.c
4087         * gtk/gtkstyle.c
4088         * gtk/gtktextbuffer.c
4089         * gtk/gtktextview.c
4090         * gtk/gtktreeviewcolumn.c
4091         * tests/testgtk.c
4092         * tests/testtext.c
4093         * tests/testtreeedit.c
4094         * tests/testtreefocus.c
4095         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
4096
4097 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
4098
4099         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
4100         code.
4101
4102 2003-02-24  Sven Neumann  <sven@gimp.org>
4103
4104         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
4105
4106 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
4107
4108         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
4109
4110 2003-02-20  Matthias Clasen  <maclas@gmx.de>
4111
4112         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
4113         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
4114
4115         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
4116         (gtk_text_view_update_adjustments): Make sure cursor stays visible
4117         during horizontal scrolling.  (#75270)
4118
4119 2003-02-19  Matthias Clasen  <maclas@gmx.de>
4120
4121         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
4122         counterparts. (#106532)
4123
4124         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
4125         keys_changed virtual function with the keys_changed signal.
4126         (#106512, Jeff Franks)
4127
4128 2003-02-15  Larry Ewing  <lewing@ximian.com>
4129
4130         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
4131
4132 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
4133
4134         * po/id.po: Added Indonesian translation
4135         * configure.in: Added "id" to ALL_LINGUAS
4136
4137 2003-02-14  Matthias Clasen  <maclas@gmx.de>
4138
4139         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
4140
4141 2003-02-12  Christian Rose  <menthos@menthos.com>
4142
4143         * configure.in: Added "yi" to ALL_LINGUAS.
4144
4145 2003-02-12  Matthias Clasen  <maclas@gmx.de>
4146
4147         Fix for #82734 and #78216:
4148         
4149         * gtk/gtktextview.c (delete_cb): 
4150         (select_all_cb): New callbacks for context menu items.
4151         (popup_targets_received): Add "Delete" and "Select All" to context
4152         menu, mnemonics and title caps for all items.
4153
4154         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
4155         context menu item.
4156         (popup_targets_received): Add "Delete" to context menu, mnemonics
4157         and title caps for all items.
4158
4159 2003-02-09  Tor Lillqvist  <tml@iki.fi>
4160
4161         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
4162         GetDriveType() to recognize removable drives (in order to avoid
4163         hanging if trying to access an empty floppy drive), instead of
4164         hardcoding A: and B: (#105654).
4165
4166 2003-02-09  Matthias Clasen  <maclas@gmx.de>
4167
4168         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
4169         names.  (#57680)
4170
4171 2003-02-09  Christian Rose  <menthos@menthos.com>
4172
4173         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
4174
4175 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
4176
4177         * gtk/gtkobject.c: remove quark_user_data usage in
4178         gtk_object_{g|s}et_user_data(). fixes get_user_data()
4179         returning NULL for user_data set through property interface.
4180
4181         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
4182         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
4183         need to be a programming error (in case of loaded data), (b) it breaks
4184         with 2.0 behaviour where extra magic could be used to create empty
4185         images. don't attempt to retrieve pixbufs from NULL extra_data.
4186
4187 2003-02-06  Matthias Clasen  <maclas@gmx.de>
4188
4189         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
4190         a GdkVisual *, not a GdkVisual **.  (#105243)
4191
4192         * gtk/gtkclist.c: 
4193         * gtk/gtkctree.c: 
4194         * gtk/gtkcontainer.c: 
4195         * gtk/gtkdnd.c: 
4196         * gtk/gtkentry.c: 
4197         * gtk/gtklist.c:
4198         * gtk/gtkmenu.c:
4199         * gtk/gtkmenuitem.c:
4200         * gtk/gtknotebook.c:
4201         * gtk/gtkselection.c:
4202         * gtk/gtkspinbutton.c:
4203         * gtk/gtktext.c:
4204         * gtk/gtktextview.c:
4205         * gtk/gtktooltips.c:
4206         * gtk/gtktreeview.c:
4207         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
4208         their non-deprecated GLib counterparts.
4209         
4210         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
4211         
4212 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
4213
4214         * docs/tutorial/gtk-tut.sgml: cleanups from
4215         Sebastian Rittau (#104832)
4216
4217 2003-02-01  Tor Lillqvist  <tml@iki.fi>
4218
4219         Merge from stable:
4220
4221         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
4222         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
4223         (#104108, Naofumi Yasufuku)
4224
4225         * gdk/gdk.def: Export the above. Export
4226         gdk_screen_get_system_visual, noticed by Ed Woods.
4227
4228 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
4229
4230         * demos/pixbuf-demo.c
4231         * demos/testpixbuf.c
4232         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
4233
4234 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
4235                                                                                 
4236         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
4237         on the tab_label before unparenting it, in case the unparent
4238         drops the refcount to 0.
4239
4240 2003-02-01  Matthias Clasen  <maclas@gmx.de>
4241
4242         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
4243         headers. Sorry about gtk_selection_clear, Yosh.
4244
4245 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
4246
4247         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
4248         too, for gtkwidget.c. Remember people, when introducing new
4249         deprecations, make sure internal code isn't using it, or if so,
4250         reorganize appropriately like I've done in other places.
4251
4252         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
4253
4254 2003-01-31  Matthias Clasen  <maclas@gmx.de>
4255
4256         * gtk/gtkselection.h: 
4257         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
4258
4259         * gdk/gdkpixbuf.h: 
4260         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
4261         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
4262
4263         * gtk/gtkcolorsel.h:
4264         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4265         Deprecate.  (#98167)
4266
4267         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
4268
4269         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
4270         and gtk_input_* functions.  (#71596)
4271         
4272         * gtk/gtkentry.c (gtk_entry_move_cursor): 
4273         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
4274         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
4275
4276         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
4277
4278         * gtk/gtkitemfactory.h: 
4279         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
4280         (#69244)
4281
4282 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
4283
4284         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
4285         only count the special cell if it is also visible,
4286         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
4287         account from visible cells,
4288         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
4289         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
4290         tracking bug was #104563).
4291         
4292 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
4293
4294         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4295         subtract expander space and focus line space from the extra space
4296         we are about the allocate. (Fixes #104635).
4297
4298 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
4299
4300         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
4301         (Fixes #96242, patch from Soeren Sandmann).
4302
4303 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
4304
4305         * gtk/gtknotebook.c: Patch from Soeren Sandmann
4306         to update the states of the tab label child
4307         widgets to match the state of the tabs. 
4308         (#93389, Reported by Tommi Komulainen)
4309
4310 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
4311
4312         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
4313         EXTRA_DIST, and from dist rules. (#102231)
4314
4315 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
4316
4317         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
4318         function that sets the icon's and label's packing options and
4319         visibility based on toolbar->style.
4320
4321         (gtk_toolbar_internal_insert_element):
4322         (gtk_real_toolbar_style_changed): Make use of
4323         set_child_packing_and_visibility() to clean up the code and get
4324         the packing right for icon-only/text-only toolbars. (#104679)
4325
4326         (get_first_child): Remove, and use gtk_bin_get_child() instead.
4327
4328 2003-01-30  Matthias Clasen  <maclas@gmx.de>
4329
4330         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
4331         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
4332
4333         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
4334         
4335 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
4336
4337         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
4338         attempt-to-allocate then free code. To handle multiple
4339         people allocating colors at the same time, we need
4340         to just go ahead and try. (#102213, Shivram U)
4341         
4342 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
4343
4344         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
4345         rectangle using the background color rather than relying on
4346         gdk_window_clear_area(), so that the palette works properly with
4347         pixmap themes. (#101732)
4348
4349         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
4350         to fill the drawing area in the background color.
4351
4352 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4353
4354         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
4355         initialization error for selecting input style (#103549).
4356
4357 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
4358
4359         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
4360         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
4361         (#101225)
4362
4363 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
4364
4365         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
4366         Make up from the menu bar go to the end of the submenu.
4367         (#96114, Ian Peters.)
4368
4369         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
4370         Only do the select-but-not-activate stuff if the
4371         menu is already active. Otherwise, just activate.
4372         (#101690, Arvind Samptur)
4373
4374 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
4375
4376         * autogen.sh (have_automake): Fix version in complaint
4377         message about automake. (#104366, Rich Burridge)
4378
4379 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
4380
4381         * configure.in: Remove SOEXT stuff; it doesn't work portably.
4382
4383 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
4384
4385         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
4386         we appended/prepended, send the rows_reordered signal to the 
4387         correct level ... (Reported by Matthew Tuck).
4388
4389 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
4390
4391         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
4392         out if the level only has one item, recurse over the child if there
4393         is one. (Fixes #100458, reported by Gaël Le Mignot).
4394
4395 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
4396
4397         * gtk/gtktreeview.c (gtk_tree_view_set_model),
4398         (gtk_tree_view_search_equal_func): make TreeView search handle
4399         all types which are transformable by GValue. (Fixes #99803, reported
4400         by Muktha Narayan).
4401
4402 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
4403
4404         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
4405         *really* handle unsetting the ID. Slightly modified patch from
4406         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
4407
4408 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
4409
4410         Fixes the total GtkTreeSortable mess, and #83195, reported by
4411         Jarek Dukat
4412
4413         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
4414         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
4415         (gtk_tree_store_set_default_sort_func): use the constant
4416         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
4417         work as advertised by the documentation.
4418
4419         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
4420         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
4421         (gtk_list_store_set_default_sort_func): likewise.
4422
4423         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
4424         (gtk_tree_model_set_sort_func),
4425         (gtk_tree_model_sort_set_default_sort_func): make functions work
4426         as advertised by the documentation.
4427
4428 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
4429
4430         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
4431         before we decide if we edit. (fixes #100973, reported by Dave Cook).
4432
4433 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
4434
4435         Bug report and test case from Paolo Maggi via IRC.
4436
4437         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
4438         (gtk_list_store_move): update tail if needed.
4439
4440 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
4441
4442         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
4443         might be NULL. Use gtk_widget_get_display (widget) 
4444         (#102860, Thomas Leonard)
4445
4446 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
4447
4448         * configure.in: Fix --without-modules/--disable-modules
4449         confusion that was causing --disable-modules not to work.
4450         (#102865, Akira Tagoh)
4451
4452         * configure.in: Fix problem with plain --with-xinput
4453         (#104266, Akira Tagoh)
4454
4455 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
4456
4457         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
4458         patch.
4459
4460 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
4461
4462         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
4463
4464 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
4465
4466         * docs/faq/gtk-faq.sgml: Learn to spell Library
4467
4468 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
4469         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
4470
4471            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
4472            Composite widget" to modern standards. (I.e. use gobject instead of
4473            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
4474
4475         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
4476         code in Appendix C to reflect above changes.
4477
4478         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
4479         auto resize on page size change
4480
4481 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
4482
4483         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
4484         in addition to show_all in order to keep them symmetric. (#102201)
4485
4486 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
4487
4488         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
4489         the end of the function, so there is a statement following the "out"
4490         label in all cases (fixes #101961)
4491
4492 2003-01-22  Christian Rose  <menthos@menthos.com>
4493
4494         * configure.in: Added "mn" to ALL_LINGUAS.
4495
4496 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
4497  
4498         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
4499         Fix off-by-one error on the backward iteration loop,
4500         that was causing the wrong range to be redrawn.
4501         (at least part of #72734)
4502         
4503 2003-01-21  Matthias Clasen  <maclas@gmx.de>
4504
4505         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
4506         vadjustment value after changing its bounds.  (fixes #101963 and 
4507         #73562)
4508
4509         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
4510         unnecessary roundtrip failures.  (#93500)
4511
4512 2003-01-19  Tor Lillqvist  <tml@iki.fi>
4513
4514         Merge from stable:
4515         
4516         Fix for #103614 and some other problems with GtkFileSelection on
4517         Windows:
4518                 
4519         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
4520         g_ascii_tolower(). Windows file names are case-insensitive for all
4521         Unicode letters.
4522
4523         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
4524         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
4525         earlier, as it includes config.h unconditionally, and gtkprivate.h
4526         redefines GTK_LOCALEDIR.
4527         (struct _CompletionDirSent): Ifdef out the fields not used on
4528         Windows.
4529         (compare_utf8_filenames, compare_sys_filenames): Need different
4530         comparison implementation for UTF-8 file names and system locale
4531         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
4532         need to casefold all Unicode letters.
4533         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
4534         variables not used on Win32 to avoid warnings about unused
4535         variables.
4536         (open_ref_dir): Use g_path_skip_root() to skip past potential
4537         drive letter in front of the leading (back)slash.
4538         (open_new_dir): Ifdef out use of CompletionDirSent fields not
4539         there on Win32.
4540         (correct_parent): Bypass inode check also on Cygwin.
4541
4542         Fix bug noticed by Alex Shaduri: Tooltips and other
4543         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
4544         was a regression from earlier versions.
4545         
4546         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
4547         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
4548         (gdk_window_move, gdk_window_resize): Add debug logging.
4549
4550         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
4551         WM_SIZE message for a non-visible (withdrawn) window, don't clear
4552         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
4553         even if its size changes.
4554
4555 2003-01-16  Matthias Clasen  <maclas@gmx.de>
4556
4557         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
4558         (totally_invisible_line): Fix an incorrect optimization which
4559         caused invisible paragraphs to be occasionally misrendered.
4560
4561 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
4562
4563         * gtk/gtksettings.c: Set the double click speed from
4564         XSETTINGS when creating a new GtkSettings object
4565         as well as when getting a notify. (#103601, reported
4566         by Louis Garcia)
4567
4568 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
4569  
4570         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
4571         Show/hide the notebook event window as necessary,
4572         we weren't previously keeping the visibility updated
4573         properly.  (#103599)
4574  
4575 2003-01-15  Matthias Clasen  <maclas@gmx.de>
4576
4577         * examples/menu/itemfactory.c: 
4578         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
4579         example.  (#103211)
4580
4581 2002-12-29  Murray Cumming  <murrayc@usa.net>
4582
4583         Fixes #102168.
4584
4585         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
4586         Actually implement the GtkTreeDragSource::row_draggable virtual 
4587         function in GtkListStore and GtkTreeStore instead of just checking 
4588         whether it's implemented at all. This means that DnD isn't broken by
4589         gtkmm's virtual function wrappers. The alternative would be to
4590         hard-code the TRUE return value into gtkmm's wrappers, but that's 
4591         part of GTK+'s implementation, not it's API.
4592
4593 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
4594
4595         * gtk/gtktreeview.c: fix compiler warning.
4596
4597 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
4598
4599         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4600         make sure exposed pixbufs are clipped to the exposed area before
4601         drawing, which is a slight speedup. (#102379, patch from Soeren
4602         Sandmann).
4603
4604 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
4605
4606         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
4607         only free scroll_to_path when the complete tree has been validated.
4608         This makes sure that we scrolled to the correct path.
4609
4610 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
4611
4612         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
4613         background of widget->window and bin->window. (Fixes #96650, reported
4614         by Dave Camp).
4615
4616 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
4617
4618         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
4619         updates before scrolling, avoiding a "selection streak". (Fixes
4620         #101235, patch from Soeren Sandmann).
4621
4622 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
4623
4624         * gtk/gtktreeview.c (validate_visible_area): actually put values
4625         in the requisition using gtk_widget_size_request. (Fixes #100172,
4626         reported by Kjartan Maraas).
4627
4628 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
4629
4630         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
4631         arrow animation timeout before we actually reorder the rbtree. If
4632         we don't do this we can get stuck arrows,
4633         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
4634         reported and testcase provided by Hans Petter Jansson).
4635
4636 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
4637
4638         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
4639         anchor_path should be start_path, not end_path. (Fixes #102618,
4640         patch from Carlos Garnacho Parro).
4641
4642 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
4643
4644         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
4645         only correct new_pos if we don't move to the head/tail.
4646
4647 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
4648
4649         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
4650         the parent_iter if depth >= 1, so we send the reordered signal to
4651         the correct level, remove debugging printfs which I forgot the remove
4652         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
4653         testcase provided by Matthew Tuck).
4654
4655 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
4656
4657         * gtk/gtktreeview.c (invalite_last_column): split out actual column
4658         invalidation into invalidate_column(),
4659         (gtk_tree_view_size_allocate_columns): invalidate column if the
4660         new width is larger than the old width.
4661         (fixes #102890, reported by Alex Duggan).
4662
4663 2003-01-14  Matthias Clasen  <maclas@gmx.de>
4664
4665         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
4666         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
4667         GTK_MOVEMENT_WORDS.
4668
4669         * gtk/gtktextiter.c,
4670         gtk/gtktextiter.h: Add some variant movement functions which
4671         skip invisible chars, and do some cleanups.
4672
4673 2003-01-12  Tor Lillqvist  <tml@iki.fi>
4674
4675         Merge from stable:
4676                 
4677         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
4678         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
4679         lookup.
4680
4681         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
4682         gdk.def.
4683
4684         * gdk/gdk.def
4685         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
4686
4687         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
4688         gtk-demo}.exe and share/gtk-2.0.
4689
4690         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
4691         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
4692         window style.
4693         (gdk_window_set_type_hint): Add all cases to the switch (not all
4694         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
4695         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
4696         won't know that the skip_taskbar hint is on for the window, is
4697         this bad?
4698
4699 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
4700
4701         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
4702         <string.h> for strlen.
4703
4704         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
4705         <string.h> for strrchr.
4706
4707         * tests/testgtk.c (create_saved_position): "x" and "y" properties
4708         for widgets no longer exist, use gtk_window_move instead.
4709
4710         * test/testtextbuffer.c (check_get_set_text): cast strlen to
4711         int for g_error.
4712
4713 2003-01-08  Matthias Clasen  <maclas@gmx.de>
4714
4715         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
4716         the selection in the presence of invisible segments.
4717
4718 2003-01-07  Matthias Clasen  <maclas@gmx.de>
4719
4720         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
4721         to "select all" and "unselect all".  (#102065)
4722
4723         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
4724         the just_selected_element is unused.
4725
4726         * gtk/gtktextview.c (extend_selection): New helper function to
4727         find the range that should be added to the selection. 
4728         (selection_motion_event_handler): 
4729         (gtk_text_view_start_selection_drag): 
4730         (gtk_text_view_end_selection_drag): 
4731         (selection_motion_event_handler): 
4732         (selection_scan_timeout): Support select-by-words/lines.
4733         (gtk_text_view_button_press_event): Start a selection drag on
4734         double/triple clicks.  (#78499)
4735
4736 2003-01-06  Matthias Clasen  <maclas@gmx.de>
4737
4738         Implement a utility function proposed in #102534:
4739         
4740         * gtk/gtktextbtree.h: 
4741         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
4742         (_gtk_text_btree_place_cursor): Now a simple wrapper around
4743         _gtk_text_btree_select_range().   
4744
4745         * gtk/gtktextbuffer.h: 
4746         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
4747         (gtk_text_buffer_place_cursor): Now a simple wrapper around
4748         gtk_text_buffer_select_range(). 
4749
4750 2003-01-05  Havoc Pennington  <hp@pobox.com>
4751
4752         * configure.in: fix a stray bracket that was breaking the build
4753
4754 2003-01-05  Tor Lillqvist  <tml@iki.fi>
4755
4756         * gtk-zip.sh.in: Use correct DLL and import library names, with
4757         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
4758         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
4759
4760         * configure.in: Improve check for dimm.h.
4761
4762         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
4763         gdk-pixbuf/Makefile.am.
4764
4765         * gdk-pixbuf/makefile.mingw.in
4766         * gdk-pixbuf/pixops/makefile.mingw.in
4767         * gdk/makefile.mingw.in
4768         * gdk/win32/makefile.mingw.in
4769         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
4770
4771         * gdk-pixbuf/Makefile.am
4772         * gdk-pixbuf/pixops/Makefile.am
4773         * gdk/Makefile.am
4774         * gdk/win32/Makefile.am
4775         * gtk/Makefile.am
4776         * configure.in: Remove makefile.mingw{,.in} from here, too.
4777         
4778         * README.win32: Updates. Don't mention the now removed
4779         makefile.mingw files.
4780
4781         * gdk/gdk.def
4782         * gtk/gtk.def: Add a couple of missing entries.
4783
4784         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
4785
4786         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
4787         earlier.
4788
4789         * gdk/win32/rc/Makefile.am: Add hack to help
4790         build/win32/lt-compile-resource decide which kind of libtool
4791         object file to produce.
4792
4793 2003-01-05  Matthias Clasen  <maclas@gmx.de>
4794
4795         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
4796         C-Down step through the sequence of paragraph ends (old behaviour
4797         included paragraph starts).  (#80340, patch by Narayana Pattipati)
4798
4799         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
4800         Check for a tag toggle at the start iterator before calling
4801         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
4802         Elstner)
4803
4804 2003-01-04  Matthias Clasen  <maclas@gmx.de>
4805
4806         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
4807         and /*< private >*/ as appropriate.  (#97211)
4808
4809 2003-01-04  Tor Lillqvist  <tml@iki.fi>
4810
4811         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
4812         distribute gtk-zip.sh.in.
4813
4814         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
4815
4816 2003-01-03  Havoc Pennington  <hp@pobox.com>
4817
4818         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
4819
4820         * docs/text_widget_internals.txt: add a file documenting some of
4821         the text widget internals
4822
4823 2003-01-02  Matthias Clasen  <maclas@gmx.de>
4824
4825         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
4826         return NULL.  (#102069)
4827
4828 2003-01-01  Matthias Clasen  <maclas@gmx.de>
4829
4830         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
4831         a main() in the library is obviously bad. 
4832
4833 2002-12-27  Matthias Clasen  <maclas@gmx.de>
4834
4835         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
4836         cursor at drop point.  (#72384)
4837         (gtk_text_view_size_allocate): Update the horizontal adjustment
4838         value.  (#75694)
4839
4840 2002-12-25  Matthias Clasen  <maclas@gmx.de>
4841
4842         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
4843         selection wrt. to empty lines.  (#90435, #90582, #91619)
4844
4845         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
4846         Keep the cursor on screen.  (#96929)
4847
4848 2002-12-24  Matthias Clasen  <maclas@gmx.de>
4849
4850         * gtk/gtktextbuffer.c (paste_from_buffer): 
4851         (clipboard_text_received): Let the user action span the insertion
4852         and the deletion of the old selection.  (#82844)
4853
4854 2002-12-23  Matthias Clasen  <maclas@gmx.de>
4855
4856         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
4857         Don't call gtk_text_iter_backward_sentence_start() if
4858         count is zero.  (#99115)
4859
4860         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
4861         move_cursor() even if the cursor hasn't moved, since it has the
4862         side effect of canceling the selection.  (#81395, #98537, #98333)
4863
4864 2002-12-22  Matthias Clasen  <maclas@gmx.de>
4865
4866         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
4867         with empty ranges.  (fixes #101564 and #80637)
4868
4869 2002-12-21  Tor Lillqvist  <tml@iki.fi>
4870
4871         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
4872         sets the window style and extended window style, and adjusts the
4873         width and height to take the window decorations into account
4874         earlier. The adjusted width and height used to be ignored. Remove
4875         the local x, y, width and height variables, no need to further
4876         confuse the code by having local copies. (Partial fix, I hope, for
4877         #101588)
4878
4879         (gdk_window_move): When moving top-level windows, take title bar
4880         and border width into account, offsetting the coordinates before
4881         calling SetWindowPos().
4882
4883         (gdk_window_set_decorations, gdk_window_set_functions):
4884         Reimplement, taking into account the peculiar semantics of
4885         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
4886
4887         (gdk_window_get_decorations): Implement. (#98981)
4888         
4889         (gdk_window_set_type_hint): When setting
4890         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
4891         (#79036)
4892
4893         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
4894
4895 2002-12-21  Matthias Clasen  <maclas@gmx.de>
4896
4897         * gtk/gtktextview.c (gtk_text_view_set_background): New static
4898         function to set the background of all windows.
4899         (gtk_text_view_style_set): Use gtk_text_view_set_background().
4900         (gtk_text_view_state_changed): New function; change background
4901         according to state.  (#88126)
4902
4903 2002-12-21  Havoc Pennington  <hp@pobox.com>
4904
4905         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
4906