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